[發明專利]隨機數生成方法、區塊鏈節點、系統及介質有效
| 申請號: | 201911115674.5 | 申請日: | 2019-11-14 |
| 公開(公告)號: | CN110825349B | 公開(公告)日: | 2023-03-28 |
| 發明(設計)人: | 仵小勇 | 申請(專利權)人: | 深圳市迅雷網絡技術有限公司;深圳市網心科技有限公司 |
| 主分類號: | G06F7/58 | 分類號: | G06F7/58;G06Q20/38 |
| 代理公司: | 深圳市賽恩倍吉知識產權代理有限公司 44334 | 代理人: | 陳海云 |
| 地址: | 518057 廣東省深圳市南山區粵海街道高新區*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 隨機數 生成 方法 區塊 節點 系統 介質 | ||
1.一種隨機數生成方法,其特征在于,應用于區塊鏈節點,所述方法包括:
所述區塊鏈節點確定包括自身在內的N個節點參與共識,并獲取每個節點的編碼;
基于可驗證密鑰共享機制,所述區塊鏈節點構建自身的M個公私鑰片段對,其中,M、N均為整數,且M=roundup(預設比例*N);
所述區塊鏈節點根據自身的M個私鑰片段計算對應于每個節點的編碼的N個數值,將計算的數值分別發送至符合對應編碼的其他節點,并接收其他節點發送的數值;
當有區塊需要共識時,根據所述區塊鏈節點上保存的與自身編碼對應的數值合成所述區塊鏈節點的第一簽名,并根據所述區塊鏈節點的第一簽名構建所述區塊鏈節點對待共識區塊的prepare投票;
將prepare投票發送至參與共識的其它區塊鏈節點,以及接收其它區塊鏈節點發送的prepare投票;
所述區塊鏈節點利用每個參與共識的區塊鏈節點的第j段公鑰片段構建唯一公鑰,其中j為小于或等于M的自然數;
當在所述N個節點中,prepare投票通過驗證的節點達到M個時,所述區塊鏈節點利用M個節點的prepare投票構建第二簽名;
采用所述唯一公鑰驗證所述第二簽名,且所述第二簽名通過驗證時,所述區塊鏈節點將所述第二簽名確定為隨機數。
2.如權利要求1所述的隨機數生成方法,其特征在于,所述區塊鏈節點根據自身的M個私鑰片段計算對應于每個節點的編碼的N個數值,將計算的數值分別發送至符合對應編碼的其他節點包括:
所述區塊鏈節點構建具有M項的(M-1)階多項式,所述多項式的系數依次為所述區塊鏈節點的M個私鑰片段,并將每個節點的編碼依次作為所述多項式的變量值輸入至所述多項式中,得到所述區塊鏈節點的N個數值;
所述區塊鏈節點確定計算每個數值的編碼,并根據確定的編碼將每個數值發送至與所述確定的編碼相對應的節點。
3.如權利要求1所述的隨機數生成方法,其特征在于,所述根據所述區塊鏈節點上保存的與自身編碼對應的數值合成所述區塊鏈節點的第一簽名包括:
獲取待共識區塊的哈希值;
將其保存的N個數值累加后對所述待共識區塊的哈希值進行簽名,得到所述區塊鏈節點的第一簽名。
4.如權利要求1所述的隨機數生成方法,其特征在于,所述區塊鏈節點利用M個節點的prepare投票構建第二簽名包括:
區塊鏈節點利用M個節點的prepare投票中包括的第一簽名構建M個方程組成的方程組,求解得到第二簽名,第二簽名為每個參與共識的區塊鏈節點的第j段私鑰片段累加后對待共識區塊的哈希值的簽名。
5.如權利要求1所述的隨機數生成方法,其特征在于,所述方法還包括:
所述區塊鏈節點獲取所述區塊的執行結果,并確定commit階段的commit標識;
所述區塊鏈節點根據所述執行結果、所述隨機數及所述commit標識構建所述區塊鏈節點的commit投票;
當在所述N個節點中,commit投票通過驗證的節點大于所述預設比例時,所述區塊鏈節點確定所述區塊能夠提交。
6.如權利要求1所述的隨機數生成方法,其特征在于,所述方法還包括:
當在預設時間內,prepare投票通過驗證的節點沒有達到M個,及/或commit投票通過驗證的節點沒有達到M個時,所述區塊鏈節點確定提塊失敗;
所述區塊鏈節點獲取生成的新隨機數,并根據所述新隨機數進行提塊。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳市迅雷網絡技術有限公司;深圳市網心科技有限公司,未經深圳市迅雷網絡技術有限公司;深圳市網心科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911115674.5/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:基于全域哈希的身份基加密方法
- 下一篇:一種電動車生產用支架打磨裝置





