区块确认方法、计算机设备和存储介质技术

技术编号:32513437 阅读:17 留言:0更新日期:2022-03-02 11:03
本发明专利技术提供一种区块确认方法、计算机设备和存储介质,该方法包括:在当前高度到达第二高度,以及,判断出当前节点为第一轮的委员会成员时,抽取第一数量个第一委员会成员和第二数量个第一打包人;将各第一委员会成员和各第一打包人的第一信息广播给其它区块链节点;接收若干第一区块链节点广播的第二信息;在第一时长后,对第一信息和各第二信息投票以确定第一轮的委员会成员和打包人;对于所确定的打包人所生成的第一轮的各第一高度的第一区块执行如下操作:对各第一区块投票以得到经过共识的第二区块。上述实施例使得部署在公网中的区块链的确认区块时间短,tps高。tps高。tps高。

【技术实现步骤摘要】
区块确认方法、计算机设备和存储介质


[0001]本申请涉及区块链
,具体涉及一种区块确认方法、计算机设备和存储介质。

技术介绍

[0002]区块链一般有两个指标来判别他们的性能:一个是区块确认时间,也就是上一个区块确认后开始到本区块确认结束这段时间。另一个是TPS,也就是平均每秒确认的交易数量。
[0003]现有的置于公网的区块链中,例如比特币区块链,由于公网网络慢,公网网络不可控的原因,区块确认时间慢,且该区块链分叉频繁;又例如Algorand区块链,大量的打包人和委员会成员间彼此广播的信息量巨大,容易造成区块链拥堵,tps低。

技术实现思路

