数据处理方法及电子设备技术

技术编号:30371013 阅读:74 留言:0更新日期:2021-10-16 17:50
本申请公开了一种数据处理方法及电子设备,所述方法包括:节点组中的目标节点获得共识选举结果,所述共识选举结果表征所述目标节点是否为共识节点;所述节点组中包含多个所述目标节点,且所述节点组为多个;所述节点组为区块链中的控制节点对节点集合中的节点进行划分所得到的组;在所述共识选举结果表征所述目标节点为共识节点的情况下,所述目标节点执行异步共识算法,以得到共识区块并将所述共识区块进行输出;在所述共识选举结果表征所述目标节点为非共识节点的情况下,所述目标节点接收所述共识节点输出的共识区块。收所述共识节点输出的共识区块。收所述共识节点输出的共识区块。

【技术实现步骤摘要】
数据处理方法及电子设备


[0001]本申请涉及区块链
,尤其涉及一种数据处理方法及电子设备。

技术介绍

[0002]由于区块链节点的位置分散,通常采用异步共识算法实现区块链节点之间的共识输出。
[0003]但是,随着区块链中节点数量的增加,会导致区块链节点之间实现共识输出的效率降低。

技术实现思路

[0004]有鉴于此,本申请提供一种数据处理方法及电子设备,如下:
[0005]一种数据处理方法,所述方法包括:
[0006]节点组中的目标节点获得共识选举结果,所述共识选举结果表征所述目标节点是否为共识节点;所述节点组中包含多个所述目标节点,且所述节点组为多个;所述节点组为区块链中的控制节点对节点集合中的节点进行划分所得到的组;
[0007]在所述共识选举结果表征所述目标节点为共识节点的情况下,所述目标节点执行异步共识算法,以得到共识区块并将所述共识区块进行输出;
[0008]在所述共识选举结果表征所述目标节点为非共识节点的情况下,所述目标节点接收所述共识节点输出的共识区块。
[0009]上述方法,优选的,节点组中的目标节点获得共识选举结果,包括:
[0010]节点组中的目标节点执行可验证随机函数,得到共识选举结果。
[0011]上述方法,优选的,在所述目标节点执行异步共识算法,以得到共识区块之后,所述方法还包括:
[0012]所述目标节点利用所述可验证随机函数为所述共识区块生成随机数和证明信息,并将所述随机数和所述证明信息存储到所述共识区块中。
[0013]上述方法,优选的,所述随机数和所述证明信息由所述目标节点使用私钥进行加密得到,所述私钥由所述目标节点执行所述可验证随机函数得到。
[0014]上述方法,优选的,在所述目标节点接收所述共识节点输出的共识区块之后,所述方法还包括:
[0015]所述目标节点使用公钥对所述共识区块中的随机数和证明信息进行验证,以得到验证结果;所述公钥与所述私钥相对应,且所述公钥由所述目标节点执行所述可验证随机函数得到;
[0016]在所述验证结果表征验证通过的情况下,所述目标节点存储所述共识区块。
[0017]上述方法,优选的,在所述目标节点存储所述共识区块之后,所述方法还包括:
[0018]所述目标节点执行存储的共识区域。
[0019]上述方法,优选的,在所述目标节点执行异步共识算法,以得到共识区块之后,所
述方法还包括:
[0020]所述目标节点执行所述共识区块。
[0021]上述方法,优选的,处于同一所述节点组中的目标节点之间关于节点属性相一致,且,处于同一所述节点组中的目标节点之间互相独立;
[0022]所述节点属性包含:节点状态属性、节点功能属性、节点地位属性中的任意一项或任意多项。
[0023]上述方法,优选的,所述节点集合为所述控制节点在接收到共识请求的情况下,按照预设的分组参数在所述区块链中进行多个节点的选择所得到的集合,且所述节点组中的目标节点通过接收所述控制节点发送的分组消息以确定所述目标节点被划分到所述节点组中;
[0024]其中,所述分组参数包含节点组的数量和所述节点组中所包含的节点的数量。
[0025]一种电子设备,包括:
[0026]存储器,用于存储应用程序和所述应用程序运行所产生的数据;
[0027]处理器,用于执行所述应用程序,以实现:在被区块链中的控制节点划分到节点组并作为目标节点的情况下,获得共识选举结果,所述共识选举结果表征所述目标节点是否为共识节点;所述节点组中包含多个所述目标节点,且所述节点组为多个,所述节点组为所述控制节点对节点集合中的节点进行划分所得到的组;在所述共识选举结果表征所述目标节点为共识节点的情况下,执行异步共识算法,以得到共识区块并将所述共识区块进行输出;在所述共识选举结果表征所述目标节点为非共识节点的情况下,接收所述共识节点输出的共识区块。
[0028]从上述技术方案可以看出,本申请公开的一种数据处理方法及电子设备,通过区块链上的控制节点划分出包含多个目标节点的节点组,进而由节点组中的目标节点参与共识选举得到共识选举结果,目标节点被选举为共识节点或非共识节点,基于此,由被选举出的共识节点执行异步共识算法,并将得到的共识区块进行输出,而剩下的非共识节点接收共识节点输出的共识区块即可。可见,本申请中通过对区块链中的节点进行分组,按照分组选举出部分节点作为共识节点进行异步共识,再同步到其他非共识节点,进而通过节点分组减少参与异步共识的节点数量来避免因为区块链节点较多而导致的共识区块输出效率较低的情况,达到提高共识区块的输出效率的目的。
附图说明
[0029]为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0030]图1为本申请实施例一提供的一种数据处理方法的实现流程图;
[0031]图2

