一种共识验证方法、装置及设备制造方法及图纸

技术编号:18942679 阅读:38 留言:0更新日期:2018-09-15 11:31
本说明书实施例公开了一种共识验证方法、装置及设备。在本说明实施例中,针对每个业务数据,若该业务数据未通过第一共识验证,则第一节点不会直接将该业务数据视为无效,而是判断该业务数据是否满足预设的可重试条件,若是,则将所述业务数据作为待重试的业务数据进行存储。第一节点当确定触发预设的重试执行条件时,可以重新对待重试的业务数据进行第一共识验证。

A consensus verification method, device and equipment

The embodiment of the manual discloses a consensus verification method, device and device. In the present illustrative embodiment, for each traffic data, if the traffic data is not verified by the first consensus, the first node does not directly regard the traffic data as invalid, but determines whether the traffic data meets the preset retriable condition, and if so, the traffic data is treated as the business data to be retried. Storage. When the first node determines the trigger default retry execution conditions, it can re-treat the retry business data for the first consensus verification.

【技术实现步骤摘要】
一种共识验证方法、装置及设备
本说明书涉及信息
,尤其涉及一种共识验证的方法、装置及设备。
技术介绍
目前,基于区块链技术开发的各种区块链系统的应用前景较为广阔。广为人知的区块链系统有比特币、以太坊、超级账本等,各种区块链系统的架构不尽相同。对于超级账本或其他类似于超级账本的架构的区块链系统而言,其大致架构可以如图1所示。在图1所示的区块链系统中,将对业务的共识验证过程分为两个阶段,即第一共识验证阶段和第二共识验证阶段(具体地,在超级账本系统中,所述第一共识验证阶段被称为背书阶段,所述第二共识验证阶段被称为确认阶段)。区块链节点的类型至少可以包括第一节点(图1中的空心节点)和第二节点(图1中的实心节点),同一区块链节点可以既是第一节点,又是第二节点(在超级账本系统中,所述第一节点被称为背书节点,所述第二节点被称为确认节点)。继续参见图1,各第一节点接收用户通过客户端发送的业务数据,并根据接收到各业务数据的先后顺序,依次针对每个业务数据执行第一共识验证。通过第一共识验证的各业务数据会被依次添加到待确认业务队列的队尾(对于业务数据TXn而言,n越小,表明该业务数据被各第一节点接收到本文档来自技高网...

【技术保护点】
1.一种共识验证方法,区块链节点至少包括第一节点和第二节点,其中,第一节点用于执行第一共识验证,第二节点用于执行第二共识验证,所述方法包括:第一节点接收业务数据,并对所述业务数据进行第一共识验证;若所述业务数据通过第一共识验证,则将所述业务数据添加到待确认业务队列中,以便各第二节点从所述待确认队列中捞取业务数据生成区块,并对所述区块进行第二共识验证;若所述业务数据未通过第一共识验证,则判断所述业务数据是否满足预设的可重试条件,若是,则将所述业务数据作为待重试的业务数据进行存储;当确定触发预设的重试执行条件时,重新对待重试的业务数据进行第一共识验证。

【技术特征摘要】
1.一种共识验证方法,区块链节点至少包括第一节点和第二节点,其中,第一节点用于执行第一共识验证,第二节点用于执行第二共识验证,所述方法包括:第一节点接收业务数据,并对所述业务数据进行第一共识验证;若所述业务数据通过第一共识验证,则将所述业务数据添加到待确认业务队列中,以便各第二节点从所述待确认队列中捞取业务数据生成区块,并对所述区块进行第二共识验证;若所述业务数据未通过第一共识验证,则判断所述业务数据是否满足预设的可重试条件,若是,则将所述业务数据作为待重试的业务数据进行存储;当确定触发预设的重试执行条件时,重新对待重试的业务数据进行第一共识验证。2.如权利要求1所述的方法,判断所述业务数据是否满足预设的可重试条件,具体包括:根据所述业务数据未通过所述第一共识验证的原因,判断所述业务数据是否满足预设的可重试条件。3.如权利要求2所述的方法,所述业务数据包括:转账业务的业务数据;根据所述业务数据未通过所述第一共识验证的原因,判断所述业务数据是否满足预设的可重试条件,具体包括:当转账方的资产余额不足时,确定所述业务数据满足预设的可重试条件。4.如权利要求1所述的方法,预先设定每个区块的最大容量,和/或第二节点生成每个区块的周期;确定触发预设的重试执行条件,具体包括:若各第二节点从所述待确认队列中捞取的用于生成下一个区块的业务数据的数据总量与所述最大容量的差值落入第一指定数值范围,则确定触发预设的重试执行条件;和/或若当前时刻到当前所在周期的结束时刻的时间间隔落入第二指定数值范围,则确定触发预设的重试执行条件。5.如权利要求1所述的方法,将所述业务数据作为待重试的业务数据进行存储,具体包括:将所述业务数据作为待重试的业务数据添加到预先创建的待重试业务队列的队尾;重新对待重试的业务数据进行第一共识验证,具体包括:从所述待重试业务队列中,由前到后依次捞取至少一个待重试的业务数据;重新对捞取的待重试的业务数据进行第一共识验证。6.如权利要求1所述的方法,重新对待重试的业务数据进行第一共识验证,具体包括:重新对待重试的业务数据进行第一共识验证,直至所述待重试的业务数据通过第一共识验证;或重新对待重试的业务数据进行第一共识验证,直至对所述待重试的业务数据进行第一共识验证的次数达到指定次数。7.如权利要求1所述的方法,将所述业务数据添加到待确认业务队列中,具体包括:将所述业务数据添加到待确认业务队列的队尾;各第二节点从所述待确认队列中捞取业务数据生成区块,具体包括:各第二节点从所述待确认队列中由前到后依次捞取若干业务数据生成区块;在重新对待重试的业务数据进行第一共识验证之后,所述方法还包括:将通过第一共识验证的待重试的业务数据添加到所述待确认业务队列中指定位置之前的位置。8.一种共识验证装置,区块链节点至少包括所述装置和第二节点,其中,所述装置用于执行第一共识验证,第二节点用于执行第二共识验证,所述装置包括:验证模块,接收业务数据,并...

【专利技术属性】
技术研发人员:杨新颖
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1