[發明專利]一種基于Raft共識算法抗任期偽造的防御方法在審
| 申請號: | 202210809762.0 | 申請日: | 2022-07-11 |
| 公開(公告)號: | CN115134161A | 公開(公告)日: | 2022-09-30 |
| 發明(設計)人: | 王一川;田夢潔;張亞玲;劉小雪;黑新宏;朱磊;姬文江 | 申請(專利權)人: | 西安理工大學 |
| 主分類號: | H04L9/40 | 分類號: | H04L9/40;H04L67/1042 |
| 代理公司: | 北京國昊天誠知識產權代理有限公司 11315 | 代理人: | 李瀟 |
| 地址: | 710048*** | 國省代碼: | 陜西;61 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 raft 共識 算法 任期 偽造 防御 方法 | ||
本發明公開了一種基于Raft共識算法抗任期偽造的防御方法,具體按照以下步驟實施:步驟1,構建Raft集群,創建Raft節點加入到構建的Raft集群中;步驟2,將步驟1中得到的Raft集群初始化,創建初始數據;步驟3,設置一個選舉時間內任期增長的區間范圍;步驟4,啟動Raft集群,此時Raft集群中所有Raft節點狀態均為跟隨者狀態;步驟5,根據步驟4判斷節點是否為惡意節點,若節點為惡意節點,則將狀態強制退回到跟隨者狀態。通過對任期值增長范圍區間的設置,有效防御了惡意節點在選舉過程中對Raft集群進行偽造任期的攻擊,實現Raft共識算法選舉過程中抗偽造任期的防御,使Raft共識算法的選舉過程及結果更加公平、安全可靠。
技術領域
本發明涉及區塊鏈共識機制技術領域,具體為一種基于Raft共識算法抗任期偽造的防御方法。
背景技術
共識算法作為區塊鏈技術的關鍵要素和核心組件,是近年來分布式系統技術發展前沿熱點。隨著區塊鏈技術的快速發展,新的共識算法不斷被提出,改進的算法也不斷被驗證。從中本聰發布比特幣白皮書開始,互聯網便處于新的變革起點,區塊鏈技術既具有廣闊的應用前景又存在各種分歧,區塊鏈領域的專家、學者關注的是該技術的性能和安全,并以此為基礎實現應用的落地。區塊鏈的核心價值之一就是共識,同時也是區塊鏈的特性之一。共識算法是指在分布式場景中,多個Raft節點為了達成相同的數據狀態而運行的一種分布式算法。目前的Raft共識算法在安全性方面,尤其是針對惡意節點的處理上還不完善,如何優化算法選舉過程中公平性被擾亂的問題,提高算法安全性,是需要持續鉆研的一個研究方向。
Raft共識算法主要依靠投票機制和日志復制機制來實現節點間的共識。在Raft算法中,每個Raft節點由以下三種身份:領導者、跟隨者以及候選者。其中,領導者負責與客戶端之間的交互以及日志復制,任意某一時刻系統Raft集群中只允許擁有一個領導者節點。這里所指的時刻在Raft算法將時間規定為不定長度的任期值,每個任期內有且僅有一個領導者節點。跟隨者節點在系統交互過程中被動的在請求RPC中進行響應,不會主動的發起請求RPC。候選者是跟隨者轉換領導者的過渡狀態。Raft算法的分布式場景中,可能出現網絡丟包、節點宕機、節點作惡等等故障情況,共識算法需要能夠容忍這些錯誤,保證多個Raft節點取得相同的數據狀態。根據可容忍的故障類型的不同,可以將共識算法分為兩類:(1)容忍宕機錯誤類算法,可以容忍網絡丟包、時鐘漂移、部分節點宕機這種節點為良性的錯誤。常見算法有Paxos、Raft。(2)容忍拜占庭錯誤類算法,可以容忍部分節點任意類型錯誤,包括節點作惡的情況。常見算法有PBFT、PoW、PoS等。
Raft共識算法只能容忍宕機錯誤類算法,由于無法識別惡意節點,所以該算法在領導者節點選舉、日志復制等過程中存在著諸多公平性及安全性問題。在領導者選舉的流程中需要考慮一個異常問題:在一個分布式Raft集群中,如果存在某個Raft節點故意作惡的問題,導致Raft集群中其它的跟隨者節點無法公平競選到領導者的身份狀態,那么它在領導者選舉過程中可以通過篡改投票、日志或者是惡意增大自身的任期值等手段,擾亂Raft集群中節點的公平競爭。本發明主要針對節點惡意增大自身任期值的問題提出解決方法,在日志相同的情況下,節點惡意增大自身的任期值,使自身任期值比其他節點的任期值大,根據Raft共識算法的選舉機制該惡意節點就會將自己的身份狀態變更為領導者狀態,使得整個Raft集群的公平性被嚴重擾亂。
發明內容
本發明的目的在于提供一種基于Raft共識算法抗任期偽造的防御方法,解決了現有算法存在的選舉過程中Raft集群公平性被惡意擾亂,以及算法安全性不夠高的問題。
為實現上述目的,本發明提供如下技術方案:一種基于Raft共識算法抗任期偽造的防御方法,具體按照以下步驟實施:
步驟1,構建Raft集群,創建Raft節點加入到構建的Raft集群中;
步驟2,將步驟1中得到的Raft集群初始化,創建初始數據;
步驟3,設置一個選舉時間內任期增長的區間范圍a-b;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西安理工大學,未經西安理工大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202210809762.0/2.html,轉載請聲明來源鉆瓜專利網。