图6分别为本申请实施例的示例图;
[0032]图7为本申请实施例一提供的一种数据处理方法的另一流程图;
[0033]图8为本申请实施例二提供的一种数据处理装置的结构示意图;
[0034]图9为本申请实施例三提供的一种电子设备的结构示意图;
[0035]图10为本申请实施例适用于交易区块链时进行异步共识的流程示意图。
具体实施方式
[0036]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0037]参考图1所示,为本申请实施例一提供的一种数据处理方法的实现流程图,该方法可以适用于被配置为区块链节点的电子设备上,如计算机或服务器等。本实施例中的技术方案主要用于避免因为区块链节点较多而导致的共识区块输出效率较低的情况,以提高共识区块的输出效率。
[0038]具体的,本实施例中的方法可以包含如下步骤:
[0039]步骤101:节点组中的目标节点获得共识选举结果。
[0040]其中,共识选举结果表征目标节点是否为共识节点。
[0041]在一种实现方式中,共识选举结果可以包含有结果标识,用以表征目标节点是否为共识节点,具体可以用数值或字符串表示,例如,数字“1”表示目标节点被选举为共识节点,数字“0”表示目标节点被选举为非共识节点。再如,字符串“abc”表示目标节点被选举为共识节点,字符串“xyz”表示目标节点被选举为非共识节点。
[0042]需要说明的是,目标节点所在的节点组中可以包含有多个目标节点,而且,节点组为区块链中本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,所述方法包括:节点组中的目标节点获得共识选举结果,所述共识选举结果表征所述目标节点是否为共识节点;所述节点组中包含多个所述目标节点,且所述节点组为多个;所述节点组为区块链中的控制节点对节点集合中的节点进行划分所得到的组;在所述共识选举结果表征所述目标节点为共识节点的情况下,所述目标节点执行异步共识算法,以得到共识区块并将所述共识区块进行输出;在所述共识选举结果表征所述目标节点为非共识节点的情况下,所述目标节点接收所述共识节点输出的共识区块。2.根据权利要求1所述的方法,节点组中的目标节点获得共识选举结果,包括:节点组中的目标节点执行可验证随机函数,得到共识选举结果。3.根据权利要求2所述的方法,在所述目标节点执行异步共识算法,以得到共识区块之后,所述方法还包括:所述目标节点利用所述可验证随机函数为所述共识区块生成随机数和证明信息,并将所述随机数和所述证明信息存储到所述共识区块中。4.根据权利要求3所述的方法,所述随机数和所述证明信息由所述目标节点使用私钥进行加密得到,所述私钥由所述目标节点执行所述可验证随机函数得到。5.根据权利要求4所述的方法,在所述目标节点接收所述共识节点输出的共识区块之后,所述方法还包括:所述目标节点使用公钥对所述共识区块中的随机数和证明信息进行验证,以得到验证结果;所述公钥与所述私钥相对应,且所述公钥由所述目标节点执行所述可验证随机函数得到;在所述验证结果表征验证通过的情况下,所述目标节点存储所述共识区块。6.根据权利要求5所述的方法,在所述目标节点...

【专利技术属性】
技术研发人员:金辉
申请(专利权)人:联想北京有限公司
类型:发明
国别省市:

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

1