[0004]鉴于现有技术中的上述缺陷或不足,期望提供一种确认区块时间短,tps高的区块生成和确认方法、计算机设备和存储介质。
[0005]第一方面,本专利技术提供一种适用于区块链节点的区块确认方法,上述方法包括:
[0006]在当前高度到达第二高度,以及,在根据委员会成员确定规则判断出当前节点为第一轮的委员会成员时,根据委员会成员抽取规则抽取第一数量个第一委员会成员,并根据打包人抽取规则抽取第二数量个第一打包人,其中,第一轮的初始区块高度与第一轮包括的区块数量之差等于第二高度;
[0007]将各第一委员会成员和各第一打包人的第一信息广播给其它区块链节点;
[0008]接收若干第一区块链节点广播的第二信息;其中,第二信息包括第一数量个第二委员会成员和第二数量个第二打包人,第二委员会成员由第一区块链节点在根据委员会成员确定规则判断出本节点为第一轮的委员会成员时根据委员会成员抽取规则所抽取,第二打包人由第一区块链节点在根据委员会成员确定规则判断出本节点为委员会成员时根据打包人抽取规则所抽取;
[0009]在第一时长后,对第一信息和各第二信息投票:若存在任一第一委员会成员或第二委员会成员获得足额的票数,则将获得足额票数的第一委员会成员或第二委员会成员确定为第一轮的委员会成员;以及,若存在任一第一打包人或第二打包人获得足额的票数,则将获得足额票数的第一打包人或第二打包人确定为第一轮的打包人;
[0010]对于所确定的打包人所生成的第一轮的各第一高度的第一区块执行如下操作:对各第一区块投票以得到经过共识的第二区块。
[0011]第二方面,本专利技术还提供一种设备,包括一个或多个处理器和存储器,其中存储器包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本专利技术各实施例提供的区块确认方法。
[0012]第三方面,本专利技术还提供一种存储有计算机程序的存储介质,该计算机程序使计
算机执行根据本专利技术各实施例提供的区块确认方法。
[0013]本专利技术诸多实施例提供的区块确认方法、计算机设备和存储介质通过在当前高度到达第二高度,以及,在根据委员会成员确定规则判断出当前节点为第一轮的委员会成员时,根据委员会成员抽取规则抽取第一数量个第一委员会成员,并根据打包人抽取规则抽取第二数量个第一打包人,其中,第一轮的初始区块高度与第一轮包括的区块数量之差等于第二高度;将各第一委员会成员和各第一打包人的第一信息广播给其它区块链节点;接收若干第一区块链节点广播的第二信息;其中,第二信息包括第一数量个第二委员会成员和第二数量个第二打包人,第二委员会成员由第一区块链节点在根据委员会成员确定规则判断出本节点为第一轮的委员会成员时根据委员会成员抽取规则所抽取,第二打包人由第一区块链节点在根据委员会成员确定规则判断出本节点为委员会成员时根据打包人抽取规则所抽取;在第一时长后,对第一信息和各第二信息投票:若存在任一第一委员会成员或第二委员会成员获得足额的票数,则将获得足额票数的第一委员会成员或第二委员会成员确定为第一轮的委员会成员;以及,若存在任一第一打包人或第二打包人获得足额的票数,则将获得足额票数的第一打包人或第二打包人确定为第一轮的打包人;对于所确定的打包人所生成的第一轮的各第一高度的第一区块执行如下操作:对各第一区块投票以得到经过共识的第二区块的方法,使得部署在公网中的区块链的确认区块时间短,tps高。
附图说明
[0014]通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
[0015]图1为本专利技术一实施例提供的一种区块确认方法的流程图。
[0016]图2为本专利技术一实施例提供的一种设备的结构示意图。
具体实施方式
[0017]下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关专利技术,而非对该专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与专利技术相关的部分。
[0018]需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
[0019]图1为本专利技术一实施例提供的一种区块确认方法的流程图。如图1所示,在本实施例中,本专利技术提供一种适用于区块链节点的区块确认方法,上述方法包括:
[0020]S11:在当前高度到达第二高度,以及,在根据委员会成员确定规则判断出当前节点为第一轮的委员会成员时,根据委员会成员抽取规则抽取第一数量个第一委员会成员,并根据打包人抽取规则抽取第二数量个第一打包人,其中,第一轮的初始区块高度与第一轮包括的区块数量之差等于第二高度;
[0021]S12:将各第一委员会成员和各第一打包人的第一信息广播给其它区块链节点;
[0022]S13:接收若干第一区块链节点广播的第二信息;其中,第二信息包括第一数量个第二委员会成员和第二数量个第二打包人,第二委员会成员由第一区块链节点在根据委员会成员确定规则判断出本节点为第一轮的委员会成员时根据委员会成员抽取规则所抽取,
第二打包人由第一区块链节点在根据委员会成员确定规则判断出本节点为委员会成员时根据打包人抽取规则所抽取;
[0023]S14:在第一时长后,对第一信息和各第二信息投票:若存在任一第一委员会成员或第二委员会成员获得足额的票数,则将获得足额票数的第一委员会成员或第二委员会成员确定为第一轮的委员会成员;以及,若存在任一第一打包人或第二打包人获得足额的票数,则将获得足额票数的第一打包人或第二打包人确定为第一轮的打包人;
[0024]S15:对于所确定的打包人所生成的第一轮的各第一高度的第一区块执行如下操作:对各第一区块投票以得到经过共识的第二区块。
[0025]具体的,以S11包括“在d1<=t1/W时,判断出当前节点为委员会成员;其中,d1为当前节点所计算得到的第一哈希值与2^256的比值,t1为第一数量,W为所有抵押的通证数量,区块链节点每抵押第三数量个通证以获取一个tikect以参与共识,第一哈希值的计算方法为d1=vrf(seed,height,sk1),seed为当前区块的区块哈希,height为第一轮的初始区块高度,sk1为当前节点所持有的私钥;获取di&本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种区块确认方法,其特征在于,适用于区块链节点,所述方法包括:在当前高度到达第二高度,以及,在根据委员会成员确定规则判断出当前节点为第一轮的委员会成员时,根据委员会成员抽取规则抽取第一数量个第一委员会成员,并根据打包人抽取规则抽取第二数量个第一打包人,其中,所述第一轮的初始区块高度与所述第一轮包括的区块数量之差等于所述第二高度;将各所述第一委员会成员和各所述第一打包人的第一信息广播给其它区块链节点;接收若干第一区块链节点广播的第二信息;其中,所述第二信息包括所述第一数量个第二委员会成员和所述第二数量个第二打包人,所述第二委员会成员由所述第一区块链节点在根据所述委员会成员确定规则判断出本节点为所述第一轮的委员会成员时根据所述委员会成员抽取规则所抽取,所述第二打包人由所述第一区块链节点在根据所述委员会成员确定规则判断出本节点为委员会成员时根据所述打包人抽取规则所抽取;在第一时长后,对所述第一信息和各所述第二信息投票:若存在任一第一委员会成员或第二委员会成员获得足额的票数,则将获得足额票数的所述第一委员会成员或第二委员会成员确定为所述第一轮的委员会成员;以及,若存在任一第一打包人或第二打包人获得足额的票数,则将获得足额票数的所述第一打包人或第二打包人确定为所述第一轮的打包人;对于所确定的打包人所生成的所述第一轮的各第一高度的第一区块执行如下操作:对各所述第一区块投票以得到经过共识的第二区块。2.根据权利要求1所述的方法,其特征在于,所述在根据委员会成员确定规则判断出当前节点为委员会成员时,根据委员会成员抽取规则抽取第一数量个第一委员会成员包括:在d1<=t1/W时,判断出当前节点为委员会成员;其中,d1为当前节点所计算得到的第一哈希值与2^256的比值,t1为所述第一数量,W为所有抵押的通证数量,区块链节点每抵押第三数量个通证以获取一个tikect以参与共识,所述第一哈希值的计算方法为d1=vrf(seed,height,sk1),seed为当前区块的区块哈希,height为所述第一轮的初始区块高度,sk1为当前节点所持有的私钥;获取di<=t1/W的区块链节点为第一委员会成员;其中,di为其它区块链节点所计算得到的第二哈希值与2^256的比值,所述第二哈希值的计算方法为di=vrf(seed,height,sk2),sk2为其它节点所持有的私钥;所述根据打包人抽取规则抽取第二数量个第一打包人包括:获取dj<=t2/W的区块链节点为第一打包人;其中,dj为其它区块链节点所计算得到的第三哈希值与2^256的比值,所述第三哈希值的计算方法为dj=vrf(seed,height,sk2),t2为所述第二数量。3.根据权利要求1所述的方法,其特征在于,所述在根据委员会成员确定规则判断出当前节点为委员会成员时,根据委员会成员抽取规则抽取第一数量个第一委员会成员包括:在d2<=t3/W时,判断出当前节点为委员会成员;其中,d2为当前节点所计算得到的第四哈希值与2^256的比值,t1为所述第一数量,t3=3*t1+1,W为所有抵押的通证数量,区块链节点每抵押第三数量个通证以获取一个tikect以参与共识,所述第四哈希值的计算方法为d2=vrf(seed,height,sk1),seed为当前区块的区块哈希,height为所述第一轮的初始区块高度,sk1为当前节点所持有的私钥;
获取dm<=t3/W的区块链节点为第一委员会成员,并将所述第一高度的委员会成员获取次数加一以更新所述委员会成员获取次数;其...

【专利技术属性】
技术研发人员:吴思进王春晖王志文李斌曹競
申请(专利权)人:杭州复杂美科技有限公司
类型:发明
国别省市:

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

1