【技术实现步骤摘要】
区块链的双通道共识系统和方法、计算机可读存储介质
[0001]本申请涉及区块链
,具体涉及区块链的双通道共识系统和方法、计算机可读存储介质。
技术介绍
[0002]分布式系统的共识协议,大致可分为两类,一类是基于数据状态:例如比特币为代表的区块链算法(或者称为中本聪共识),另一类基于投票:例如经典的 BFT 算法及后续的演进算法PBFF等。分布式共识协议是区块链系统的一个重要组成部分。
[0003]在分布式账本系统中,每个节点需要让自身存储的账本跟其他节点存储的账本保持一致,这个过程就是通过共识算法实现的。区块链中目前常见的共识过程有工作量证明机制共识过程、拜占庭容错(Byzantine Fault Tolerance,简称BFT)共识过程、实用拜占庭(Practical Byzantine Fault Tolerance,简称PBFT)共识过程,其除了能够容忍宕机、网络延迟/断开等良性错误,还能够容忍任意类型的恶意攻击。
[0004]一个完整BFT共识过程包括多个视图(view),视图也可以称为共识单元,参与共识的各个副本节点轮值“主节点”,每个主节点完成一个共识单元,共识单元之间切换流程复杂。每个视图通常包括多个阶段,例如:每个共识单元可以包括3阶段,分别为预提交(pre
‑
commit)、提交(commit)、决策(decsion)。每次共识单元收集大于预设数量的投票即可。由于BFT共识过程复杂,使得区块数据较大的情况下,通信压力大,共识很难进行下去。
[0005 ...
【技术保护点】
【技术特征摘要】
1.一种区块链的双通道共识系统,其特征在于,包括:多个节点;每个节点属于一种节点类型,所述节点类型包括:主控类型、协调类型、边缘类型;所述主控类型的节点为所述区块链的双通道共识系统初始确定的;所述协调类型的节点和所述边缘类型的节点基于信用度值确定;所述主控类型的节点接收客户端广播的共识请求消息,所述共识请求消息携带待共识区块数据的名字;所述主控类型的节点向协调类型的节点发送遴选通知;所述主控类型的节点接收所述协调类型的节点发送的遴选通知响应,所述遴选通知响应中包含所述协调类型的节点的私钥签名;所述主控类型的节点基于可验证随机函数对各协调类型的节点的私钥签名进行验证,得到验证结果;所述主控类型的节点在验证结果为验证通过的情况下,基于各协调类型的节点的信用度值,确定共识节点和候选共识主节点;所述主控类型的节点向所述共识节点分别发送入选通知,所述入选通知用于指示已被选为共识节点;所述主控类型的节点通过共识过程完成对候选共识主节点的验证,在对所述候选共识主节点验证通过的情况下,确定候选共识主节点为共识主节点;所述主控类型的节点向所述共识节点广播所述共识主节点;所述共识主节点向共识副节点发送仲裁请求消息,所述仲裁请求消息携带待共识区块数据的名字;所述共识副节点根据所述待共识区块数据的名字,通过命名寻址的通信方式,获取所述待共识区块数据;所述共识副节点进行签名验证和仲裁投票,并进行门限签名,得到投票结果;所述共识副节点向所述共识主节点发送所述投票结果;所述共识主节点根据接收到的各投票结果,得到共识结果,所述共识结果包括:达成共识或者未达成共识。2.一种区块链的双通道共识方法,其特征在于,应用于区块链的双通道共识系统,所述区块链的双通道共识系统包括:共识主节点和共识副节点;所述方法包括:所述共识副节点接收所述共识主节点发送的仲裁请求消息,所述仲裁请求消息携带待共识区块数据的名字;所述共识副节点根据所述待共识区块数据的名字,通过命名寻址的通信方式,获取所述待共识区块数据;所述共识副节点进行签名验证和仲裁投票,并进行门限签名,得到投票结果;所述共识副节点向所述共识主节点发送所述投票结果,以使所述共识主节点根据接收到的各投票结果,得到共识结果,所述共识结果包括:达成共识或者未达成共识。3.如权利要求2所述的方法,其特征在于,所述共识副节点根据所述待共识区块数据的名字,通过命名寻址的通信方式,获取所述待共识区块数据,包括:所述共识副节点在确定未存储所述待共识区块数据的情况下,通过命名寻址的通信方式,向其他共识节点发送数据获取请求,所述其他共识节点包括所述共识主节点和除所述
共识副节点以外的共识副节点;所述共识副节点接收所述其他共识节点中的目标节点发送的所述待共识区块数据。4.如权利要求3所述的方法,其特征在于,所述待共识区块数据的名字包括:客户端的标识信息和待共识区块数据的标识,所述待共识区块数据的标识包括:区块高度和区块头的哈希值;所述数据获取请求中包含:协议标识信息、可路由的标识前缀信息、客户端的标识信息和待共识区块数据的名字。5.如权利要求2
‑
4任一项所述的方法,其特征在于,所述区块链的双通道共识系统中的包含多个节点,所述共识主节点和所述共识副节点是从所述多个节点中选择的,每个节点具有所属的节点类型,所述节点类型包括:主控类型、协调类型、边缘类型;所述主控类型的节点为所述区块链的双通道共识系统初始确定的;所述协调类型的节点和所述边缘类型的节点基于信用度值确定;所述共识主节点和所述共识副节点为所述主控类型的节点基于可验证随机函数和所述多个节点分别对应的信用度值确定的,所述共识副节点所属的类型是协调类型或主控类型,所述...
【专利技术属性】
技术研发人员:雷凯,余锡权,郭晨,山进孝,李琦,何晟,闵江松,徐婷,景晓军,陈佩淑,袁国辉,陈侃,
申请(专利权)人:深圳市智慧城市科技发展集团有限公司招商新智科技有限公司金蝶软件中国有限公司任子行网络技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。