[发明专利]一种支持快速达成最终确认性的拜占庭共识方法有效

专利信息
申请号: 201811058157.4 申请日: 2018-09-11
公开(公告)号: CN109447795B 公开(公告)日: 2021-06-04
发明(设计)人: 史佩昌;王怀民;丁滟;杨尚之;陈昌;杨文韬;刘惠;丁博;傅翔;杨识澜;岳喜坤 申请(专利权)人: 中国人民解放军国防科技大学
主分类号: G06Q40/04 分类号: G06Q40/04
代理公司: 湖南兆弘专利事务所(普通合伙) 43008 代理人: 谭武艺
地址: 410073 湖南*** 国省代码: 湖南;43
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种支持快速达成最终确认性的拜占庭共识方法,实施步骤包括:预先在网络中部署具有VRF函数服务接口的弱中心,选民调用VRF函数生成抽签信息,弱中心随机选取委员会成员,选出一个主官、N‑1个副官;主官将收到的交易打成区块提议并广播给弱中心以及所有的副官,副官判断是否在指定时间内收到主官发送的区块提议,如果收到区块提议则进行验证并向弱中心给出是否认可该区块的投票,弱中心统计副官的投票结果,如果全票通过则发布正常区块,否则如果赞成票数小于2f+1则进行重新投票;否则进行二次确认。本发明具有委员选举公平、过程高效、安全性高、性能高等优点。
搜索关键词: 一种 支持 快速 达成 最终 确认 拜占庭 共识 方法
【主权项】:
1.一种支持快速达成最终确认性的拜占庭共识方法,其特征在于实施步骤包括:1)预先在网络中部署具有VRF函数服务接口的弱中心;2)选民用VRF函数生成哈希hash和证明π并进一步生成包含身份及选举轮次信息的字符串X,选民用弱中心公钥加密字符串X得到PK中心(X)并发送给弱中心;3)弱中心等待指定的时间t后,从发送PK中心(X) 的所有选民中定量随机选择出N个委员构成的投票委员会成员,其中N的值为3f+1,f为拜占庭容错的最大值;并按照指定的规则指定一个委员为主官、其余N‑1个委员为副官;4)主官将收到的交易打成区块提议并广播给弱中心以及所有的副官,副官判断是否在指定时间内收到主官发送的区块提议,如果收到区块提议则进行验证并向弱中心给出是否认可该区块的投票,如果超时未收到主官发送的区块提议则在全网广播重选主官消息;5)弱中心判断在预设的超时时间Tproposal内没有收到主官的区块提议且在两倍的预设的超时时间Tproposal内收到超过f+1个副官的发送的重选主官消息是否成立,如果成立则跳转执行步骤2);否则广播一次来自主官的区块提议,并跳转执行步骤6);6)弱中心对所有的副官的委员身份进行验证,并统计收集来自合法委员身份的副官的投票结果,如果赞成票数m小于2f+1,则跳转执行步骤7);如果赞成票数m为[2f+1,3f+1)之间,则跳转执行步骤8);如果赞成票数m等于3f+1,则跳转执行步骤9);7)弱中心判断当前投票过程是否是重投票过程,如果是重投票过程,则跳转执行步骤10);否则判断收到的反对票数大于或等于f+1是否成立,如果成立则跳转执行步骤10),如果不成立,则启动投票委员会成员重投票过程,然后跳转执行步骤6);8)弱中心将所有副官名单以及一致的结果一起打包,用弱中心私钥签名并广播给主官和所有副官,副官向弱中心确认投票结果,在超时前如果有不少于2f+1个副官确认了这个投票结果,则弱中心认可该区块,并将该区块信息发送给所有选民,跳转执行步骤9);否则,弱中心判定可能有副官叛变或者网络异步引起消息丢失,跳转执行步骤10);9)主官发布正常区块,本轮投票委员会成员任期结束,退出;10)弱中心发布空白区块,本轮投票委员会成员任期结束,退出。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201811058157.4/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top