联盟链出块方法、装置、电子设备及介质制造方法及图纸

技术编号:33200944 阅读:16 留言:0更新日期:2022-04-24 00:37
本申请实施例提供一种联盟链出块方法、装置、电子设备及介质。在本申请实施例中,任一联盟链节点在当前出块周期内未接收到交易数据,则在当前出块周期到达时,生成空区块,并将所述空区块广播至所述联盟链网络中,以在联盟链网络验证所生成的空区块有效的情况下,将空区块加入至联盟链上。在空区块加入至联盟链上后,对联盟链上最后一个非空区块后面连续出现的空区块的数量进行统计。若联盟链上最后一个非空区块后面连续出现的空区块的数量较多,且在下一个出块周期内未收到交易数据的情况下,则在下一个出块周期到达时禁止生成新的空区块。由此,减少生成大量的空区块对算力的浪费,节约存储空间,实现了高效安全地控制联盟链上的空区块的数量。的空区块的数量。的空区块的数量。

【技术实现步骤摘要】
联盟链出块方法、装置、电子设备及介质


[0001]本申请涉及区块链
,尤其涉及一种联盟链出块方法、装置、电子设备及介质。

技术介绍

[0002]区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。
[0003]目前,基于区块链的安全特性,联盟链的形式在各个企业和组织中的应用越来越广泛。在联盟链中为了提高交易执行的效率及吞吐量,通常会降低区块链的出块周期,出块周期例如为1秒,也即每隔1秒出一个区块。但是,在实际场景中,联盟链中的交易量并不是特别大,或者交易时间比较固定,因此会导致产生大量的空区块,而产生大量空区块不仅会浪费算力,也会浪费大量的存储空间。

技术实现思路

