【技术实现步骤摘要】
一种区块链的共识方法及系统
[0001]本申请涉及区块链领域,具体涉及一种区块链的共识方法及系统。
技术介绍
[0002]去中心化(decentralization)是互联网发展过程中形成的社会关系形态和内容产生形态,是相对于“中心化”而言的新型网络内容生产过程,其被广泛应用于分布式系统。而建立一个分布式系统的关键在于达成分布式共识。分布式共识是分布式系统为了确保多个对等的分布式节点最终数据正确性和一致性的实现手段。以现有的区块链为例,网络里有各种各样的用户在向网络广播交易,而节点必须对哪些交易可以进行广播和交易发生的次序达成共识,以此使系统形成一个唯一的全球交易总账。
[0003]因此,需要使所有的节点对交易产生的区块达成共识。最好的方式就是:在一定的时间段里,比如每隔10分钟,每个节点都提议将自己未被认可的交易成为已经达成共识的区块链后面的下一个区块。然而这种方式会面临不完美网络的挑战。例如网络延迟会导致节点之间没有一个统一的全球时间概念。因为网络延迟的存在,会造成某些节点早发或者同时发布的交易被延后收到。甚至,收到的交易数量也会有差异。即,并非所有节点都能根据每个交易的交易时间来达成共识。
[0004]上述分析表明,基于时间概念的共识方案显然无法应对真正的分布式系统。因此现有的区块链系统采用的共识方案都尽可能地放弃时间概念。目前主要的共识方案主要有POW、POS等数十种方案。通过共识方案确定权威的记账人进行记账,进而实现所记账目的共识。其中,POW(Proof of Work,工作量证明)是首个 ...
【技术保护点】
【技术特征摘要】
1.一种区块链的共识方法,其特征在于,所述区块链包括:用户节点、工作节点以及公证节点;所述共识方法包括:用户节点构造交易信息并向工作节点进行广播;工作节点接收广播的交易信息形成交易池,并按预设的规则对交易池中的交易信息进行排序;工作节点基于排序后的交易信息,按预设的配置进行打包形成交易区块,并将交易区块的区块头发送至公证节点;公证节点接收不同工作节点发送的区块头,并基于接收的区块头按预设的条件选取选定工作节点;选定工作节点广播本地打包的交易区块,未选取的工作节点接收广播的交易区块,验证合格后存储入库。2.根据权利要求1所述的区块链的共识方法,其特征在于,所述按预设的规则对交易池中的交易信息进行排序的过程为:所述工作节点获取接收的交易信息中的手续费信息,并根据手续费的多少对交易池中的交易信息进行排序和实时刷新。3.根据权利要求1所述的区块链的共识方法,其特征在于,所述用户节点构造的交易信息中附带有第一时间戳,所述第一时间戳用于标识交易发起的时间;所述工作节点在对交易池中的交易信息进行排序和打包时,对于第一时间戳超过预定时间仍未打包的交易信息进行丢弃。4.根据权利要求3所述的区块链的共识方法,其特征在于,所述工作节点基于排序后的交易信息,按预设的配置进行打包形成交易区块,并将交易区块的区块头发送至公证节点的过程为:所述工作节点从排序后的第一个交易信息开始,依次选取n个交易信息,形成交易区块,并使该交易区块满足预设的配置[X,Y];配置中的参数X表示交易区块中交易信息的数量下限,即n≥X;配置中的参数Y表示交易集合的区块头数据大小的上限,即区块头的数据大小m≤Y;所述工作节点将交易区块的区块头发送至公证节点。5.根据权利要求4所述的区块链的共识方法,其特征在于,所述配置[X,Y]中的参数X至少为1。6.根据权利要求1所述的区块链的共识方法,其特征在于,所述交易区块的区块头至少包括交易信息的merkle根、交易信息的数量以及交易费总额。7.根据权利要求6所述的区块链的共识方法,其特征在于,所述公证节点接收不同工作节点发送的区块头,并基于接收的区块头按预设的条件选取选定工作节点的过程包括:公证节点接收不同工作节点发送的区块头,并获取各区块头对应的交易费总额;公证节点基于获取的交易费总额,选取交易费总额最大的区块头对应的工作节点为选
定工作节点。8.根据权利要求1所述的区块链的共识方法,其特征在于,所述工作节点基于排序后的交易信息,按预设的配置进行打包形成交易区块,并将交易区块的区块头发送至公证节点的过程包括:工作节点生成随机数,并基于随机数生成随机数的隐文,然后进行广播;工作节点基于排序后的交易信息,按预设的配置进行打包形成交易区块,并将交易区块的区块头附带随机数的明文一起发送至公证节点。9.根据权利要求8所述的区块链的共识方法,其特征在于,所述公证节点接收不同工作节点发送的区块头,并基于接收的区块头按预设的条件选取选定工作节点的过程包括:公证节点接收不同工作节点发送的区块头,并获取各区块头对应的交易费总额;公证节点基于获取的交易费总额,选取交易费总额最大的区块头对应的工作节点;如果选取的工作节点数量唯一,则定义该选取的工作节点为选定工作节点;如果选取的工作节点数量大于或等于2个,则计算选取的工作节点发送的随机数的平均值,并将距离平均值最小的随机数对应的工作节点定义为选定工作节点。10.根据权利要求8所述的区块链的共识方法,其特征在于,所述工作节点生成随机数,并基于随机数生成随机数的隐文,然后进行广播的过程包括:工作节点预先向公证节点申请并...
【专利技术属性】
技术研发人员:赵呈洋,张能伟,史钦锋,曹飞,赵健,叶飞,
申请(专利权)人:矩阵时光数字科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。