[發明專利]實用拜占庭容錯共識機制中動態更改共識節點的方法有效
| 申請號: | 201710761858.3 | 申請日: | 2017-08-30 |
| 公開(公告)號: | CN107579848B | 公開(公告)日: | 2020-08-25 |
| 發明(設計)人: | 陳哲昺;盧旻;張福哲 | 申請(專利權)人: | 上海保險交易所股份有限公司 |
| 主分類號: | H04L12/24 | 分類號: | H04L12/24;H04L29/06;H04L29/08;G06F11/07;G06Q20/38;G06Q20/40 |
| 代理公司: | 中國國際貿易促進委員會專利商標事務所 11038 | 代理人: | 歐陽帆 |
| 地址: | 200122 上海市浦東新區自*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 實用 拜占庭 容錯 共識 機制 動態 更改 節點 方法 | ||
1.一種在區塊鏈網絡的實用拜占庭容錯(PBFT)的共識機制中動態更改共識節點的方法,其特征在于包括:
發起更改請求步驟,在所述發起更改請求步驟中,由系統管理員向任意一個共識節點發起一個更改請求作為系統級別事務,并且使用所述系統管理員的私鑰對所述更改請求進行簽名,其中所述更改請求為增加或刪除一個或更多個共識節點的請求;
驗證更改請求步驟,在所述驗證更改請求步驟中,所述任意一個共識節點對接收到的所述更改請求進行驗證,在驗證通過的情況下,為所述更改請求添加特殊系統事務頭,并將具有特殊系統事務頭的該更改請求向所有共識節點廣播,各共識節點將具有特殊系統事務頭的該更改請求放入優先事務隊列;
更改請求共識步驟,在所述更改請求共識步驟中,進行新一輪的基于PBFT的共識操作,在該共識操作中,由選出的提案節點優先打包所述優先事務隊列中的事務,從而提出包含所述更改請求的提案區塊并將所述提案區塊廣播給所有共識節點,由所有共識節點對所述提案區塊中的各事務進行驗證,其中共識節點對各事務進行驗證時先檢驗事務的事務頭,在檢驗到所述更改請求的特殊系統事務頭的情況下進入預先定義的固定的系統事務操作邏輯而不是智能合約進行驗證,并且其中在所述優先事務隊列中存在多于一個更改請求的情況下,所述提案節點僅將時間最早的一個更改請求打包到所述提案區塊中;
更改列表步驟,在所述更改列表步驟中,在所述更改請求共識步驟中對所述提案區塊達成共識后,所述區塊鏈網絡中的各節點執行所述更改請求,從而根據所述更改請求來更新共識節點集合列表,其中更新后的共識節點集合列表被存儲在節點的本地文件中。
2.根據權利要求1所述的方法,還包括初始化節點步驟,在所述初始化節點步驟中,對所述區塊鏈網絡的初始節點或者要加入的新節點進行初始化操作,以使所述初始節點或新節點在本地保存初始化配置文件,其中所述初始化配置文件對于所有節點都是相同的并且記錄所述系統管理員的公鑰、種子節點的IP地址和端口、包含所有初始共識節點的IP地址和端口的初始的共識節點集合列表、以及節點公鑰,初始共識節點的總數量大于等于4個。
3.根據權利要求2所述的方法,在對初始節點進行初始化操作之后還包括啟動區塊鏈網絡步驟,在所述啟動區塊鏈網絡步驟中,首先啟動初始節點中的種子節點,再啟動初始節點中的非種子節點,以使得所述非種子節點連接所述種子節點推薦的節點,其中該推薦的節點為當前區塊鏈網絡中已連接的節點中的連接數最少的節點。
4.根據權利要求2所述的方法,在對新節點進行初始化操作之后還包括新增節點步驟,在所述新增節點步驟中,啟動所述新節點以使所述新節點成為所述區塊鏈網絡中的一個非共識節點,并且從其它節點同步區塊并執行過去的所有事務,直到跟上當前區塊鏈網絡中的區塊高度,其中所述新節點根據過去的所有更改請求來依次更新所述共識節點集合列表,從而獲得最新的共識節點集合列表。
5.根據權利要求1所述的方法,在所述更改列表步驟之后還包括下一輪共識步驟,在所述下一輪共識步驟中,使用更新后的共識節點集合列表來選擇提案節點,并由更新后的共識節點集合列表中的共識節點進行投票。
6.根據權利要求1所述的方法,其中在所述驗證更改請求步驟和所述更改請求共識步驟中,共識節點對所述更改請求進行驗證的操作均包括驗證所述更改請求的簽名是否是系統管理員的簽名以及判定所述更改請求是否符合共識節點更改條件,所述共識節點更改條件包含:請求更改的共識節點的數量小于等于(N-1)/3以及更改后的共識節點的總數量大于等于4,其中N為當前共識節點的總數量。
7.根據權利要求1所述的方法,其中在所述更改請求共識步驟中,所述提案節點在檢測到所述優先事務隊列中存在事務的情況下,僅把所述優先事務隊列中的一個事務打包到所述提案區塊中。
8.根據權利要求1所述的方法,其中所述驗證更改請求步驟還包括:在對所述更改請求驗證通過的情況下還為該更改請求附上所述任意一個共識節點的簽名,各共識節點在對所述任意一個共識節點的簽名驗證通過的情況下才將該更改請求放入優先事務隊列。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海保險交易所股份有限公司,未經上海保險交易所股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710761858.3/1.html,轉載請聲明來源鉆瓜專利網。