[0004]本申请的多个方面提供一种联盟链出块方法、装置、电子设备及介质,用以减少生成大量的空区块对算力的浪费,节约存储空间。
[0005]本申请实施例提供一种联盟链出块方法,应用于联盟链网络中的第一联盟链节点,该方法包括:若第一联盟链节点在当前出块周期内未接收到交易数据,则在当前出块周期到达时,生成空区块,并将空区块广播至联盟链网络中,以供联盟链网络中的各联盟链节点验证空区块的有效性并在空区块有效时将空区块加入至联盟链中;在空区块被加入至联盟链的情况下,获取联盟链上最后一个非空区块后面连续出现的空区块的数量,作为第一数量;若第一数量等于预设数量阈值,且在下一个出块周期内未收到交易数据,则在下一个出块周期到达时禁止生成新的空区块。
[0006]本申请实施例还提供一种联盟链出块装置,包括:处理模块,用于若第一联盟链节点在当前出块周期内未接收到交易数据,则在当前出块周期到达时,生成空区块,并将空区块广播至联盟链网络中,以供联盟链网络中的各联盟链节点验证空区块的有效性并在空区块有效时将空区块加入至联盟链中;获取模块,用于在空区块被加入至联盟链的情况下,获取联盟链上最后一个非空区块后面连续出现的空区块的数量,作为第一数量;处理模块,还用于若第一数量等于预设数量阈值,且在下一个出块周期内未收到交易数据,则在下一个出块周期到达时禁止生成新的空区块。
[0007]本申请实施例还提供一种电子设备,包括:存储器和处理器;存储器,用于存储计算机程序;处理器耦合至存储器,用于执行计算机程序以用于执行联盟链出块方法。
[0008]本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,当计算机程序被处理器执行时,致使处理器实现联盟链出块方法。
[0009]在本申请实施例中,任一联盟链节点在当前出块周期内未接收到交易数据,则在
当前出块周期到达时,生成空区块,并将空区块广播至联盟链网络中,以在联盟链网络验证所生成的空区块有效的情况下,将空区块加入至联盟链上。在空区块加入至联盟链上后,对联盟链上最后一个非空区块后面连续出现的空区块的数量进行统计。若联盟链上最后一个非空区块后面连续出现的空区块的数量较多,且在下一个出块周期内未收到交易数据的情况下,则在下一个出块周期到达时禁止生成新的空区块。由此,既在联盟链上生成空区块,以保证联盟链的安全性,又对联盟链上连续出现的空区块的数量进行限制,限制空区块高频生成,进而减少生成大量的空区块对算力的浪费,节约存储空间,实现了高效安全地控制联盟链上的空区块的数量。
附图说明
[0010]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0011]图1为本申请一示例性实施例提供的一种联盟链网络的架构图;
[0012]图2为本申请一示例性实施例提供的一种联盟链出块方法的流程示意图;
[0013]图3为本申请一示例性实施例提供的联盟链出块方法所适用的一种应用场景图;
[0014]图4为本申请一示例性实施例提供的联盟链出块方法所适用的另一种应用场景图;
[0015]图5为本申请一示例性实施例提供的一种联盟链出块装置的结构示意图;
[0016]图6为本申请一示例性实施例提供的一种电子设备的结构示意图。
具体实施方式
[0017]为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0018]目前,联盟链中的交易量并不是特别大,或者交易时间比较固定,因此会导致产生大量的空区块,而产生大量空区块不仅会浪费算力,也会浪费大量的存储空间。针对上述技术问题,本申请实施例提供一种联盟链出块方法、装置、电子设备及介质,在本申请实施例中,任一联盟链节点在当前出块周期内未接收到交易数据,则在当前出块周期到达时,生成空区块,并将空区块广播至联盟链网络中,以在联盟链网络验证所生成的空区块有效的情况下,将空区块加入至联盟链上。在空区块加入至联盟链上后,对联盟链上最后一个非空区块后面连续出现的空区块的数量进行统计。若联盟链上最后一个非空区块后面连续出现的空区块的数量较多,且在下一个出块周期内未收到交易数据的情况下,则在下一个出块周期到达时禁止生成新的空区块。由此,既在联盟链上生成空区块,以保证联盟链的安全性,又对联盟链上连续出现的空区块的数量进行限制,限制空区块高频生成,进而减少生成大量的空区块对算力的浪费,节约存储空间,实现了高效安全地控制联盟链上的空区块的数量。
[0019]图1为本申请一示例性实施例提供的一种联盟链网络的架构图。如图1所示,该联盟链网络可以包括多个联盟链节点10,各联盟链节点10共同形成联盟链网络。其中,联盟链
节点10可以是终端设备20或服务器,各联盟链节点10在联盟链网络中的地位对等,各联盟链节点10共同维护一条联盟链30。
[0020]在实际应用中,联盟用户40可以通过终端设备20向联盟链网络中的联盟链节点10发起交易请求,提交交易数据,该联盟链节点10对交易数据进行相应的数据处理,比如请求其他联盟链节点10对交易数据进行共识处理、生成区块、上链存储等等。
[0021]其中,联盟用户40包括但不限于共同参与管理联盟链30的机构用户、企业用户或者个人用户等。
[0022]其中,终端设备可以是硬件也可以是软件。当终端设备为硬件时,终端设备例如为手机、平板电脑、台式计算机、可穿戴式智能设备、智能家居设备等。当终端设备为软件时,其可以安装在上述列举的硬件设备中,此时,终端设备例如为多个软件模块或单个软件模块等,本申请实施例并不限制。服务器可以是硬件也可以是软件。当服务器为硬件时,该服务器为单个服务器或多个服务器组成的分布式服务器集群。当服务器为软件时,可以为多个软件模块或单个软件模块等,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种联盟链出块方法,其特征在于,应用于联盟链网络中的第一联盟链节点,所述方法包括:若第一联盟链节点在当前出块周期内未接收到交易数据,则在当前出块周期到达时,生成空区块,并将所述空区块广播至所述联盟链网络中,以供所述联盟链网络中的各联盟链节点验证所述空区块的有效性并在所述空区块有效时将所述空区块加入至联盟链中;在所述空区块被加入至所述联盟链的情况下,获取所述联盟链上最后一个非空区块后面连续出现的空区块的数量,作为第一数量;若所述第一数量等于预设数量阈值,且在下一个出块周期内未收到交易数据,则在下一个出块周期到达时禁止生成新的空区块。2.根据权利要求1所述的方法,其特征在于,在当前出块周期到达时,生成空区块,包括:判断当前时间是否处于预设的交易时间段;若是,在当前出块周期到达时,生成空区块。3.根据权利要求1所述的方法,其特征在于,在当前出块周期到达时,生成空区块,包括:在所述出块周期到达时,所述第一联盟链节点判断自身当前算力是否大于或等于预设算力值;若是,则生成空区块。4.根据权利要求1所述的方法,其特征在于,在当前出块周期到达时,生成空区块,包括:在当前出块周期到达时,确定所述联盟链网络中当前算力不小于预设算力值的联盟链节点及其数量,作为第二数量;若所述第二数量大于或等于指定数量,则从当前算力大于或等于所述预设算力值的联盟链节点中选择所述指定数量个联盟链节点,并向所述指定数量个联盟链节点发送第一通知,以通知所述指定数量个联盟链节点生成空区块。5.根据权利要求4所述的方法,其特征在于,还包括:若所述第二数量小于指定数量,则将所述指定数量减去所述第二数量,得到第三数量,从当前算力小于所述预设算力值的联盟链节点中选择所述第三数量个联盟链节点;向所述第二数量个联盟链节点联盟链节点和所述第三数量个联盟链节点发送第二通知,以通知所述第二数量个联盟链节点和所述第三数量个联盟链节点生成空区块。6.根据权利要求5所述的方法,其特征在于,在当前出块周期到达时,生成空区块,包括:接收所述联盟链网络中的第二联盟链节点发送的第一通知或第二通知,并根据所述第一通知或第二通知,生成空区块;其中,所述第一通知是所述第二联盟链节点在识别到所述联盟链网络中当前算力不小于预设算力值的联盟链节点的数量大于或等于指定数量的情况下发送的,所述第二通知是所述第二联盟链节...

【专利技术属性】
技术研发人员:陈敏
申请(专利权)人:达闼科技北京有限公司
类型:发明
国别省市:

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

1