一种区块链拜占庭容错共识方法及系统技术方案

技术编号:24893496 阅读:32 留言:0更新日期:2020-07-14 18:19
本发明专利技术提供了一种区块链拜占庭容错共识方法及系统,方法包括:S1:节点进行密码抽签,被抽中的节点提议区块并广播;S2:对最高优先级的区块进行第一轮投票;S3:如果存在第一轮投票大于或等于设定条件的区块,则对该区块进行第二轮投票;S4:如果第一轮票数和第二轮票数均大于或等于设定条件,则对该区块达成共识并返回S1,否则执行S5;S5:如果不存在第一轮票数大于或等于设定条件的区块,则对空块进行第三轮投票;如果存在第一轮票数大于或等于设定条件且第二轮票数小于设定条件的区块,则对该区块进行第三轮投票;如果第三轮票数大于或等于设定条件,则返回S2,否则返回S1,从而提高拜占庭容错共识算法效率且降低网络传输压力。

【技术实现步骤摘要】
一种区块链拜占庭容错共识方法及系统
本专利技术涉及信息安全
,特别是涉及一种区块链拜占庭容错共识方法及系统。
技术介绍
当前,区块链系统应用越来越广泛,如中国央行从2014年就开始研究基于区块链的数字货币,并已取得较好的研究成果;2019年3月,IBM(IBM.US)宣布跨境支付区块链WorldWire;2019年6月,美国Facebook公司推出Libra数字货币,以期望为全球提供无国界的数字货币和金融服务的区块链平台;2019年6月,Visa宣布跨境支付区块链网络B2BConnect。除数字货币外,区块链技术在物联网、电子发票、司法存证、食品安全等领域应用不断推广。共识方法是区块链的核心协议。当前,工作量证明(ProofofWork)机制由于大量的资源消耗和长时间等待而受到越来越多的质疑。普林斯顿大学ArvindNarayanan教授指出目前比特币挖矿的电力消耗已经接近全球电力总消耗的1%,数值大约是5000兆瓦,几乎是整个伦敦人口(约800万)每天的用电量。权益证明(ProofofStake)和委托权益证明(Delegate本文档来自技高网...

【技术保护点】
1.一种区块链拜占庭容错共识方法,其特征在于,所述方法包括:/n步骤S1:节点进行密码抽签,被抽中的节点提议区块并广播;/n步骤S2:对最高优先级的区块进行第一轮投票;/n步骤S3:判断各区块的第一轮投票是否大于或等于设定条件;如果存在第一轮投票大于或等于设定条件的区块,则对该区块进行第二轮投票;所述设定条件为2/3总票数;/n步骤S4:判断第一轮票数和第二轮票数是否均大于或等于设定条件;如果第一轮票数和第二轮票数均大于或等于设定条件,则对该区块达成共识并返回步骤S1,否则执行步骤S5;/n步骤S5:如果不存在第一轮票数大于或等于设定条件的区块,则对空块进行第三轮投票;如果存在第一轮票数大于或...

【技术特征摘要】
1.一种区块链拜占庭容错共识方法,其特征在于,所述方法包括:
步骤S1:节点进行密码抽签,被抽中的节点提议区块并广播;
步骤S2:对最高优先级的区块进行第一轮投票;
步骤S3:判断各区块的第一轮投票是否大于或等于设定条件;如果存在第一轮投票大于或等于设定条件的区块,则对该区块进行第二轮投票;所述设定条件为2/3总票数;
步骤S4:判断第一轮票数和第二轮票数是否均大于或等于设定条件;如果第一轮票数和第二轮票数均大于或等于设定条件,则对该区块达成共识并返回步骤S1,否则执行步骤S5;
步骤S5:如果不存在第一轮票数大于或等于设定条件的区块,则对空块进行第三轮投票;如果存在第一轮票数大于或等于设定条件且第二轮票数小于设定条件的区块,则对该区块进行第三轮投票;如果第三轮票数大于或等于设定条件,则返回步骤S2,对该区块开始新一轮的投票;否则进入步骤S1。


2.根据权利要求1所述的区块链拜占庭容错共识方法,其特征在于,所述步骤S1包括:
步骤S11:根据各节点的私钥、各节点的抵押和第r个区块种子确定第一随机值和第一验证值;
步骤S12:判断第一随机值是否在区块提议阈值范围内;如果所述第一随机值在区块提议阈值范围内,则节点被抽中,被抽中的节点提议区块并广播;否则节点没被抽中,拒绝提议区块并广播。


3.根据权利要求1所述的区块链拜占庭容错共识方法,其特征在于,所述步骤S2包括:
步骤S21:根据各节点的公钥、各节点的抵押、第r个区块种子和第一验证值确定第一有效属性;
步骤S22:如果第一有效属性输出为有效,则接收被抽中节点广播的区块;如果第一有效属性输出为无效,则拒绝接收被抽中节点广播的区块;
步骤S23:根据各节点的私钥、各节点的抵押和第r个区块种子确定第二随机值和第二验证值;
步骤S24:判断第二随机值是否在第一轮投票阈值范围内;如果第二随机值在第一轮投票阈值范围内,则选取最高优先级的区块;
步骤S25:对最高优先级的区块进行第一轮投票,获得各节点的第一签名。


4.根据权利要求1所述的区块链拜占庭容错共识方法,其特征在于,所述步骤S3包括:
步骤S31:根据各节点的公钥、各节点的抵押、第r个区块种子和第二验证值确定第二有效属性;
步骤S32:根据各节点的第一签名、各节点的公钥、第二随机值、第二验证值、各节点的抵押、第r个区块种子和最高优先级的区块确定第三有效属性;
步骤S33:当第二有效属性和第三有效属性均为有效值时,则统计各区块的第一轮票数;
步骤S34:根据各节点的私钥、各节点的抵押和第r个区块种子确定第三随机值和第三验证值;
步骤S35:判断第三随机值是否在第二轮投票阈值范围内;如果第三随机值在第二轮投票阈值范围内,则执行步骤S36;
步骤S36:对第一轮投票满足设定条件的区块进行第二轮投票,获得各节点的第二签名。


5.根据权利要求1所述的区块链拜占庭容错共识方法,其特征在于,所述步骤S4包括:
步骤S41:根据各节点的公钥、各节点的抵押、第r个区块种子和第三验证值确定第四有效属性;
步骤S42:根据各节点的第二签名、各节点的公钥、第三随机值、第三验证值、各节点的抵押、第r个区块种子和最高优先级的区块确定第五有效属性;
步骤S43:当第四有效属性和第五有效属性均为有效值时,则统计各区块内第二轮票数;
步骤S44:当第一轮票数大于或等于设定条件且第二轮票数大于或等于设定条件时,则对该区块达成共识并返回步骤S1;否则,执行步骤S5。


6.根据权利要求1所述的区块链拜占庭容错共识方法,其特征在于,所述步骤S5包括:
步骤S51:根据各节点的私钥、各节点的抵押和第r个区块种子确定第四随机值和第...

【专利技术属性】
技术研发人员:赵峰朱敏钟林何畅彬
申请(专利权)人:北京有链科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1