【技术实现步骤摘要】
一种区块生成方法及共识节点
[0001]本文件是“一种区块生成方法及共识节点”的分案申请,母案的申请号为“202010629690.2”,申请日为“2020
‑
07
‑
03”。
[0002]本文件涉及区块链
,尤其涉及一种区块生成方法及共识节点。
技术介绍
[0003]在区块链系统中,每个区块的时间戳就像区块号一样必须是顺序递增的。目前绝大部分区块链系统采用的是拜占庭容错(BFT,Byzantine Fault
‑
Tolerant)共识协议。在BFT共识协议中,区块的时间戳是由提议发起者决定的,如果提议发起者作恶,会导致整条链区块的时间有序性遭到破坏。此外,对于一些需要追溯时间的区块链业务,也要在区块的时间戳正确的情况下,才能执行的业务决策。
[0004]为此,当前亟需一种保证新增区块的时间戳相对上一区块的时间戳呈递增的技术方案。
技术实现思路
[0005]本说明书实施例目的是提供一种区块生成方法及共识节点,能够保证新增区块的时间戳相 ...
【技术保护点】
【技术特征摘要】
1.一种区块生成方法,包括:区块链的第一共识节点发起携带有所述第一共识节点提供的第一时间戳的目标共识提议,其中,所述区块链采用基于蜜獾拜占庭容错算法的共识协议,所述目标共识提议所属的共识阶段还包括所述第二共识节点发起的共识提议;所述区块链的第二共识节点在接收到所述目标共识提议后,基于所述目标共识提议的接收时间,确定第二时间戳;所述第二共识节点基于本地结尾区块的第三时间戳和所述第二时间戳,对所述第一时间戳进行校验,以在校验通过后对所述目标共识提议的提议数据执行共识逻辑;若所述目标共识提议达成共识,则所述第一共识节点和所述第二共识节点将目标共识提议所属共识阶段中二进制协定BA值为1的所有共识提议中的时间戳组合一个集合,并基于集合中所有时间戳确定第四时间戳,以生成第四时间戳并记录有目标共识提议的提议数据的的新增区块,第四时间戳不早于所属共识节点本地的其他区块的时间戳。2.根据权利要求1所述的方法,包括:区块链的第一共识节点发起携带有所述第一共识节点提供的第一时间戳的目标共识提议,包括:区块链的第一共识节点在准备发起目标共识提议时,获取获取当前时间相关的第五时间戳和本地结尾区块的第六时间戳;若所述第五时间戳晚于所述第六时间戳,则所述第一共识节点将所述第五时间戳作为第一时间戳,并发起发起携带有所述第一时间戳的目标共识提议;若所述第五时间戳早于所述第六时间戳,则所述第一共识节点基于预设规则确定第一时间戳,并发起携带有所述第一时间戳的目标共识提议,其中,所述预设规则确定的第一时间戳是所述第六时间戳加上单位时间获得的。3.根据权利要求1所述的方法,在所述区块链的第二共识节点对所述第一时间戳进行校验的过程中,若所述第一时间戳早于所述第二时间戳,且晚于所述第三时间戳,则校验通过,否则校验失败。4.根据权利要求1所述的方法,在目标共识提议的共识阶段,第一共识节点基于可靠广播传输RBC协议中的Ready消息,将所述第一时间戳提供给所述区块链的其他共识节点。...
【专利技术属性】
技术研发人员:廖校均,
申请(专利权)人:支付宝杭州信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。