[發明專利]一種可以對多個提案進行共識的共識方法有效
| 申請號: | 202110883976.8 | 申請日: | 2021-08-03 |
| 公開(公告)號: | CN113347007B | 公開(公告)日: | 2021-11-26 |
| 發明(設計)人: | 石寧;賴石輝 | 申請(專利權)人: | 南京金寧匯科技有限公司 |
| 主分類號: | H04L9/32 | 分類號: | H04L9/32;H04L12/24 |
| 代理公司: | 北京弘權知識產權代理有限公司 11363 | 代理人: | 郭放;許偉群 |
| 地址: | 210031 江蘇省南京市江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 可以 提案 進行 共識 方法 | ||
1.一種可以對多個提案進行共識的共識方法,其特征在于,包括:
根據選舉規則計算候選提案者集合和候選投票者集合;
將同一輪次共識周期劃分為多個共識步驟,每個所述共識步驟劃分為提案出塊階段、提案節點共識階段和同一高度合法區塊共識階段;
當前共識步驟中,如果step=1,當前共識步驟為所述提案出塊階段;
如果2≤step≤4,當前共識步驟為所述提案節點共識階段;
如果5≤step≤m+3,當前共識步驟為同一高度合法區塊共識階段;
其中,step為當前共識步驟中的步數,m為當前共識步驟中的最大步數;在所述提案出塊階段,按照預設規則選舉提案節點,當前節點判斷自己是否存在于所述候選提案者集合;如果存在于所述集合,滿足選舉條件,成為所述共識周期中的提案節點;所述提案節點數量為多個;
多個所述提案節點生成對應的多個區塊,并廣播對應的所述區塊;
提案節點的數量隨機;
在所述提案節點共識階段,由投票委員會對提案節點進行投票,投票內容包含合法校驗,把合法的提案節點生成的區塊轉化為0、1的二次元拜占庭共識問題;
在所述同一高度合法區塊共識階段,由所述投票委員會對所述多個區塊分別進行投票,生成對應的多個投票結果,并將所述投票結果向網絡中的其他節點進行廣播;如果一個區塊的網絡投票結果通過率超過2/3時,所述區塊為被成功共識出來的合法區塊;
監聽各個所述共識步驟中的同一高度的合法區塊,滿足預設結束條件時,當前共識步驟完成,并將該共識步驟中已被投票共識的合法區塊放入區塊池中,等待統計節點打包;
當所述區塊池中的合法區塊數量滿足預設的數量要求時,生成統計區塊;
針對某一共識步驟,如果觸發了第一結束條件或第二結束條件之一,則所述共識步驟結束。
2.根據權利要求1所述的一種可以對多個提案進行共識的共識方法,其特征在于,當所述區塊池中的合法區塊數量滿足預設的數量要求時,生成統計區塊的步驟,包括:
在所述區塊池中,當多個所述同一高度的所述合法區塊已完成投票且滿足投票數量要求時,如果多個所述同一高度的所述合法區塊的數量達到預期數量,統計節點打包所述合法區塊,生成統計區塊。
3.根據權利要求1所述的一種可以對多個提案進行共識的共識方法,其特征在于,對所述多個區塊分別進行投票,生成多個投票結果的步驟包括:
按照預設規則選舉投票節點;
多個所述投票節點判斷能夠參與的所述共識階段,并按照預先設定的投票規則生成投票結果。
4.根據權利要求3所述的一種可以對多個提案進行共識的共識方法,其特征在于,選舉所述投票節點的步驟,包括:
根據預設的投票規則判斷當前節點是否滿足投票條件;
如果滿足所述投票條件,成為所述共識周期中的投票節點。
5.根據權利要求1所述的一種可以對多個提案進行共識的共識方法,其特征在于,還包括對所述統計區塊進行全網共識,所述統計區塊共識的結束代表當前共識輪次的結束以及下一個共識輪次的開始。
6.根據權利要求1所述的一種可以對多個提案進行共識的共識方法,其特征在于,在所述監聽各個所述共識步驟中的同一高度合法區塊的步驟之前,還包括:
收集上一階段的投票結果。
7.根據權利要求1所述的一種可以對多個提案進行共識的共識方法,其特征在于,還包括:
所述步數用狀態機維護更新,所述狀態機是指所述共識周期中共識的狀態邏輯塊。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京金寧匯科技有限公司,未經南京金寧匯科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110883976.8/1.html,轉載請聲明來源鉆瓜專利網。





