CN111461885B - 共识网络管理方法、装置、计算机以及可读存储介质 - Google Patents
共识网络管理方法、装置、计算机以及可读存储介质 Download PDFInfo
- Publication number
- CN111461885B CN111461885B CN202010245792.4A CN202010245792A CN111461885B CN 111461885 B CN111461885 B CN 111461885B CN 202010245792 A CN202010245792 A CN 202010245792A CN 111461885 B CN111461885 B CN 111461885B
- Authority
- CN
- China
- Prior art keywords
- consensus
- target
- configuration
- block
- configuration information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000007726 management method Methods 0.000 title abstract description 54
- 238000000034 method Methods 0.000 claims abstract description 56
- 238000013507 mapping Methods 0.000 claims abstract description 48
- 238000012795 verification Methods 0.000 claims abstract description 15
- 230000006870 function Effects 0.000 claims description 47
- 238000004590 computer program Methods 0.000 claims description 11
- 230000002159 abnormal effect Effects 0.000 claims description 10
- 230000003993 interaction Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 24
- 230000008569 process Effects 0.000 description 12
- 238000007792 addition Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 5
- 230000001960 triggered effect Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了一种共识网络管理方法、装置、计算机及可读存储介质,包括:当区块链网络信息满足共识委员会更新条件时,生成包含合约调用函数的合约调用区块;根据合约调用区块中的合约调用函数调用智能合约,智能合约包括配置标识与共识配置信息之间的映射关系,配置标识用于表征对应的共识配置信息的记录时间;触发智能合约获取目标配置标识对应的目标共识配置信息,目标配置标识是指智能合约中的配置标识中表征为最大记录时间的配置标识,目标共识配置信息包括至少两个目标节点;当合约调用区块通过共识验证时,智能合约根据目标共识配置信息,将共识委员会更新为至少两个目标节点。采用本申请,可以降低共识委员会的管理成本。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种共识网络管理方法、装置、计算机以及可读存储介质。
背景技术
随着区块链技术的日益成熟,加上区块链的去中心化等的特性,使得区块链的应用日益广泛,因此,对于区块链的管理也就成为及其重要的事。具体的,在区块链中,将一个交易区块进行上链时,该交易区块必须经过区块链网络中的共识节点进行共识,在共识通过后才能将该交易区块添加到区块链上,这些共识节点组成了共识委员会。其中,共识委员会在任期内,可以对接收到的交易区块进行共识。其中,当共识委员会发生变更时,需要对共识委员会对应的共识配置信息进行更新,由于共识委员会中各个共识节点的共识配置信息都配置在区块链的系统底层架构中,所以当更新共识委员会时,就需要对区块链的系统底层架构进行调整,导致整个更新过程比较缓慢且成本较高。
发明内容
本申请实施例提供了一种共识网络管理方法、装置、计算机以及可读存储介质,可以在对区块链中的共识委员会进行更新时,提高效率并降低成本。
本申请实施例一方面提供了一种共识网络管理方法,包括:
当区块链网络信息满足共识委员会更新条件时,生成包含合约调用函数的合约调用区块;
根据上述合约调用区块中的上述合约调用函数调用智能合约,上述智能合约包括配置标识与共识配置信息之间的映射关系,上述配置标识用于表征对应的共识配置信息的记录时间;
触发上述智能合约获取目标配置标识对应的目标共识配置信息;上述目标配置标识是指上述智能合约中的配置标识中表征为最大记录时间的配置标识,上述目标共识配置信息包括至少两个目标节点;
当上述合约调用区块通过共识验证时,上述智能合约根据上述目标共识配置信息,将共识委员会更新为上述至少两个目标节点。
其中,上述方法还包括:
获取上述区块链网络信息;上述区块链网络信息包括上述区块链中的最大区块高度及委员会管理列表,上述委员会管理列表包括上述共识委员会管理的区块高度范围;
当上述最大区块高度大于上述区块高度范围中的最大管理区块高度时,确定上述区块链网络信息满足上述共识委员会更新条件。
其中,上述方法还包括:
获取上述区块链网络信息;上述区块链网络信息包括第一网络节点发送的共识网络添加请求;
根据上述共识网络添加请求对上述第一网络节点进行共识,若共识通过,则根据上述第一网络节点生成上述目标共识配置信息;
生成上述目标共识配置信息对应的上述目标配置标识,将上述目标共识配置信息及上述目标配置标识之间的映射关系添加至上述智能合约,确定上述区块链网络信息满足上述共识委员会更新条件。
其中,上述方法还包括:
获取候选共识节点集合及共识选举算法,上述候选共识节点集合包括至少两个候选共识节点;
根据上述共识选举算法从上述至少两个候选共识节点中选取上述至少两个目标节点,将上述至少两个目标节点添加至上述目标共识配置信息中;
生成上述目标共识配置信息对应的上述目标配置标识,将上述目标配置标识及上述目标共识配置信息添加至上述智能合约中。
其中,上述智能合约根据上述目标共识配置信息,将共识委员会更新为上述至少两个目标节点,包括:
上述智能合约根据上述目标共识配置信息,获取上述至少两个目标节点的节点身份信息,根据上述节点身份信息更新共识信息池;
根据上述共识信息池将上述共识委员会更新为上述至少两个目标节点;上述共识信息池用于建立上述至少两个目标节点之间的网络连接关系。
其中,上述智能合约根据上述目标共识配置信息,将共识委员会更新为上述至少两个目标节点,包括:
获取交易数据,根据上述目标共识配置信息与上述交易数据生成第一交易区块,将上述第一交易区块广播给剩余共识节点,以使上述剩余共识节点接收到上述第一交易区块后,触发上述智能合约开通上述剩余共识节点的共识权限,具备上述共识权限的剩余共识节点具备对上述第一交易区块进行共识的能力;上述剩余共识节点包括上述至少两个目标节点中除了本地节点之外的节点。
其中,上述智能合约根据上述目标共识配置信息,将共识委员会更新为上述至少两个目标节点,包括:
获取更新后的共识出块节点发送的第二交易区块,上述第二交易区块包括交易数据及上述目标共识配置信息;上述至少两个目标节点包括上述更新后的共识出块节点;
获取上述目标共识配置信息中的上述至少两个目标节点;
若上述至少两个目标节点包括本地节点,则触发上述智能合约将上述共识委员会更新为上述至少两个目标节点,将上述本地节点的共识标志位更新为可共识标志,根据上述可共识标志对上述第二交易区块进行共识。
其中,上述触发上述智能合约获取目标配置标识对应的目标共识配置信息,包括:
触发上述智能合约获取上述智能合约中的配置变量,上述配置变量的值始终保持为上述智能合约中的配置标识中表征为最大记录时间的配置标识;上述配置变量为上述目标配置标识;
上述智能合约根据上述配置变量,获取上述目标配置标识对应的上述目标共识配置信息。
其中,上述方法还包括:
获取上述至少两个目标节点,根据上述至少两个目标节点生成上述目标共识配置信息,生成上述目标共识配置信息的上述目标配置标识,上述至少两个目标节点为组成下一任共识委员会的节点;
根据上述目标共识配置信息及上述目标配置标识生成配置区块,若对上述配置区块共识通过,则将上述配置区块上传到上述区块链中;
根据已共识通过的上述配置区块,将上述目标共识配置信息及上述目标配置标识添加至上述智能合约,将上述智能合约中的上述配置变量的值更新为上述目标配置标识。
其中,上述目标共识配置信息还包括出块节点的选取算法;上述方法还包括:
获取上述智能合约中的上述目标共识配置信息,根据上述目标共识配置信息中的上述出块节点的选取算法,从上述至少两个目标节点中选取区块生成节点;
获取第三交易区块及生成上述第三交易区块的第二网络节点;
若上述第二网络节点为上述区块生成节点,则确定上述第二网络节点为合法节点;
若上述第二网络节点不是上述区块生成节点,则确定上述第二网络节点为异常节点,向上述第二网络节点发送节点异常消息。
其中,上述方法还包括:
在对第四交易区块进行共识时,获取第五交易区块,缓存上述第五交易区块,上述第五交易区块的区块高度大于上述第四交易区块的区块高度;
当对上述第四交易区块共识通过,则将上述第四交易区块上传至上述区块链中,对上述第五交易区块进行共识;
当对上述第四交易区块共识不通过,则获取生成上述第五交易区块的第三网络节点,向上述第三网络节点发送第四交易区块异常消息。
本申请实施例一方面提供了一种共识网络管理装置,上述装置包括:
合约获取模块,用于当区块链网络信息满足共识委员会更新条件时,生成包含合约调用函数的合约调用区块;
上述合约获取模块,还用于根据上述合约调用区块中的上述合约调用函数调用智能合约,上述智能合约包括配置标识与共识配置信息之间的映射关系,上述配置标识用于表征对应的共识配置信息的记录时间;
信息获取模块,用于触发上述智能合约获取目标配置标识对应的目标共识配置信息;上述目标配置标识是指上述智能合约中的配置标识中表征为最大记录时间的配置标识,上述目标共识配置信息包括至少两个目标节点;
共识更新模块,用于当上述合约调用区块通过共识验证时,上述智能合约根据上述目标共识配置信息,将共识委员会更新为上述至少两个目标节点。
其中,上述装置还包括:
网络获取模块,用于获取上述区块链网络信息;上述区块链网络信息包括上述区块链中的最大区块高度及委员会管理列表,上述委员会管理列表包括上述共识委员会管理的区块高度范围;
条件确定模块,用于当上述最大区块高度大于上述区块高度范围中的最大管理区块高度时,确定上述区块链网络信息满足上述共识委员会更新条件。
其中,上述装置还包括:
上述网络获取模块,还用于获取上述区块链网络信息;上述区块链网络信息包括第一网络节点发送的共识网络添加请求;
信息生成模块,用于根据上述共识网络添加请求对上述第一网络节点进行共识,若共识通过,则根据上述第一网络节点生成上述目标共识配置信息;
上述条件确定模块,还用于生成上述目标共识配置信息对应的上述目标配置标识,将上述目标共识配置信息及上述目标配置标识之间的映射关系添加至上述智能合约,确定上述区块链网络信息满足上述共识委员会更新条件。
其中,上述装置还包括:
候选获取模块,用于获取候选共识节点集合及共识选举算法,上述候选共识节点集合包括至少两个候选共识节点;
节点选取模块,用于根据上述共识选举算法从上述至少两个候选共识节点中选取上述至少两个目标节点,将上述至少两个目标节点添加至上述目标共识配置信息中;
信息添加模块,用于生成上述目标共识配置信息对应的上述目标配置标识,将上述目标配置标识及上述目标共识配置信息添加至上述智能合约中。
其中,上述共识更新模块,包括:
身份获取单元,用于上述智能合约根据上述目标共识配置信息,获取上述至少两个目标节点的节点身份信息,根据上述节点身份信息更新共识信息池;
网络更新单元,用于根据上述共识信息池将上述共识委员会更新为上述至少两个目标节点;上述共识信息池用于建立上述至少两个目标节点之间的网络连接关系。
其中,上述共识更新模块,还包括:
区块处理单元,用于获取交易数据,根据上述目标共识配置信息与上述交易数据生成第一交易区块,将上述第一交易区块广播给剩余共识节点,以使上述剩余共识节点接收到上述第一交易区块后,触发上述智能合约开通上述剩余共识节点的共识权限,具备上述共识权限的剩余共识节点具备对上述第一交易区块进行共识的能力;上述剩余共识节点包括上述至少两个目标节点中除了本地节点之外的节点。
其中,上述共识更新模块,还包括:
区块获取单元,用于获取更新后的共识出块节点发送的第二交易区块,上述第二交易区块包括交易数据及上述目标共识配置信息;上述至少两个目标节点包括上述更新后的共识出块节点;
节点获取单元,用于获取上述目标共识配置信息中的上述至少两个目标节点;
标志更新单元,用于若上述至少两个目标节点包括本地节点,则触发上述智能合约将上述共识委员会更新为上述至少两个目标节点,将上述本地节点的共识标志位更新为可共识标志,根据上述可共识标志对上述第二交易区块进行共识。
其中,上述信息获取模块,包括:
变量获取单元,用于触发上述智能合约获取上述智能合约中的配置变量,上述配置变量的值始终保持为上述智能合约中的配置标识中表征为最大记录时间的配置标识;上述配置变量为上述目标配置标识;
信息获取单元,用于上述智能合约根据上述配置变量,获取上述目标配置标识对应的上述目标共识配置信息。
其中,上述装置还包括:
配置生成模块,用于获取上述至少两个目标节点,根据上述至少两个目标节点生成上述目标共识配置信息,生成上述目标共识配置信息的上述目标配置标识,上述至少两个目标节点为组成下一任共识委员会的节点;
配置上链模块,用于根据上述目标共识配置信息及上述目标配置标识生成配置区块,若对上述配置区块共识通过,则将上述配置区块上传到上述区块链中;
合约更新模块,用于根据已共识通过的上述配置区块,将上述目标共识配置信息及上述目标配置标识添加至上述智能合约,将上述智能合约中的上述配置变量的值更新为上述目标配置标识。
其中,上述目标共识配置信息还包括出块节点的选取算法;上述装置还包括:
出块选取模块,用于获取上述智能合约中的上述目标共识配置信息,根据上述目标共识配置信息中的上述出块节点的选取算法,从上述至少两个目标节点中选取区块生成节点;
出块获取模块,用于获取第三交易区块及生成上述第三交易区块的第二网络节点;
合法确定模块,用于若上述第二网络节点为上述区块生成节点,则确定上述第二网络节点为合法节点;
上述合法确定模块,还用于若上述第二网络节点不是上述区块生成节点,则确定上述第二网络节点为异常节点,向上述第二网络节点发送节点异常消息。
其中,上述装置还包括:
区块缓存模块,用于在对第四交易区块进行共识时,获取第五交易区块,缓存上述第五交易区块,上述第五交易区块的区块高度大于上述第四交易区块的区块高度;
区块共识模块,用于当对上述第四交易区块共识通过,则将上述第四交易区块上传至上述区块链中,对上述第五交易区块进行共识;
上述区块共识模块,还用于当对上述第四交易区块共识不通过,则获取生成上述第五交易区块的第三网络节点,向上述第三网络节点发送第四交易区块异常消息。
本申请实施例一方面提供了一种计算机设备,包括处理器、存储器、输入输出接口;
上述处理器分别与上述存储器和上述输入输出接口相连,其中,上述输入输出接口用于区块链中各个节点的数据交互,上述存储器用于存储程序代码,上述处理器用于调用上述程序代码,以执行如本申请实施例一方面中实现的共识网络管理方法。
本申请实施例一方面提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序包括程序指令,上述程序指令当被处理器执行时,执行如本申请实施例一方面中实现的共识网络管理方法。
实施本申请实施例,将具有如下有益效果:
本申请实施例通过当区块链网络信息满足共识委员会更新条件时,计算机设备生成包含合约调用函数的合约调用区块;根据合约调用区块中的合约调用函数调用智能合约,上述智能合约包括配置标识与共识配置信息之间的映射关系,上述配置标识用于表征对应的共识配置信息的记录时间;触发上述智能合约获取目标配置标识对应的目标共识配置信息,上述目标配置标识是指上述智能合约中的配置标识中表征为最大记录时间的配置标识,上述目标共识配置信息包括至少两个目标节点;当合约调用区块通过共识验证时,上述智能合约根据上述目标共识配置信息,将共识委员会更新为上述至少两个目标节点。本申请实施例通过在对共识委员会进行更新时,在无需对区块链的系统底层架构进行调整的情况下,可以基于智能合约调用目标共识配置信息,根据目标共识配置信息更新共识委员会,即可以在区块链的上层应用中实现对共识委员会的更新,从而减少了对共识委员会进行更新时所耗费的时间和资源,从而提高了共识委员会的更新效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种共识网络管理架构图;
图2是本申请实施例提供的一种共识网络管理场景示意图;
图3是本申请实施例提供的一种共识网络管理方法流程图;
图4是本申请实施例提供的一种共识网络管理具体流程示意图;
图5是本申请实施例提供的一种共识委员会更新判断场景示意图;
图6是本申请实施例提供的另一种共识委员会更新判断场景示意图;
图7是本申请实施例提供的一种基于候选共识节点管理共识委员会的场景示意图;
图8是本申请实施例提供的一种智能合约更新场景示意图;
图9是本申请实施例提供的一种共识权限更新场景示意图;
图10是本申请实施例提供的一种共识网络管理装置示意图;
图11是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
其中,对本申请实施例中所提及的部分名词进行介绍。
1、区块链:狭义上,区块链是一种以区块为基本单位的链式数据结构,区块中利用数字摘要对之前的交易历史进行校验,适合分布式记账场景下防篡改和可扩展性的需求;广义上,区块链还指代区块链结构实现的分布式记账技术,包括分布式共识、隐私与安全保护、点对点通信技术、网络协议、智能合约等。区块链的目标是实现一个分布的数据记录账本,此账本只允许添加,不允许删除。账本底层的基本结构是一个线性的链表。链表由一个个“区块”串联组成,后继区块中记录前继区块的哈希(Hash)值,每个区块(以及区块中的交易)是否合法,可通过计算哈希值的方式进行快速检验。若网络中节点提议添加一个新的区块,必须经过共识机制对区块达成确认。
2、区块(Block):记录一段时间内发生的所有交易和状态结果等,是对当前账本状态的一次共识。具体的,对于区块链来说,每次写入数据,即上述的交易过程,就是创建一个区块。
3、共识委员会:为管理共识节点的一个委员会,该共识委员会包括具备共识权限的共识节点,该共识委员会的成员组成了共识网络。
4、智能合约:是一种旨在以信息化方式传播、验证或执行合同的计算机协议。可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易,例如获取区块链网络信息,当区块链网络信息满足共识委员会更新条件时,基于智能合约更新共识委员会;当然,智能合约不仅限于执行用于交易的合约,还可以执行对接收的信息进行处理的合约。
请参见图1,图1是本申请实施例提供的一种共识网络管理架构图,如图1所示,当区块链网络信息满足共识委员会更新条件时,本地节点101调用智能合约102,基于该智能合约102获取目标配置标识对应的目标共识配置信息,根据目标共识配置信息更新共识委员会,换句话说,根据目标共识配置信息更新共识委员会的成员,其中,假定更新后的共识委员会的成员包括节点103a、节点103b及节点103c,使得更新后的共识委员会的成员具备共识权限。其中,在共识委员会更新后,更新后的共识委员会包括的节点103a、节点103b及节点103c,可以对接收到的区块进行共识。其中,上述共识委员会更新条件可以是达到切换区块高度,该切换区块高度用于表征对共识委员会进行切换时的区块高度,此时的区块链网络信息包括区块链的最大区块高度及委员会管理列表,该委员会管理列表包括共识委员会管理的区块高度范围;该共识委员会更新条件还可以是接收到网络节点发送的共识网络添加请求,该共识网络添加请求表示共识委员会发生变化,此时的区块链网络信息包括第一网络节点发送的共识网络添加请求。其中,该目标共识配置信息为智能合约102中记录时间最大的一个共识配置信息。
可以理解的是,本申请实施例提供的方法可以由计算机设备执行,即本地节点101可以为计算机设备,组成共识委员会的成员可以是计算机设备,计算机设备包括但不限于终端设备或服务器。本申请实施例中进行共识网络管理的执行主体可以为计算机设备,该执行主体可以是当前共识委员会中的任意一个节点。其中,计算机设备可以是服务器或终端设备,也可以是服务器和终端设备组成的系统,其中,上述所提及的终端设备可以是一种电子设备,包括但不限于手机、平板电脑、台式电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备(例如智能手表、智能手环等)等。
进一步地,请参见图2,图2是本申请实施例提供的一种共识网络管理场景示意图。如图2所示,本地节点获取区块链网络信息201,通过共识委员会更新条件202对该区块链网络信息201进行验证,当区块链网络信息201满足共识委员会更新条件202时,确定要对共识委员会进行更新,生成包含合约调用函数的合约调用区块,根据合约调用区块中的合约调用函数调用智能合约203,该智能合约203包括配置标识与共识配置信息之间的映射关系204,其中,配置标识与共识配置信息间为一一映射,该智能合约203中的映射关系204可以包括一组或至少两组配置标识与共识配置信息间的映射,且该映射关系204中包括的各组配置标识与共识配置信息间的映射是基于记录时间依次存储至智能合约203中,换句话说,配置标识用于表征对应的共识配置信息的记录时间。从智能合约203中获取目标配置标识205,触发智能合约203根据目标配置标识205,从映射关系204中获取目标配置标识205对应的目标共识配置信息206,该目标配置标识205为智能合约203中的表征为最大记录时间的配置标识(因此,目标共识配置信息206为智能合约203中最新的共识配置信息),该目标共识配置信息206包括至少两个目标节点。当合约调用区块通过共识验证时,本地节点基于智能合约203调用目标共识配置信息206,以根据目标共识配置信息206更新共识委员会,将目标共识配置信息206中所指示的节点组成更新后的共识委员会207,换句话说,本地节点基于智能合约203将共识委员会更新为至少两个目标节点,得到更新后的共识委员会207。
本申请实施例通过智能合约管理共识委员会的更新,在对共识委员会更新前先生成共识配置信息,基于智能合约调用共识配置信息,以更新共识委员会,从而在无需对区块链中的系统底层架构进行调整的情况下,即可通过智能合约实现对共识委员会的更新,减少了共识委员会中的成员发生变化时,对共识委员会进行更新所耗费的时间和资源,进而提高了共识委员会的更新效率。
进一步地,请参见图3,图3是本申请实施例提供的一种共识网络管理方法流程图。如图3所示,以上述计算机设备为执行主体进行描述,该计算机设备在本申请实施例中指本地节点,该共识网络管理过程包括如下步骤:
步骤S301,当区块链网络信息满足共识委员会更新条件时,生成包含合约调用函数的合约调用区块。
具体的,计算机设备获取区块链网络信息及共识委员会更新条件,将区块链网络信息与共识委员会更新条件进行对比,若区块链网络信息满足共识委员会更新条件,则生成包含合约调用函数的合约调用区块。具体的,该合约调用函数是智能合约中包含的函数,该智能合约适用于本申请中的共识网络管理过程。其中,当创建该智能合约时,会在该智能合约中写入合约调用函数,该合约调用函数在被触发时,会执行该合约调用函数中的程序代码。其中,当区块链网络信息满足共识委员会更新条件时,获取该智能合约中的合约调用函数,将该合约调用函数的函数名称打包成合约调用区块,对该合约调用区块进行共识,进一步地,该合约调用区块中还可以包括区块链网络信息及共识委员会更新条件等。其中,上述合约调用函数包括至少一个函数。
其中,该共识委员会更新条件为达到切换区块高度,该切换区块高度用于表征对共识委员会进行切换时的区块高度,在该情况下,获取区块链中的最大区块高度,基于智能合约获取切换区块高度,若该最大区块高度等于该切换区块高度或者与切换区块高度间的差值为指定切换差值,则认为区块链网络信息满足共识委员会更新条件;或者,该区块链网络信息中包括最大区块高度及委员会管理列表,该委员会管理列表为获取最大区块高度时的共识委员会管理的区块高度范围,当最大区块高度大于区块高度范围中的最大管理区块高度时,确定区块链网络信息满足共识委员会更新条件;该共识委员会更新条件还可以是接收到网络节点发送的共识网络添加请求,该共识网络添加请求表示共识委员会发生变化,此时的区块链网络信息包括第一网络节点发送的共识网络添加请求。
步骤S302,根据合约调用区块中的合约调用函数调用智能合约。
具体的,获取该合约调用区块中的合约调用函数的函数名称,获取该函数名称对应的智能合约,获取到该智能合约后,触发该智能合约运行合约调用函数。其中,该智能合约的触发条件为生成合约调用区块,该智能合约包括配置标识与共识配置信息间的映射关系,该配置标识用于表征对应的共识配置信息的记录时间。举例来说,当配置标识为依次递增生成的数值时,该配置标识越大,则表示对应的共识配置信息的记录时间越大。例如,在配置标识为依次递增生成的数值时,当生成第一个共识配置信息,将该第一个共识配置信息的配置标识置为1,当生成第二个共识配置信息时,将第二个共识配置信息的配置标识置为2,…,使得配置标识越大,对应的共识配置信息的记录时间越大,通俗来讲,配置标识越大,对应的共识配置信息的记录时间越晚,例如,第一个共识配置信息的记录时间为2019年5月2日10点30分,对应的配置标识为1,第二个共识配置信息的记录时间为2019年5月2日22点,对应的配置标识为2,等等。
步骤S303,触发智能合约获取目标配置标识对应的目标共识配置信息。
具体的,基于智能合约获取目标配置标识,该目标配置标识是指智能合约中的配置标识中表征为最大记录时间的配置标识。具体的,智能合约中包括的配置标识与共识配置信息间的映射关系包括一组或至少两组映射,每组映射包括共识配置信息与其对应的配置标识,每组映射的记录时间互不相同,每组映射中的配置标识互不相同。其中,计算机设备基于智能合约,从该智能合约中获取表征最大记录时间的配置标识,作为目标配置标识。例如,智能合约中包括的配置标识与共识配置信息间的映射关系包括10组映射,其中,第一组映射包括第一个记录的配置标识与共识配置信息,第二组映射包括第二个记录的配置标识与共识配置信息,…,基于智能合约获取第十组映射中的配置标识,该第十组映射中的配置标识为目标配置标识。
触发智能合约获取目标配置标识对应的目标共识配置信息,目标共识配置信息包括至少两个目标节点,该至少两个目标节点为组成下一任共识委员会的节点。具体的,该智能合约中包括配置标识与共识配置信息间的映射关系,该映射关系包括多组映射,每组映射都表示了对应的配置标识与共识配置信息间的对应关系,基于智能合约获取到目标配置标识后,根据智能合约中的映射关系,获取目标配置标识对应的目标共识配置信息。例如,智能合约中包括的配置标识与共识配置信息间的映射关系包括10组映射,获取到目标配置标识为第十组映射中的配置标识,获取目标配置标识对应的目标共识配置信息为第十组映射中的共识配置信息。
步骤S304,当合约调用区块通过共识验证时,智能合约根据目标共识配置信息,将共识委员会更新为至少两个目标节点。
具体的,当合约调用区块通过共识验证时,智能合约调用目标共识配置信息,根据目标共识配置信息,将共识委员会更新为上述至少两个目标节点。具体的,目标共识配置信息中包括至少两个目标节点,该至少两个目标节点为下一任共识委员会的成员,智能合约根据该至少两个目标节点生成新的共识委员会,使得至少两个目标节点具备对区块的共识权限。其中,一种更新共识委员会的情况下,根据目标共识配置信息重置共识消息池,以实现对共识委员会的更新,该共识消息池用于表示组成对应的共识委员会的节点的节点身份信息,通过目标共识配置信息重置共识消息池,以实现对共识委员会的成员的更新,换句话说,该共识消息池可以表示共识委员会的成员间的网络连接关系。一种更新共识委员会的情况下,根据目标共识配置信息生成交易区块,将交易区块广播至目标共识配置信息所指示的至少两个目标节点,当至少两个目标节点接收到该交易区块,基于该交易区块中的目标共识配置信息,确定自己为共识节点,开通共识权限。
本申请实施例通过上述共识网络管理过程,实现了当区块链网络信息满足共识委员会更新条件时,计算机设备生成包含合约调用函数的合约调用区块,根据合约调用区块调用智能合约,上述智能合约包括配置标识与共识配置信息之间的映射关系,上述配置标识用于表征对应的共识配置信息的记录时间;触发上述智能合约获取目标配置标识对应的目标共识配置信息,上述目标配置标识是指上述智能合约中的配置标识中表征为最大记录时间的配置标识,上述目标共识配置信息包括至少两个目标节点;当合约调用区块通过共识验证时,智能合约调用上述目标共识配置信息,根据上述目标共识配置信息将共识委员会更新为上述至少两个目标节点。本申请实施例在对共识委员会进行更新时,无需对区块链的系统底层架构进行更新,直接通过智能合约调用目标共识配置信息,根据目标共识配置信息更新共识委员会,即可以在区块链的上层应用中实现对共识委员会的更新,从而减少了区块链中共识委员会更新时耗费的时间和资源,提高了共识委员会的更新效率。
进一步地,参见图4,图4是本申请实施例提供的一种共识网络管理具体流程示意图。如图4所示,包括如下步骤:
步骤S401,确定区块链网络信息满足共识委员会更新条件。
具体的,获取区块链网络信息,将获取到的区块链网络信息与共识委员会更新条件进行比对,当区块链网络信息与共识委员会更新条件相匹配,确定区块链网络信息满足共识委员会更新条件。
其中,一种更新共识委员会的情况下,获取区块链网络信息;区块链网络信息包括区块链中的最大区块高度及委员会管理列表,该委员会管理列表包括共识委员会管理的区块高度范围;当最大区块高度大于区块高度范围中的最大管理区块高度时,确定区块链网络信息满足共识委员会更新条件,或者,当最大区块高度等于区块高度范围中的最大管理区块高度时,确定区块链网络信息满足共识委员会更新条件。举例来说,假定当最大区块高度等于区块高度范围中的最大管理区块高度时,确定区块链网络信息满足共识委员会更新条件,获取区块链网络信息包括最大区块高度100,委员会管理列表包括的区块高度范围为1~100,得到该区块高度范围中的最大管理区块高度为100,确定该最大区块高度100等于最大管理区块高度100,确定区块链网络信息满足共识委员会更新条件,以基于智能合约更新共识委员会,在处理区块高度为101的区块时,基于更新后的共识委员会对区块高度为101的区块进行共识。
或者,获取区块链网络信息,该区块链网络信息可以包括区块链中的最大区块高度,该共识委员会更新条件为达到切换区块高度,将最大区块高度与切换区块高度进行对比,当最大区块高度等于该切换区块高度,或者当最大区块高度与切换区块高度间的差值为指定切换差值,则认为区块链网络信息满足共识委员会更新条件。可选的,该切换区块高度可以表示更新共识委员会的周期,获取区块链网络信息中的最大区块高度,获取最大区块高度与切换区块高度间的倍数关系,若该倍数关系为整数,则确定区块链网络信息满足共识委员会更新条件;或者,获取最大区块高度与切换区块高度间的余数,若该余数为指定切换差值,则确定区块链网络信息满足共识委员会更新条件。
举例来说,参见图5,图5是本申请实施例提供的一种共识委员会更新判断场景示意图。如图5所示,从区块链501中获取区块链网络信息502,该区块链网络信息502包括区块链501的最大区块高度503,获取共识委员会更新条件504,获取共识委员会更新条件504中的切换区块高度505,假定切换区块高度505为100,即每一百个区块更新一次共识委员会,获取到最大区块高度503为200,得到最大区块高度503与切换区块高度505间的余数为0,假定指定切换差值为0,则确定区块链网络信息502满足共识委员会更新条件504,基于智能合约更新共识委员会,若最大区块高度503为203,与切换区块高度505间的余数为3,不等于指定切换差值0,则确定区块链网络信息502不满足共识委员会更新条件504。
其中,上述通过最大区块高度判断区块链网络信息是否满足共识委员会更新条件时,也可以是接收到交易区块后,获取该交易区块的区块高度,作为区块链网络信息中的最大区块高度,当基于最大区块高度确定区块链网络信息满足共识委员会更新条件时,更新共识委员会,基于更新后的共识委员会对下一个交易区块进行共识。如,获取到区块高度为100的交易区块,切换区块高度为100,确定区块链网络信息满足共识委员会更新条件,更新后的共识委员会管理从区块高度为101的区块开始的100个区块。
其中,一种更新共识委员会的情况下,获取区块链网络信息;区块链网络信息包括第一网络节点发送的共识网络添加请求或共识网络退出请求;根据共识网络添加请求或共识网络退出请求对第一网络节点进行共识,若共识通过,则根据第一网络节点生成目标共识配置信息;生成目标共识配置信息对应的目标配置标识,将目标共识配置信息及目标配置标识之间的映射关系添加至智能合约,确定区块链网络信息满足共识委员会更新条件,并执行步骤S404,触发智能合约获取目标配置标识对应的目标共识配置信息。可选的,还可以在对第一网络节点共识通过后,确定区块链网络信息满足共识委员会更新条件,将第一网络节点添加至候选共识节点集合中,执行步骤S402。
举例来说,可以参见图6,图6是本申请实施例提供的另一种共识委员会更新判断场景示意图。如图6所示,当接收到第一网络节点601发送的添加到共识委员会602的共识网络添加请求,该共识委员会602的成员对该第一网络节点601进行共识,若共识通过,则根据第一网络节点601及共识委员会602的成员生成目标共识配置信息603,生成该目标共识配置信息603对应的目标配置标识604,将目标配置标识604与目标共识配置信息603间的映射关系添加至智能合约605中,确定区块链网络信息满足共识委员会更新条件,执行步骤S404,触发智能合约605获取目标配置标识对应的目标共识配置信息。
步骤S402,从候选共识节点集合中选取至少两个目标节点。
具体的,计算机设备获取候选共识节点集合及共识选举算法,候选共识节点集合包括至少两个候选共识节点;根据共识选举算法从至少两个候选共识节点中选取至少两个目标节点,将至少两个目标节点添加至目标共识配置信息中;生成目标共识配置信息对应的目标配置标识,将目标配置标识及目标共识配置信息添加至智能合约中。其中,该共识选举算法可以是基于各个候选共识节点的权重进行选取,还可以基于各个候选节点的权重及共识次数,或者各个候选节点的权重及异常次数等进行选取,在此不做限制。举例来说,假定该共识选举算法为基于候选共识节点的权重选取10个共识节点,获取候选共识节点集合中的至少两个候选共识节点,获取每个候选共识节点的权重,将至少两个候选共识节点中权重最大的10个候选共识节点(权重由大到小排列时,处于前十个的权重对应的候选共识节点),作为至少两个目标节点。
举例来说,参见图7,图7是本申请实施例提供的一种基于候选共识节点管理共识委员会的场景示意图。如图7所示,当在步骤S401中,获取到第一网络节点701发送的共识网络添加请求,共识委员会702中的成员对该第一网络节点701共识通过,将第一网络节点701添加至候选共识节点集合703中,可选的,该候选共识节点集合703可以包括第一网络节点701及共识委员会702的成员。根据共识选举算法从候选共识节点集合703中选取至少两个目标节点704,根据至少两个目标节点704生成目标共识配置信息705,生成该目标共识配置信息705的目标配置标识706,将该目标配置标识706与目标共识配置信息705的映射关系添加至智能合约707中,并基于智能合约707更新共识委员会702。其中,生成目标共识配置信息705,并基于目标共识配置信息705更新智能合约707的过程具体参见步骤S403。
步骤S403,根据至少两个目标节点生成目标共识配置信息,并基于目标共识配置信息更新智能合约。
具体的,获取至少两个目标节点,根据至少两个目标节点生成目标共识配置信息,生成目标共识配置信息的目标配置标识,至少两个目标节点为组成下一任共识委员会的节点;根据目标共识配置信息及目标配置标识生成配置区块,若对配置区块共识通过,则将配置区块上传到区块链中;根据已共识通过的配置区块,将目标共识配置信息及目标配置标识添加至智能合约,将智能合约中的配置变量的值更新为目标配置标识。
具体的,可以参见图8,图8是本申请实施例提供的一种智能合约更新场景示意图。如图8所示,获取到至少两个目标节点801,根据至少两个目标节点801生成目标共识配置信息802,可选的,该目标共识配置信息802还可以包括委员会管理列表,该委员会管理列表包括该目标共识配置信息802对应的共识委员会管理的区块高度范围,此时,在判断区块链网络信息是否满足共识委员会更新条件时,该区块链网络信息中的委员会管理列表可以是从目标共识配置信息802的前一个共识配置信息中获取的。生成该目标共识配置信息802的目标配置标识803,根据目标共识配置信息802与目标配置标识803生成配置区块804,该配置区块804的交易数据包括目标共识配置信息802及目标配置标识803,对该配置区块804共识通过后,将配置区块804上传至区块链805中,其中,根据各个共识配置信息生成的区块可以上传至单独的配置区块链中,也可以与其他的交易区块上传至同一个区块链中。
将目标共识配置信息802及目标配置标识803添加到智能合约806中,该智能合约806中包括数据侧和代码侧,该数据侧包括记录的目标共识配置信息802及目标配置标识803,该代码侧包括用于共识委员会更新的各个变量,如配置变量、区块高度范围变量及共识节点标识变量等,该配置变量用于指示获取到的共识配置信息的配置标识为表征记录时间最晚的配置标识,区块高度范围变量用于表示对应的共识配置信息所指示的共识委员会管理的区块高度范围,共识节点标识变量用于表示对应的共识配置信息所指示的共识委员会的成员。具体的,将智能合约806中的代码侧的各个变量进行更新,如将配置变量的值由X更新为目标配置标识,该X为目标配置标识的前一个配置标识,将区块高度范围变量的值由区块高度范围1(目标共识配置信息的前一个共识配置信息指示的区块高度范围)更新为区块高度范围2(目标共识配置信息指示的区块高度范围),将共识节点标识变量的值由共识节点标识1(目标共识配置信息的前一个共识配置信息对应的共识委员会的成员)更新为共识节点标识2(目标共识配置信息对应的共识委员会的成员),等等。
举例来说,更新前的共识委员会包括节点A、节点B、节点C及节点D,用于管理区块高度201~300的区块,该更新前的共识委员会对应的配置标识为10,该配置标识10与第10个共识配置信息间存在映射,根据至少两个目标节点生成目标共识配置信息(第11个共识配置信息),生成该目标共识配置信息的目标配置标识11,该至少两个目标节点包括节点A、节点B、节点C及节点E。假定切换区块高度为100,则将配置变量的值由10(X)更新为11(目标配置标识),将区块高度范围变量的值由“201~300”(区块高度范围1)更新为“301~400”(区块高度范围2),将共识节点标识变量的值由“节点A、节点B、节点C及节点D”(共识节点标识1)更新为“节点A、节点B、节点C及节点E”(共识节点标识2),等等。
步骤S404,触发智能合约获取目标配置标识对应的目标共识配置信息。
具体的,生成包含合约调用函数的合约调用区块,根据合约调用区块中的合约调用函数调用智能合约,触发智能合约,获取智能合约中的配置变量,该配置变量的值始终保持为智能合约中的配置标识中表征为最大记录时间的配置标识;该配置变量为目标配置标识。智能合约根据配置变量,获取目标配置标识对应的目标共识配置信息。具体的,获取配置变量的值“目标配置标识”,根据配置变量的值与映射关系,得到该目标配置标识对应的目标共识配置信息,具体可以参见图3中的步骤S303所示的具体描述,在此不再进行赘述。
步骤S405,智能合约根据目标共识配置信息,将共识委员会更新为至少两个目标节点。
具体的,当合约调用区块通过共识验证时,智能合约根据目标共识配置信息,将共识委员会更新为至少两个目标节点,具体可以参见图3中的步骤S304。
具体的,一种共识委员会更新情况下,智能合约根据目标共识配置信息,获取至少两个目标节点的节点身份信息,根据节点身份信息更新共识信息池;根据共识信息池将共识委员会更新为至少两个目标节点;共识信息池用于建立至少两个目标节点之间的网络连接关系。具体的,该共识信息池可以认为是一个共识网络节点统计,通过该共识信息池,确定了更新后的共识委员会的成员组成,即确定了具备共识权限的节点,使得各个节点可以基于共识信息池对接收到的交易区块进行共识或广播,从而实现对共识委员会的切换。
一种共识委员会更新情况下,获取交易数据,根据目标共识配置信息与交易数据生成第一交易区块,将第一交易区块广播给剩余共识节点,以使剩余共识节点接收到第一交易区块后,触发智能合约,开通剩余共识节点的共识权限,具备上述共识权限的剩余共识节点具备对第一交易区块进行共识的能力;剩余共识节点包括至少两个目标节点中除了本地节点之外的节点。其中,参见图9,图9是本申请实施例提供的一种共识权限更新场景示意图。如图9所示,当本地节点901获取到交易数据时,根据获取到的目标共识配置信息902与交易数据生成第一交易区块903,本地节点901获取目标共识配置信息902中的至少两个目标节点904,将至少两个目标节点904中除本地节点901之外的节点记作剩余共识节点,本地节点901将第一交易区块903广播至剩余共识节点,以使剩余共识节点接收到第一交易区块903后,开通共识权限,具备共识权限的剩余共识节点具备对第一交易区块903进行共识的能力。如以剩余共识节点中的一个目标节点9041为例,该目标节点9041接收到第一交易区块903后,根据该第一交易区块903中的目标共识配置信息确定自己为共识节点,开通目标节点9041的共识权限,对第一交易区块903进行共识,在共识通过后,将第一交易区块903上传至区块链905中。
其中,获取更新后的共识出块节点发送的第二交易区块,第二交易区块包括交易数据及目标共识配置信息;至少两个目标节点包括更新后的共识出块节点;获取目标共识配置信息中的至少两个目标节点;若至少两个目标节点包括本地节点,则触发上述智能合约将共识委员会更新为至少两个目标节点,将本地节点的共识标志位更新为可共识标志,根据可共识标志对第二交易区块进行共识。其中,该本地节点获取到第二交易区块后,将共识标志位更新为可共识标志,该可共识标志用于表示对应的第二交易区块具备共识权限。其中,该共识标志位还可以为非共识标志,非共识标志用于表示对应的第二交易区块不具备共识权限。
步骤S406,共识委员会对接收到的交易区块进行共识。
具体的,更新后的共识委员会可以对接收到的交易情况进行共识。可选的,目标共识配置信息还包括出块节点的选取算法;获取智能合约中的目标共识配置信息,根据目标共识配置信息中的出块节点的选取算法,从至少两个目标节点中选取区块生成节点;获取第三交易区块及生成第三交易区块的第二网络节点;若第二网络节点为区块生成节点,则确定第二网络节点为合法节点;若第二网络节点不是区块生成节点,则确定第二网络节点为异常节点,向第二网络节点发送节点异常消息。其中,该出块节点的选取算法可以是随机选取,也可以是基于各个目标节点的权重进行选取,还可以是基于各个目标节点的共识次数进行选取,等等,在此不做限制。
可选的,在对第四交易区块进行共识时,获取第五交易区块,缓存第五交易区块,第五交易区块的区块高度大于第四交易区块的区块高度;当对第四交易区块共识通过,则将第四交易区块上传至区块链中,对第五交易区块进行共识;当对第四交易区块共识不通过,则获取生成第五交易区块的第三网络节点,向第三网络节点发送第四交易区块异常消息。例如,A节点的处理效率高,A节点将针对第四交易区块的共识数据进行统计,确定对该第四交易区块共识通过,将第四交易区块上传至区块链中,此时,A节点获取到交易数据,根据交易数据生成第五交易区块,并将该第五交易区块广播至共识委员会中除A节点以外的节点。假设本地节点为B节点,当B节点接收到A节点发送的第五交易区块时,由于B节点的处理效率较低,正在对第四交易区块进行共识,则将第五交易区块进行缓存,当对第四交易区块共识通过时,将第四交易区块上传至区块链中,当对第四交易区块共识不通过时,向A节点(第三网络节点)发送第四交易区块异常消息。
可选的,当A节点生成第五交易区块时,该第五交易区块满足共识委员会更新条件,由于第四交易区块尚未同步完成,使得A节点广播第五交易区块时,可能是基于管理第四交易区块的共识委员会进行广播的,因此,B节点接收到A节点发送的第五交易区块,当B节点将第四交易区块上传至区块链后,确定该第五交易区块对应的区块链网络信息满足共识委员会更新条件,则B节点获取记录时间最大的更新共识配置信息,基于更新共识配置信息将第五交易区块广播至更新共识配置信息对应的节点。可选的,B节点还可以在更新共识配置信息对应的节点中查找A节点和B节点,若该更新共识配置信息对应的节点中包括A节点和B节点,则B节点对第五交易区块进行共识;若该更新共识配置信息对应的节点中不包括B节点,则B节点将第五交易区块广播至更新共识配置信息对应的节点,并且不对第五交易区块进行共识;若更新共识配置信息对应的节点中不包括A节点,则B节点向A节点发送节点异常消息,以通知A节点不具备区块生成权限,并且不对第五交易区块进行共识。
进一步地,当获取到第一网络节点发送的共识网络添加请求或共识网络退出请求时,可以执行步骤S402至步骤S403。当区块链网络信息满足共识委员会更新条件时(此处的区块链网络信息包括区块链中的最大区块高度及委员会管理列表,即通过区块高度确定区块链网络信息是否满足共识委员会更新条件),生成包含合约调用函数的合约调用区块,根据合约调用区块中的合约调用函数调用智能合约,执行步骤S404至步骤S406。在该情况下,当区块链中的网络节点发生变化时,不立即生效,而是根据变化后的网络节点确定下一任共识委员会的组成成员,根据下一任共识委员会的组成成员生成目标共识配置信息,添加至智能合约中,当基于区块高度确定区块链网络信息满足共识委员会更新条件时,可以直接调用智能合约,从智能合约中获取目标共识配置信息,根据该目标共识配置信息更新共识委员会,其中,生成并记录目标共识配置信息的过程,不影响区块链中的区块共识过程,从而减少了共识委员会更新时所耗费的时间。
本申请实施例通过当区块链网络信息满足共识委员会更新条件时,计算机设备生成包含合约调用函数的合约调用区块,根据合约调用区块中的合约调用函数调用智能合约,上述智能合约包括配置标识与共识配置信息之间的映射关系,上述配置标识用于表征对应的共识配置信息的记录时间;触发智能合约获取目标配置标识对应的目标共识配置信息,上述目标配置标识是指上述智能合约中的配置标识中表征为最大记录时间的配置标识,上述目标共识配置信息包括至少两个目标节点;当合约调用区块通过共识验证时,智能合约根据目标共识配置信息将共识委员会更新为至少两个目标节点。本申请实施例通过在对共识委员会进行更新时,无需对区块链的系统底层架构进行更新,而是直接通过智能合约调用目标共识配置信息,根据目标共识配置信息更新共识委员会,即可以在区块链的上层应用中实现对共识委员会的更新,从而减少了共识节点发生变化时耗费的时间和资源,提高了共识委员会的更新效率。同时,对目标节点的选取,使得共识委员会的成员变动性较高,提高了共识委员会的成员灵活性,进而还可以提高区块链共识的安全可靠性。
进一步地,参见图10,图10是本申请实施例提供的一种共识网络管理装置示意图。上述共识网络管理装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该共识网络管理装置为一个应用软件;该装置可以用于执行本申请实施例提供的方法中的相应步骤。如图10所示,该共识网络管理装置100可以用于上述图3或图4所对应实施例中的计算机设备,具体的,该共识网络管理装置100可以包括:合约获取模块11、信息获取模块12及共识更新模块13。
合约获取模块11,用于当区块链网络信息满足共识委员会更新条件时,生成包含合约调用函数的合约调用区块;
上述合约获取模块11,还用于根据上述合约调用区块中的上述合约调用函数调用智能合约,上述智能合约包括配置标识与共识配置信息之间的映射关系,上述配置标识用于表征对应的共识配置信息的记录时间;
信息获取模块12,用于触发上述智能合约获取目标配置标识对应的目标共识配置信息;上述目标配置标识是指上述智能合约中的配置标识中表征为最大记录时间的配置标识,上述目标共识配置信息包括至少两个目标节点;
共识更新模块13,用于当上述合约调用区块通过共识验证时,上述智能合约根据上述目标共识配置信息,将共识委员会更新为上述至少两个目标节点。
其中,上述装置100还包括:
网络获取模块14,用于获取上述区块链网络信息;上述区块链网络信息包括上述区块链中的最大区块高度及委员会管理列表,上述委员会管理列表包括上述共识委员会管理的区块高度范围;
条件确定模块15,用于当上述最大区块高度大于上述区块高度范围中的最大管理区块高度时,确定上述区块链网络信息满足上述共识委员会更新条件。
其中,上述装置100还包括:
上述网络获取模块14,还用于获取上述区块链网络信息;上述区块链网络信息包括第一网络节点发送的共识网络添加请求;
信息生成模块16,用于根据上述共识网络添加请求对上述第一网络节点进行共识,若共识通过,则根据上述第一网络节点生成上述目标共识配置信息;
上述条件确定模块15,还用于生成上述目标共识配置信息对应的上述目标配置标识,将上述目标共识配置信息及上述目标配置标识之间的映射关系添加至上述智能合约,确定上述区块链网络信息满足上述共识委员会更新条件。
其中,上述装置100还包括:
候选获取模块17,用于获取候选共识节点集合及共识选举算法,上述候选共识节点集合包括至少两个候选共识节点;
节点选取模块18,用于根据上述共识选举算法从上述至少两个候选共识节点中选取上述至少两个目标节点,将上述至少两个目标节点添加至上述目标共识配置信息中;
信息添加模块19,用于生成上述目标共识配置信息对应的上述目标配置标识,将上述目标配置标识及上述目标共识配置信息添加至上述智能合约中。
其中,上述共识更新模块13,包括:
身份获取单元131,用于上述智能合约根据上述目标共识配置信息,获取上述至少两个目标节点的节点身份信息,根据上述节点身份信息更新共识信息池;
网络更新单元132,用于根据上述共识信息池将上述共识委员会更新为上述至少两个目标节点;上述共识信息池用于建立上述至少两个目标节点之间的网络连接关系。
其中,上述共识更新模块13,还包括:
区块处理单元133,用于获取交易数据,根据上述目标共识配置信息与上述交易数据生成第一交易区块,将上述第一交易区块广播给剩余共识节点,以使上述剩余共识节点接收到上述第一交易区块后,触发上述智能合约开通上述剩余共识节点的共识权限,具备上述共识权限的剩余共识节点具备对上述第一交易区块进行共识的能力;上述剩余共识节点包括上述至少两个目标节点中除了本地节点之外的节点。
其中,上述共识更新模块13,还包括:
区块获取单元134,用于获取更新后的共识出块节点发送的第二交易区块,上述第二交易区块包括交易数据及上述目标共识配置信息;上述至少两个目标节点包括上述更新后的共识出块节点;
节点获取单元135,用于获取上述目标共识配置信息中的上述至少两个目标节点;
标志更新单元136,用于若上述至少两个目标节点包括本地节点,则触发上述智能合约将上述共识委员会更新为上述至少两个目标节点,将上述本地节点的共识标志位更新为可共识标志,根据上述可共识标志对上述第二交易区块进行共识。
其中,上述信息获取模块12,包括:
变量获取单元121,用于触发上述智能合约获取上述智能合约中的配置变量,上述配置变量的值始终保持为上述智能合约中的配置标识中表征为最大记录时间的配置标识;上述配置变量为上述目标配置标识;
信息获取单元122,用于上述智能合约根据上述配置变量,获取上述目标配置标识对应的上述目标共识配置信息。
其中,上述装置100还包括:
配置生成模块20,用于获取上述至少两个目标节点,根据上述至少两个目标节点生成上述目标共识配置信息,生成上述目标共识配置信息的上述目标配置标识,上述至少两个目标节点为组成下一任共识委员会的节点;
配置上链模块21,用于根据上述目标共识配置信息及上述目标配置标识生成配置区块,若对上述配置区块共识通过,则将上述配置区块上传到上述区块链中;
合约更新模块22,用于根据已共识通过的上述配置区块,将上述目标共识配置信息及上述目标配置标识添加至上述智能合约,将上述智能合约中的上述配置变量的值更新为上述目标配置标识。
其中,上述目标共识配置信息还包括出块节点的选取算法;上述装置100还包括:
出块选取模块23,用于获取上述智能合约中的上述目标共识配置信息,根据上述目标共识配置信息中的上述出块节点的选取算法,从上述至少两个目标节点中,选取区块生成节点;
出块获取模块24,用于获取第三交易区块及生成上述第三交易区块的第二网络节点;
合法确定模块25,用于若上述第二网络节点为上述区块生成节点,则确定上述第二网络节点为合法节点;
上述合法确定模块25,还用于若上述第二网络节点不是上述区块生成节点,则确定上述第二网络节点为异常节点,向上述第二网络节点发送节点异常消息。
其中,上述装置100还包括:
区块缓存模块26,用于在对第四交易区块进行共识时,获取第五交易区块,缓存上述第五交易区块,上述第五交易区块的区块高度大于上述第四交易区块的区块高度;
区块共识模块27,用于当对上述第四交易区块共识通过,则将上述第四交易区块上传至上述区块链中,对上述第五交易区块进行共识;
上述区块共识模块27,还用于当对上述第四交易区块共识不通过,则获取生成上述第五交易区块的第三网络节点,向上述第三网络节点发送第四交易区块异常消息。
本申请实施例描述了共识网络管理装置,上述装置通过当区块链网络信息满足共识委员会更新条件时,计算机设备生成包含合约调用函数的合约调用区块,根据合约调用区块调用智能合约,上述智能合约包括配置标识与共识配置信息之间的映射关系,上述配置标识用于表征对应的共识配置信息的记录时间;触发智能合约获取目标配置标识对应的目标共识配置信息,上述目标配置标识是指上述智能合约中的配置标识中表征为最大记录时间的配置标识,上述目标共识配置信息包括至少两个目标节点;当合约调用区块通过共识验证时,智能合约根据上述目标共识配置信息,将共识委员会更新为至少两个目标节点。本申请实施例通过在对共识委员会进行更新时,无需对区块链的系统底层架构进行更新,而是直接通过智能合约调用目标共识配置信息,根据目标共识配置信息更新共识委员会,即可以在区块链的上层应用中实现对共识委员会的更新,从而减少了共识委员会更新时耗费的时间和资源,提高了共识委员会的更新效率。同时,对目标节点的选取,使得共识委员会的成员变动性较高,提高了共识委员会的成员灵活性,进而还可以提高区块链共识的安全可靠性。
参见图11,图11是本申请实施例提供的一种计算机设备的结构示意图。如图11所示,本申请实施例中的计算机设备1100可以包括:一个或多个处理器1101、存储器1102和输入输出接口1103。上述处理器1101、存储器1102和输入输出接口1103通过总线1104连接。存储器1102用于存储计算机程序,该计算机程序包括程序指令,输入输出接口1103用于输入数据和输出数据,包括各个通讯客户端与事件服务器间的数据交互,以及用户与各个通讯客户端间的数据交互;处理器1101用于执行存储器1102存储的程序指令,执行如下操作:
当区块链网络信息满足共识委员会更新条件时,生成包含合约调用函数的合约调用区块;
根据上述合约调用区块中的上述合约调用函数调用智能合约,上述智能合约包括配置标识与共识配置信息之间的映射关系,上述配置标识用于表征对应的共识配置信息的记录时间;
触发上述智能合约获取目标配置标识对应的目标共识配置信息;上述目标配置标识是指上述智能合约中的配置标识中表征为最大记录时间的配置标识,上述目标共识配置信息包括至少两个目标节点;
当上述合约调用区块通过共识验证时,上述智能合约根据上述目标共识配置信息,将共识委员会更新为上述至少两个目标节点。
在一些可行的实施方式中,上述处理器1101可以是中央处理单元(centralprocessing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器1102可以包括只读存储器和随机存取存储器,并向处理器1101和输入输出接口1103提供指令和数据。存储器1102的一部分还可以包括非易失性随机存取存储器。例如,存储器1102还可以存储设备类型的信息。
具体实现中,上述计算机可通过其内置的各个功能模块执行如上述图3或图4中各个步骤所提供的实现方式,具体可参见上述图3或图4中各个步骤所提供的实现方式,在此不再赘述。
本申请实施例通过提供一种计算机设备,包括:处理器、输入输出接口、存储器,通过处理器获取存储器中的计算机指令,执行上述图3或图4中所示方法的各个步骤,进行共识网络管理操作。通过存储器中的计算机指令,处理器执行以下步骤:当区块链网络信息满足共识委员会更新条件时,计算机设备生成包含合约调用函数的合约调用区块,根据合约调用区块调用智能合约,上述智能合约包括配置标识与共识配置信息之间的映射关系,上述配置标识用于表征对应的共识配置信息的记录时间;触发智能合约获取目标配置标识对应的目标共识配置信息,上述目标配置标识是指上述智能合约中的配置标识中表征为最大记录时间的配置标识,上述目标共识配置信息包括至少两个目标节点;当合约调用区块通过共识验证时,上述智能合约根据上述目标共识配置信息,将共识委员会更新为上述至少两个目标节点。本申请实施例通过在对共识委员会进行更新时,无需对区块链的系统底层架构进行更新,直接通过智能合约调用目标共识配置信息,根据目标共识配置信息更新共识委员会,即可以在区块链的上层应用中实现对共识委员会的更新,从而减少了区块链中共识委员会更新时耗费的时间和资源,提高了共识委员会的更新效率。同时,对目标节点的选取,使得共识委员会的成员变动性较高,提高了共识委员会的成员灵活性,进而还可以提高区块链共识的安全可靠性。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,当该程序指令被上述处理器执行时,可以实现图3或图4中各个步骤所提供的共识网络管理方法,具体可参见上述图3或图4中各个步骤所提供的实现方式,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可被部署为在一个计算机设备上执行,或者在位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行,分布在多个地点且通过通信网络互连的多个计算机设备可以组成区块链系统。
上述计算机可读存储介质可以是前述任一实施例提供的共识网络管理装置或者上述计算机的内部存储单元,例如计算机的硬盘或内存。该计算机可读存储介质也可以是该计算机的外部存储设备,例如该计算机上配备的插接式硬盘,智能存储卡(smart mediacard,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该计算机的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (14)
1.一种共识网络管理方法,其特征在于,所述方法包括:
当区块链网络信息满足共识委员会更新条件时,生成包含合约调用函数的合约调用区块;
根据所述合约调用区块中的所述合约调用函数调用智能合约,所述智能合约包括配置标识与共识配置信息之间的映射关系,所述配置标识用于表征对应的共识配置信息的记录时间;
触发所述智能合约获取目标配置标识对应的目标共识配置信息;所述目标配置标识是指所述智能合约中的配置标识中表征为最大记录时间的配置标识,所述目标共识配置信息包括至少两个目标节点;
当所述合约调用区块通过共识验证时,所述智能合约根据所述目标共识配置信息,将共识委员会更新为所述至少两个目标节点;
所述触发所述智能合约获取目标配置标识对应的目标共识配置信息,包括:
触发所述智能合约获取所述智能合约中的配置变量,所述配置变量的值始终保持为所述智能合约中的配置标识中表征为最大记录时间的配置标识;所述配置变量为所述目标配置标识;
所述智能合约根据所述配置变量,获取所述目标配置标识对应的所述目标共识配置信息。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述区块链网络信息;所述区块链网络信息包括所述区块链中的最大区块高度及委员会管理列表,所述委员会管理列表包括所述共识委员会管理的区块高度范围;
当所述最大区块高度大于所述区块高度范围中的最大管理区块高度时,确定所述区块链网络信息满足所述共识委员会更新条件。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述区块链网络信息;所述区块链网络信息包括第一网络节点发送的共识网络添加请求;
根据所述共识网络添加请求对所述第一网络节点进行共识,若共识通过,则根据所述第一网络节点生成所述目标共识配置信息;
生成所述目标共识配置信息对应的所述目标配置标识,将所述目标共识配置信息及所述目标配置标识之间的映射关系添加至所述智能合约,确定所述区块链网络信息满足所述共识委员会更新条件。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
获取候选共识节点集合及共识选举算法,所述候选共识节点集合包括至少两个候选共识节点;
根据所述共识选举算法从所述至少两个候选共识节点中选取所述至少两个目标节点,将所述至少两个目标节点添加至所述目标共识配置信息中;
生成所述目标共识配置信息对应的所述目标配置标识,将所述目标配置标识及所述目标共识配置信息添加至所述智能合约中。
5.如权利要求1所述的方法,其特征在于,所述智能合约根据所述目标共识配置信息,将共识委员会更新为所述至少两个目标节点,包括:
所述智能合约根据所述目标共识配置信息,获取所述至少两个目标节点的节点身份信息,根据所述节点身份信息更新共识信息池;
根据所述共识信息池将所述共识委员会更新为所述至少两个目标节点;所述共识信息池用于建立所述至少两个目标节点之间的网络连接关系。
6.如权利要求1所述的方法,其特征在于,所述智能合约根据所述目标共识配置信息,将共识委员会更新为所述至少两个目标节点,包括:
获取交易数据,根据所述目标共识配置信息与所述交易数据生成第一交易区块,将所述第一交易区块广播给剩余共识节点,以使所述剩余共识节点接收到所述第一交易区块后,触发所述智能合约开通所述剩余共识节点的共识权限,具备所述共识权限的剩余共识节点具备对所述第一交易区块进行共识的能力;所述剩余共识节点包括所述至少两个目标节点中除了本地节点之外的节点。
7.如权利要求1所述的方法,其特征在于,所述智能合约根据所述目标共识配置信息,将共识委员会更新为所述至少两个目标节点,包括:
获取更新后的共识出块节点发送的第二交易区块,所述第二交易区块包括交易数据及所述目标共识配置信息;所述至少两个目标节点包括所述更新后的共识出块节点;
获取所述目标共识配置信息中的所述至少两个目标节点;
若所述至少两个目标节点包括本地节点,则触发所述智能合约将所述共识委员会更新为所述至少两个目标节点,将所述本地节点的共识标志位更新为可共识标志,根据所述可共识标志对所述第二交易区块进行共识。
8.如权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述至少两个目标节点,根据所述至少两个目标节点生成所述目标共识配置信息,生成所述目标共识配置信息的所述目标配置标识,所述至少两个目标节点为组成下一任共识委员会的节点;
根据所述目标共识配置信息及所述目标配置标识生成配置区块,若对所述配置区块共识通过,则将所述配置区块上传到所述区块链中;
根据已共识通过的所述配置区块,将所述目标共识配置信息及所述目标配置标识添加至所述智能合约,将所述智能合约中的所述配置变量的值更新为所述目标配置标识。
9.如权利要求1所述的方法,其特征在于,所述目标共识配置信息还包括出块节点的选取算法;所述方法还包括:
获取所述智能合约中的所述目标共识配置信息,根据所述目标共识配置信息中的所述出块节点的选取算法,从所述至少两个目标节点中选取区块生成节点;
获取第三交易区块及生成所述第三交易区块的第二网络节点;
若所述第二网络节点为所述区块生成节点,则确定所述第二网络节点为合法节点;
若所述第二网络节点不是所述区块生成节点,则确定所述第二网络节点为异常节点,向所述第二网络节点发送节点异常消息。
10.如权利要求1所述的方法,其特征在于,所述方法还包括:
在对第四交易区块进行共识时,获取第五交易区块,缓存所述第五交易区块,所述第五交易区块的区块高度大于所述第四交易区块的区块高度;
当对所述第四交易区块共识通过,则将所述第四交易区块上传至所述区块链中,对所述第五交易区块进行共识;
当对所述第四交易区块共识不通过,则获取生成所述第五交易区块的第三网络节点,向所述第三网络节点发送第四交易区块异常消息。
11.一种共识网络管理装置,其特征在于,所述装置包括:
合约获取模块,用于当区块链网络信息满足共识委员会更新条件时,生成包含合约调用函数的合约调用区块;
所述合约获取模块,还用于根据所述合约调用区块中的所述合约调用函数调用智能合约,所述智能合约包括配置标识与共识配置信息之间的映射关系,所述配置标识用于表征对应的共识配置信息的记录时间;
信息获取模块,用于触发所述智能合约获取目标配置标识对应的目标共识配置信息;所述目标配置标识是指所述智能合约中的配置标识中表征为最大记录时间的配置标识,所述目标共识配置信息包括至少两个目标节点;
共识更新模块,用于当所述合约调用区块通过共识验证时,所述智能合约根据所述目标共识配置信息,将共识委员会更新为所述至少两个目标节点;
所述信息获取模块,包括:
变量获取单元,用于触发所述智能合约获取所述智能合约中的配置变量,所述配置变量的值始终保持为所述智能合约中的配置标识中表征为最大记录时间的配置标识;所述配置变量为所述目标配置标识;
信息获取单元,用于所述智能合约根据所述配置变量,获取所述目标配置标识对应的所述目标共识配置信息。
12.如权利要求11所述的装置,其特征在于,所述装置还包括:
网络获取模块,用于获取区块链网络信息;所述区块链网络信息包括所述区块链中的最大区块高度及委员会管理列表,所述委员会管理列表包括所述共识委员会管理的区块高度范围;
条件确定模块,用于当所述最大区块高度大于所述区块高度范围中的最大管理区块高度时,确定所述区块链网络信息满足所述共识委员会更新条件。
13.一种计算机设备,其特征在于,包括处理器、存储器、输入输出接口;
所述处理器分别与所述存储器和所述输入输出接口相连,其中,所述输入输出接口用于区块链中各个节点的数据交互,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如权利要求1-10任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如权利要求1-10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010245792.4A CN111461885B (zh) | 2020-03-31 | 2020-03-31 | 共识网络管理方法、装置、计算机以及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010245792.4A CN111461885B (zh) | 2020-03-31 | 2020-03-31 | 共识网络管理方法、装置、计算机以及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111461885A CN111461885A (zh) | 2020-07-28 |
CN111461885B true CN111461885B (zh) | 2024-03-19 |
Family
ID=71683457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010245792.4A Active CN111461885B (zh) | 2020-03-31 | 2020-03-31 | 共识网络管理方法、装置、计算机以及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111461885B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112104705B (zh) * | 2020-08-21 | 2023-10-24 | 达闼机器人股份有限公司 | 标识生成方法、装置、存储介质及电子设备 |
CN112187913B (zh) * | 2020-09-24 | 2023-09-08 | 北京国建信联科技发展有限公司 | 一种基于智能合约实现共识的方法与系统 |
CN112511338A (zh) * | 2020-11-09 | 2021-03-16 | 迅鳐成都科技有限公司 | 区块链共识网络动态恢复方法、电子设备、系统及介质 |
CN113162971B (zh) * | 2020-12-03 | 2022-07-22 | 腾讯科技(深圳)有限公司 | 区块链节点管理方法、装置、计算机以及可读存储介质 |
CN113286004B (zh) * | 2021-03-29 | 2022-06-24 | 腾讯科技(深圳)有限公司 | 基于区块链网络的节点管理方法、装置、设备及存储介质 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017148527A1 (en) * | 2016-03-03 | 2017-09-08 | Nec Europe Ltd. | Method for managing data in a network of nodes |
CN108389047A (zh) * | 2018-02-12 | 2018-08-10 | 深圳沃链科技有限公司 | 区块链中母链与子链交易的方法及区块链网络 |
CN108712276A (zh) * | 2018-04-19 | 2018-10-26 | 上海分布信息科技有限公司 | 基于区块链技术的共识网络管理方法、装置、设备及存储介质 |
CN109523260A (zh) * | 2018-11-28 | 2019-03-26 | 段红 | 一种动态节点选举的高并发共识机制 |
CN109547527A (zh) * | 2018-10-12 | 2019-03-29 | 广西师范大学 | 区块链中基于信誉机制的分区快速共识方法 |
CN109964446A (zh) * | 2018-06-08 | 2019-07-02 | 北京大学深圳研究生院 | 一种基于投票的共识方法 |
CN110011978A (zh) * | 2019-03-08 | 2019-07-12 | 阿里巴巴集团控股有限公司 | 一种修改区块链网络配置的方法及系统 |
CN110168582A (zh) * | 2018-11-30 | 2019-08-23 | 阿里巴巴集团控股有限公司 | 使用去中心化决策更新区块链智能合约 |
WO2019192062A1 (zh) * | 2018-04-04 | 2019-10-10 | 上海金丘信息科技股份有限公司 | 一种基于信任成员的动态权益的共识方法 |
CN110505223A (zh) * | 2019-08-15 | 2019-11-26 | 腾讯科技(深圳)有限公司 | 区块链多链管理方法和装置 |
CN110661658A (zh) * | 2019-09-23 | 2020-01-07 | 腾讯科技(深圳)有限公司 | 一种区块链网络的节点管理方法、装置及计算机存储介质 |
CN110716980A (zh) * | 2018-06-27 | 2020-01-21 | 上海掌颐网络科技有限公司 | 一种基于嵌套式容器的虚拟覆盖管理共识区块链操作系统 |
CN110852851A (zh) * | 2019-11-14 | 2020-02-28 | 腾讯科技(深圳)有限公司 | 基于区块链的交通工具共享方法、装置及可读存储介质 |
WO2020051730A1 (en) * | 2018-09-10 | 2020-03-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and devices for shared vehicle management |
CN110928951A (zh) * | 2019-11-26 | 2020-03-27 | 天津理工大学 | 一种基于区块链的数据共享及仲裁方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107450979B (zh) * | 2017-03-28 | 2020-06-02 | 创新先进技术有限公司 | 一种区块链共识方法及装置 |
CN107332701A (zh) * | 2017-06-26 | 2017-11-07 | 中国人民银行数字货币研究所 | 管理节点的方法和系统 |
US20200027096A1 (en) * | 2017-11-07 | 2020-01-23 | Jason Ryan Cooner | System, business and technical methods, and article of manufacture for utilizing internet of things technology in energy management systems designed to automate the process of generating and/or monetizing carbon credits |
US20200013027A1 (en) * | 2018-07-06 | 2020-01-09 | Decentralized Finance Labs, Inc. | Hybrid proof of work and proof of stake consensus to reduce circulating tokens in a blockchain system |
CN109246197B (zh) * | 2018-08-15 | 2021-10-15 | 交通银行股份有限公司 | 基于智能合约的数据处理方法及装置 |
-
2020
- 2020-03-31 CN CN202010245792.4A patent/CN111461885B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017148527A1 (en) * | 2016-03-03 | 2017-09-08 | Nec Europe Ltd. | Method for managing data in a network of nodes |
CN108389047A (zh) * | 2018-02-12 | 2018-08-10 | 深圳沃链科技有限公司 | 区块链中母链与子链交易的方法及区块链网络 |
WO2019192062A1 (zh) * | 2018-04-04 | 2019-10-10 | 上海金丘信息科技股份有限公司 | 一种基于信任成员的动态权益的共识方法 |
CN108712276A (zh) * | 2018-04-19 | 2018-10-26 | 上海分布信息科技有限公司 | 基于区块链技术的共识网络管理方法、装置、设备及存储介质 |
CN109964446A (zh) * | 2018-06-08 | 2019-07-02 | 北京大学深圳研究生院 | 一种基于投票的共识方法 |
CN110716980A (zh) * | 2018-06-27 | 2020-01-21 | 上海掌颐网络科技有限公司 | 一种基于嵌套式容器的虚拟覆盖管理共识区块链操作系统 |
WO2020051730A1 (en) * | 2018-09-10 | 2020-03-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and devices for shared vehicle management |
CN109547527A (zh) * | 2018-10-12 | 2019-03-29 | 广西师范大学 | 区块链中基于信誉机制的分区快速共识方法 |
CN109523260A (zh) * | 2018-11-28 | 2019-03-26 | 段红 | 一种动态节点选举的高并发共识机制 |
CN110168582A (zh) * | 2018-11-30 | 2019-08-23 | 阿里巴巴集团控股有限公司 | 使用去中心化决策更新区块链智能合约 |
CN110011978A (zh) * | 2019-03-08 | 2019-07-12 | 阿里巴巴集团控股有限公司 | 一种修改区块链网络配置的方法及系统 |
CN110505223A (zh) * | 2019-08-15 | 2019-11-26 | 腾讯科技(深圳)有限公司 | 区块链多链管理方法和装置 |
CN110661658A (zh) * | 2019-09-23 | 2020-01-07 | 腾讯科技(深圳)有限公司 | 一种区块链网络的节点管理方法、装置及计算机存储介质 |
CN110852851A (zh) * | 2019-11-14 | 2020-02-28 | 腾讯科技(深圳)有限公司 | 基于区块链的交通工具共享方法、装置及可读存储介质 |
CN110928951A (zh) * | 2019-11-26 | 2020-03-27 | 天津理工大学 | 一种基于区块链的数据共享及仲裁方法 |
Non-Patent Citations (4)
Title |
---|
WSSN――服务于标准用户的IT工具;王鲜华;;船舶标准化与质量(第03期);全文 * |
区块链、分布式账本技术解读;黎江;何京汉;;金融电子化;20160331(第03期);全文 * |
区块链技术研究综述;黄俊飞;刘杰;;北京邮电大学学报(第02期);全文 * |
基于区块链技术的游戏生态系统框架研究与设计;金安;;信息与电脑(理论版)(第15期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111461885A (zh) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111461885B (zh) | 共识网络管理方法、装置、计算机以及可读存储介质 | |
CN111600720B (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN112134762B (zh) | 针对区块链网络结构的测试方法、装置、终端和存储介质 | |
CN111930845A (zh) | 一种区块链的共识方法、系统、终端、及存储介质 | |
CN109992473B (zh) | 应用系统的监控方法、装置、设备及存储介质 | |
CN112347184B (zh) | 分叉处理方法以及区块链节点 | |
CN110990233B (zh) | 一种利用甘特图展示soar的方法和系统 | |
CN111464353A (zh) | 区块链节点管理方法、装置、计算机以及可读存储介质 | |
CN111556115B (zh) | 一种基于区块链的数据处理方法、装置、设备及存储介质 | |
CN113326165B (zh) | 基于区块链的数据处理方法、设备及计算机可读存储介质 | |
CN110930254A (zh) | 基于区块链的数据处理方法、装置、终端及介质 | |
CN111382334B (zh) | 一种数据处理方法、装置、计算机以及可读存储介质 | |
CN112417052B (zh) | 区块链网络中的数据同步方法、装置、设备及存储介质 | |
CN113162971B (zh) | 区块链节点管理方法、装置、计算机以及可读存储介质 | |
CN116933886B (zh) | 一种量子计算执行方法、系统、电子设备及存储介质 | |
CN112948499A (zh) | 信息获取方法和装置、电子设备和存储介质 | |
CN111507840B (zh) | 区块链共识方法、装置、计算机以及可读存储介质 | |
CN117057913A (zh) | 区块链管理方法、装置、计算机、存储介质及程序产品 | |
Heo et al. | Understanding block and transaction logs of permissionless blockchain networks | |
CN115037613B (zh) | 一种项目集中化持续配置方法和系统 | |
CN115941209B (zh) | 区块链去中心化可信数据采集方法及系统 | |
Victor et al. | Performability assessment and sensitivity analysis of a home automation system | |
CN114418578A (zh) | 一种区块链账户风险查询方法及装置 | |
CN117792923A (zh) | 一种基于区块链的数据处理方法、装置、设备及介质 | |
CN113392011A (zh) | 一种链路分段性能测试方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40025890 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |