iso file download
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210391712.5 (22)申请日 2022.04.14 (71)申请人 中国科学技术大学 地址 230026 安徽省合肥市包河区金寨路 96号 (72)发明人 张信明 夏庆庆  (74)专利代理 机构 北京集佳知识产权代理有限 公司 11227 专利代理师 吴磊 (51)Int.Cl. H04L 9/08(2006.01) H04L 9/32(2006.01) H04L 67/1097(2022.01) H04L 67/1042(2022.01) (54)发明名称 一种双委员会 共识方法及装置 (57)摘要 本申请公开了一种双委员会共识方法及装 置, 应用于目标联盟链, 获取目标联盟链中的各 个节点, 在各个节点中选取第一委员会节点和第 二委员会节 点, 第一委员会中的主节 点向从节点 广播预准备消息, 使从节点反馈准备消息给主节 点, 主节点再向从节点和第二委员会发送提交消 息, 从节点接收到提交消息后向主节点进行反 馈, 使主节点广播同步消息, 第二委员会接收到 提交消息后, 第二委员会中的主节 点向从节点发 送预准备消息, 以使从节点反馈准备消息给主节 点, 主节点再向从节点和第一委员会节点广播提 交消息, 从节 点接收到提交消息后向主节点进行 反馈, 以使主节点广播同步消息, 上述共识过程 中, 减少了共识的节点数和通信开销, 提高了共 识效率。 权利要求书9页 说明书30页 附图2页 CN 114928441 A 2022.08.19 CN 114928441 A 1.一种双委员会共识方法, 其特征在于, 应用于目标联盟链, 所述方法包括: 初始委员 会选举流 程和双委员会 共识流程; 所述初始委员会选举流程包括: 获取所述目标联盟链中的各个节点, 所述各个节点的 初始可信度分值相同, 基于可验证随机函数在所述各个节点中选取第一委员会节点和 第二 委员会节点, 所述第一委员会节点属于第一委员会, 所述第二委员会节点属于第二委员会, 所述第一委员会的节 点数和所述第二委员会的节 点数相同, 并且所述第一委员会的节点数 和所述第二委员会的节点数相加的结果 不超过所述目标 联盟链的节点数; 所述双委员会共识流程包括: 第一主节点向第一从节点广播第一预准备消息, 所述第 一从节点接收所述第一主节点发送的所述第一预准备消息并进行第一验证; 其中, 所述第一主节点通过所述可验证随机函数从所述第一委员会节点选举产生, 所 述第一从节点包括: 所述第一委员会节点中除所述第一主节点外的其他节点, 所述第一预 准备消息中包括: 第一区块; 若所述第一验证通过, 则所述第一从节点向所述第一主节点发送第一准备消息, 当所 述第一主节点接收到所述第一准备消息后, 所述第一主节点向所述第一从节点和所述第二 委员会节点广播第一 提交消息, 所述第一 提交消息包括所述第一区块; 所述第一从节点接收到所述第 一提交消息后, 进行第 二验证, 若所述第 二验证通过, 则 所述第一从节点向所述第一主节点发送第二提交消息, 所述第一主节点接收到所述第二提 交消息后, 进 行第三验证, 若 所述第三验证通过, 则所述第一主节 点向所述第一从节点和非 委员会节点广播第一同步消息; 第二主节点接收到所述第 一提交消息之后, 所述第 二主节点向第 二从节点广播第 二预 准备消息, 所述第二从节点接收所述第二主节点 发送的所述第二预准备消息并进 行第四验 证; 其中, 所述第二主节点通过所述可验证随机函数从所述第二委员会节点选举产生, 所 述第二从节点包括, 所述第二委员会节点中除所述第二主节点外的其他节点, 所述第二预 准备消息中包括: 第二区块; 若所述第四验证通过, 则所述第二从节点向第二主节点发送第二准备消息, 当所述第 二主节点接收到所述第二准备消息后, 所述第二主节点向所述第二从节点和所述第一委员 会节点广播第三 提交消息, 所述第三 提交消息包括所述第二区块; 所述第二从节点接收到所述第 三提交消息后, 进行第五验证, 若所述第五验证通过, 则 所述第二从节点向所述第二主节点发送第四提交消息, 所述第二主节点接收到所述第四提 交消息后, 进 行第六验证, 若 所述第六验证通过, 则所述第二主节 点向所述第二从节点和所 述非委员会节点广播第二同步消息 。 2.根据权利要求1所述的方法, 其特征在于, 所述基于可验证随机函数在所述各个节点 中选取第一委员会节点和第二委员会节点, 包括: 所述目标联盟链中的所有节点均基于所述可验证随机函数VRF产生对应随机输出值 output和对应随机证明值pi, 所述 output为哈希hash值; 所述目标联盟链中的节点被选择为委员会节点的概率为w值, 所述w值具体为: w=2c/ n, 所述目标 联盟链中的节点个数为 n, 其中, 一个委员会 包括的节点个数为c; 判断z值是否小于所述 w值;权 利 要 求 书 1/9 页 2 CN 114928441 A 2其中, 所述z值具体为: z=output/2hashlen, 所述hashlen为所述可验证随机函数的hash 算法的输出长度; 当所述z值小于所述w值时, 则所述目标联盟链中的节点被选为所述委员会节点, 并且 所述委员会节点向所述目标 联盟链中的所有节点广播委员会请求消息; 所述目标 联盟链中的所有节点对所述委员会请求消息进行验证; 若验证通过, 则根据 所述委员会节点的z值, 对所述委员会节点进行从小到大的顺序排 序, 并从所述委员会节点中选取 所述第一委员会节点和所述第二委员会节点。 3.根据权利要求1所述的方法, 其特征在于, 所述第 一验证、 所述第二验证、 所述第三验 证、 所述第四验证、 所述第五验证、 所述第六验证, 包括: 所述第一验证, 包括: 所述第一从节点接收到所述第一主节点发送的所述第一预准备 消息后, 判断第一验证信息是否正确, 若正确, 则所述第一验证通过, 所述第一验证信息包 括: 所述第一主节 点的签名、 所述第一主节点的视图号、 所述第一区块的高度以及所述第一 区块的hash值; 其中, 所述第一预准备消息Pre ‑Prepare1的消息格式为: <Pre‑Prepare1, v1, h1, BH1, CteTable1, type1, p1>σp1, B1; 其中, <Pre ‑Prepare1, v1, h1, BH1, CteTable1, type1, p1>σp1表示所述第一预准备消息 中第一委员会的主节点p1的签名, 所述v1表示所述第一主节点的视图号, 所述h1表示所述 第一区块的高度, 所述BH1表示所述第一区块的hash值, 所述CteTab le1表示第一委员会节 点表, 所述p1表示所述第一委员会节点中主节点的编号, 所述type1表示信号类型, 所述B1 表示所述第一区块; 所述第二验证, 包括: 所述第一从节点接收到所述第一主节点发送的所述第一提交消 息后, 判断第二验证信息是否正确, 若正确, 则所述第二验证通过, 所述第二验证信息包括: 所述第一主节点的签名、 所述第一主节点的视图号、 所述第一区块的高度、 所述第一区块的 hash值及PG1; 其中, 所述第一 提交消息 Commit1的消息格式为: <Commit1, PG1, Score1, v1, h1, BH1, p1>σp1, B1; 其中, <Commit1, PG1, Score1, v1, h1, BH1, p1>σp1表示所述第一提交消息中第一委员会 的主节点p1的签名, 所述PG1中包括2e+1个所述第一准备消息, 所述 所述Score1 为所述第一委员会节点中所有节点的可信度分值, 所述B1表示所述第一区块; 所述第三验证, 包括: 当所述第一主节点收到2e个所述第二提交消息, 所述 所述第三验证通过; 所述第四验证, 包括: 所述第二从节点接收到所述第二主节点发送的所述第二预准备 消息后, 判断第四验证信息是否正确, 若正确, 则所述第四验证通过, 所述第四验证信息包 括: 所述第二主节 点的签名、 所述第二主节点的视图号、 所述第二区块的高度以及所述第二 区块的hash值; 其中, 所述第二预准备消息Pre ‑Prepare2的消息格式为: <Pre‑Prepare2, v2, h2, BH2, CteTable2, type2, p2>σp2, B2;权 利 要 求 书 2/9 页 3 CN 114928441 A 3

.PDF文档 专利 一种双委员会共识方法及装置

文档预览
中文文档 42 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共42页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种双委员会共识方法及装置 第 1 页 专利 一种双委员会共识方法及装置 第 2 页 专利 一种双委员会共识方法及装置 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 08:13:42上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。