CN110557452A - 区块链的节点管理方法、装置、存储介质和计算机设备 - Google Patents

区块链的节点管理方法、装置、存储介质和计算机设备 Download PDF

Info

Publication number
CN110557452A
CN110557452A CN201910831068.7A CN201910831068A CN110557452A CN 110557452 A CN110557452 A CN 110557452A CN 201910831068 A CN201910831068 A CN 201910831068A CN 110557452 A CN110557452 A CN 110557452A
Authority
CN
China
Prior art keywords
node
block chain
version number
current
number corresponding
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.)
Granted
Application number
CN201910831068.7A
Other languages
English (en)
Other versions
CN110557452B (zh
Inventor
李茂材
时一防
王宗友
孔利
蓝虎
周开班
杨常青
刘区城
朱耿良
陈秋平
张劲松
刘攀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910831068.7A priority Critical patent/CN110557452B/zh
Publication of CN110557452A publication Critical patent/CN110557452A/zh
Application granted granted Critical
Publication of CN110557452B publication Critical patent/CN110557452B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Abstract

本申请涉及一种区块链的节点管理方法、装置、存储介质和计算机设备,所述方法包括:获取区块链系统对应的当前区块链版本号;若目标节点对应的当前区块链版本号低于所述区块链系统对应的当前区块链版本号,获取变更信息;按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号。本申请降低了区块链系统中错误信息产生的可能性。

Description

区块链的节点管理方法、装置、存储介质和计算机设备
技术领域
本申请涉及计算机技术领域,特别是涉及一种区块链的节点管理方法、装置、存储介质和计算机设备。
背景技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,其中,共识机制是区块链的核心。共识机制是指区块链系统中实现不同节点之间建立信任、获取权益的数学算法,比如,对于一笔交易,需要互相没有信任基础的节点之间就交易的合法性达成共识,即需要节点的投票才能完成对交易的验证和确认。
基于共识机制,节点对区块链系统中节点的状态的认知尤为重要。但是,当一节点故障,或者该节点的网络拥塞,错过了一些节点的增删过程,当该节点恢复后,该节点对区块链系统中节点的状态的认知与区块链系统中其它节点的认知不一致,则会产生错误的信息。
发明内容
基于此,针对节点之间对区块链系统中节点的状态认知不一致的问题,提供一种区块链的节点管理方法、装置、计算机可读存储介质和计算机设备。
一种区块链的节点管理方法,所述方法包括:
获取区块链系统对应的当前区块链版本号;
若目标节点对应的当前区块链版本号低于所述区块链系统对应的当前区块链版本号,获取变更信息;
按照所述变更信息,更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号。
一种区块链的节点管理装置,所述装置包括:
获取模块,用于获取区块链系统对应的当前区块链版本号;
所述获取模块,还用于若目标节点对应的当前区块链版本号低于所述区块链系统对应的当前区块链版本号,获取变更信息;
更新模块,用于按照所述变更信息,更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机可执行指令,所述计算机可执行指令被处理器执行时,所述处理器执行所述计算机程序时实现以下步骤:
获取区块链系统对应的当前区块链版本号;
若目标节点对应的当前区块链版本号低于所述区块链系统对应的当前区块链版本号,获取变更信息;
按照所述变更信息,更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机程序被处理器执行时实现以下步骤:
获取区块链系统对应的当前区块链版本号;
若目标节点对应的当前区块链版本号低于所述区块链系统对应的当前区块链版本号,获取变更信息;
按照所述变更信息,更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号。
上述区块链的节点管理方法、装置、计算机可读存储介质和计算机设备,获取区块链系统对应的当前区块链版本号,若目标节点对应的当前区块链版本号低于区块链系统对应的当前区块链版本号,获取变更信息,按照变更信息更新目标节点与区块链系统对应的当前节点之间的连接关系,并将目标节点对应的当前区块链版本号升级为区块链系统对应的当前区块链版本号,这样,区块链系统中的节点通过比对自身对应的当前区块链版本号与区块链系统对应的当前区块链版本号是否一致,来确定自身对区块链系统当前的节点的认知是否落后,同步区块链系统中节点之间对区块链系统当前的节点的认知,从而降低了区块链系统中错误信息产生的可能性。
附图说明
图1为一个实施例中用于实现区块链的节点管理方法的终端的内部结构图;
图2为一个实施例中区块链的节点管理方法的流程示意图;
图3为一个实施例中区块链系统的增删节点过程的示意图;
图4为一个实施例中第三方机构作用的示意图;
图5为另一个实施例中区块链系统的增删节点过程的示意图;
图6为一个实施例中区块链系统中区块高度的示意图;
图7为另一个实施例中区块链的节点管理方法的流程示意图;
图8为一个实施例中区块链的节点管理装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中终端的内部结构示意图。如图1所示,该终端包括通过系统总线连接的处理器、非易失性存储介质、内存储器和显示屏。其中,终端的非易失性存储介质存储有操作系统,还可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器实现一种区块链的节点管理方法。该处理器用于提供计算和控制能力,支撑整个终端的运行。该内存储器中也可储存有计算机可读指令,该计算机可读指令被所述处理器执行时,可使得所述处理器执行一种区块链的节点管理方法。终端的显示屏可以是液晶显示屏或者电子墨水显示屏等。
本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
如图2所示,在一个实施例中,提供了一种区块链的节点管理方法。参照图2,该区块链的节点管理方法具体包括如下步骤:
S202,获取区块链系统对应的当前区块链版本号。
其中,区块链系统是指至少两个区块链节点构成的节点集合。
共识机制是区块链系统的核心,共识机制是指区块链系统中实现不同节点之间建立信任、获取权益的数学算法。比如,对于一笔交易,需要区块链系统中互相没有信任基础的节点之间就交易的合法性达成共识,即需要区块链系统中一定比例的节点的投票才能完成对交易的验证和确认。基于区块链系统的共识机制,区块链系统中节点对区块链系统当前的节点的认知尤为重要,其中,区块链系统当前的节点是指,当前构成区块链系统的节点。
当一节点故障,或者该节点的网络拥塞,错过了区块链系统中节点的增删过程,当该节点恢复后,该节点对区块链系统当前的节点的认知与区块链系统中其它节点的认知不一致,则会产生错误的信息。比如,区块链系统中有A、B、C、D四个节点,A节点发生故障,在A节点故障的过程中,区块链系统中的节点更改为A、C、D、E四个节点(即删除了B节点,增加了E节点),A节点恢复后,A节点对区块链系统当前的节点的认知还是A、B、C、D四个节点,且A节点与新增的E节点断连,对于一笔交易,A节点的认知还是需要接收到B、C、D三个节点的投票才能完成验证和确认,那么A节点存储的区块链的数据结构会与区块链系统中其它节点存储的区块链的数据结构不一致。
本实施例中,针对上述情况,在区块链系统中每个节点上增加区块链系统管理协议,区块链系统管理协议用于处理区块链系统中增删节点后的区块链系统变更,使得区块链系统中每个节点对区块链系统当前的节点的认知一致。
其中,区块链系统当前的节点不同,区块链版本号不同。比如,如图3所示,区块链系统中有A、B、C、D四个节点,区块链版本号为V1;响应接收到的增删节点请求,区块链系统中的节点变更为A、C、D三个节点,区块链版本号为V2。可以理解,区块链版本号不仅可随区块链系统的节点的状态发生改变而改变,当区块链的数据结构发生改变时,区块链版本号也可改变。比如,增删区块也可导致区块链版本号的改变。
其中,区块链系统对应的当前区块链版本号是指,区块链系统当前的节点对应的用于参考的区块链版本号。
具体地,获取区块链系统对应的当前区块链版本号的方式可以是:获取辅助节点对应的当前区块链版本号,得到区块链系统对应的当前区块链版本号;可选地,接收区块链系统信任的第三方机构发送的区块链系统对应的当前区块链版本号,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点。
S204,若目标节点对应的当前区块链版本号低于所述区块链系统对应的当前区块链版本号,获取变更信息。
其中,目标节点是指区块链系统中任一节点。目标节点对应的当前区块链版本号是指,目标节点对区块链系统当前的节点的认知对应的区块链版本号。
具体地,区块链版本号可随着区块链系统的节点的变化依次升级。基于区块链系统管理协议,区块链系统中节点之间可周期性进行通信,以互相告知自身对应的当前区块链版本号。目标节点以辅助节点对应的当前区块链版本号作为参考,判断自身对应的当前区块链版本号是否落后,若自身对应的当前区块链版本号低于区块链系统对应的当前区块链版本号,可确定自身对应的当前区块链版本号过旧,即自身对区块链系统当前的节点的认知落后。
可选地,区块链系统信任的第三方机构可周期性地向区块链系统中的节点发送区块链系统对应的当前区块链版本号。可以理解,区块链系统信任的第三方机构发送的区块链系统对应的当前区块链版本号为区块链系统中最新的区块链版本号。这样,区块链系统中的节点可基于区块链系统对应的当前区块链版本号来检测自身对应的当前区块链版本号是否过旧。
可以理解,所述目标节点对应的当前区块链版本号低于区块链系统对应的当前区块链版本号,是指目标节点对应的当前区块链版本号过旧,而不是指目标节点对应的当前区块链版本号的数值与区块链系统对应的当前区块链版本号的数值之间的大小关系。
其中,变更信息是指从目标节点对应的当前区块链版本号升级至区块链系统对应的当前区块链版本号经历的增删节点过程所需的信息。变更信息包括增删节点信息,所述增删节点信息用于指示目标节点更新对区块链系统当前的节点的认知。变更信息还可包括验签信息,所述验签信息用于验证增删节点信息的合法性。
具体地,所述获取变更信息的方式可以是:获取辅助节点发送的变更信息;可选地,接收区块链系统信任的第三方机构发送的变更信息。若变更信息的发送方为辅助节点,增删节点信息可包括每一次增删节点过程对应的增删节点确认信息以及增删节点结果,每一次增删节点过程为目标节点对应的当前区块链版本号升级为区块链系统对应的当前区块链版本号经历的增删节点过程。若变更信息的发送方为区块链系统信任的第三方机构,增删节点信息可包括区块链系统对应的当前节点。
S206,按照所述变更信息,更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号。
具体地,按照变更信息,更新目标节点与区块链系统对应的当前节点之间的连接关系的方式可以是:按照变更信息确定节点增删过程中删除的节点,断开与删除的节点之间的连接,按照变更信息确定节点增删过程中新增的节点,建立与新增的节点之间的连接。
本申请提供的区块链的节点管理方法,获取区块链系统对应的当前区块链版本号,若目标节点对应的当前区块链版本号低于区块链系统对应的当前区块链版本号,获取变更信息,按照变更信息更新目标节点与区块链系统对应的当前节点之间的连接关系,并将目标节点对应的当前区块链版本号升级为区块链系统对应的当前区块链版本号,这样,区块链系统中的节点通过比对自身对应的当前区块链版本号与区块链系统对应的当前区块链版本号是否一致,来确定自身对区块链系统当前的节点的认知是否落后,同步区块链系统中节点之间对区块链系统当前的节点的认知,从而降低了区块链系统中错误信息产生的可能性。
在一个实施例中,所述获取区块链系统对应的当前区块链版本号,包括:获取所述区块链系统中辅助节点对应的当前区块链版本号,得到所述区块链系统对应的当前区块链版本号,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;或者,接收所述区块链系统信任的第三方机构发送的所述区块链系统对应的当前区块链版本号,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点。
具体地,区块链系统包括至少两个区块链节点,区块链系统中各个节点之间可周期性进行通信,以互相告知自身对应的当前区块链版本号。当目标节点检测到自身对应的当前区块链版本号低于区块链系统中其它节点对应的当前区块链版本号时,判定自身对应的当前区块链版本号过旧,需要更新与区块链系统对应的当前节点之间的连接关系,并对自身对应的当前区块链版本号进行升级。
由于区块链系统中各个节点之间互相进行通信,目标节点可接收到至少两个辅助节点对应的当前区块链版本号。可以理解,目标节点选择接收到的当前区块链版本号中最高的当前区块链版本号,以对自身的区块链版本号进行升级和对自身的连接关系进行更新。
具体地,区块链系统信任的第三方机构是指,区块链系统中所有节点认可的权威机构。比如,第三方机构可为政府的配置中心。区块链系统信任的第三方机构可周期性地向区块链系统中的节点发送区块链系统对应的当前区块链版本号,当目标节点检测到自身对应的当前区块链版本号低于第三方机构发送的区块链系统对应的当前区块链版本号时,判定自身对应的当前区块链版本号过旧,需要更新与区块链系统对应的当前节点之间的连接关系,并对自身对应的当前区块链版本号进行升级。
如图4所示,区块链系统信任的第三方机构可将区块链系统对应的当前区块链版本号发送至区块链系统中任一节点,该节点将第三方机构发送的区块链系统对应的当前区块链版本号转发至区块链系统中除自身以外的其它节点。
本申请提供的区块链的节点管理方法,区块链系统中节点之间互相告知自身对应的当前区块链版本号,或者,区块链系统信任的第三方机构发送区块链系统对应的当前区块链版本号至区块链系统中,使得节点及时检测自身对区块链系统当前的节点的认知是否落后,实现区块链系统中节点之间对区块链系统当前的节点的认知一致。
在一个实施例中,所述变更信息包括增删节点信息,若所述变更信息的发送方为所述区块链系统信任的第三方机构,所述增删节点信息包括所述区块链系统对应的当前节点;所述按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,包括:按照所述区块链系统对应的当前节点更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系。
其中,增删节点信息用于指示目标节点更新对区块链系统当前的节点的认知。
比如,如图5所示,区块链系统中有A、B、C、D四个节点(将A作为目标节点),区块链版本号为V1;在A故障的过程中,响应接收到的增删节点请求,区块链系统中的节点变更为A、C、D三个节点,区块链版本号为V2;响应接收到的增删节点请求,区块链系统中的节点变更为A、D、E三个节点,区块链版本号为V3。
若变更信息的发送方为区块链系统信任的第三方机构,增删节点信息包括区块链系统对应的当前节点。区块链系统信任的第三方机构将增删节点信息,即区块链系统对应的当前的节点为A、D、E三个节点,发送至目标节点A。
目标节点按照区块链系统对应的当前节点更新目标节点与区块链系统对应的当前节点之间的连接关系,即针对区块链系统对应的当前节点,确定节点增删过程中删除的节点,断开与删除的节点之间的连接,确定节点增删过程中新增的节点,建立与新增的节点之间的连接。比如,目标节点A断开与节点B、节点C的连接,并与节点D、节点E建立连接。
本申请提供的区块链的节点管理方法,利用第三方机构发送的变更信息更新目标节点的连接关系,使得目标节点对区块链系统当前的节点的认知准确。
在一个实施例中,若所述变更信息的发送方为辅助节点,所述增删节点信息包括每一次增删节点过程对应的增删节点确认信息以及增删节点结果,所述每一次增删节点过程为所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号经历的增删节点过程,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;所述按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,包括:对所述每一次增删节点过程对应的增删节点确认信息依次进行验签;当所述增删节点确认信息验签通过时,按照所述增删节点确认信息对应的增删节点结果更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系。
具体地,若变更信息的发送方为辅助节点,增删节点信息包括每一次增删节点过程对应的投票节点的增删节点确认信息以及增删节点结果,其中,投票节点是指针对增删节点请求进行投票的节点,且该投票的性质为认同该增删节点请求合法。
其中,每一次增删节点过程为目标节点对应的当前区块链版本号升级为区块链系统对应的当前区块链版本号经历的增删节点过程。比如,如图5所示,区块链系统中有A、B、C、D四个节点(将A作为目标节点),区块链版本号为V1;在A故障的过程中,响应接收到的增删节点请求,区块链系统中的节点变更为A、C、D三个节点,区块链版本号为V2;响应接收到的增删节点请求,区块链系统中的节点变更为A、D、E三个节点,区块链版本号为V3,那么目标节点A由区块链版本号V1升级至区块链版本号V3需要经历V1→V2→V3两次增删节点过程。
其中,增删节点确认信息是指响应于接收到的增删节点请求,区块链系统中的节点对该增删节点请求的投票,这些投票为同意增删节点请求对区块链系统当前的节点的状态进行变更的确认信息。增删节点确认信息可包括投票节点的签名、公钥和确认信息,投票节点的签名、公钥用于对投票节点的确认信息进行验签。
增删节点结果是指增删节点过程后,区块链系统的节点的状态。以共识机制为需要区块链系统中3/4的节点的投票才能通过增删节点请求为例,在V1→V2增删节点过程,由于A故障,有B、C、D三个节点的投票,即可实现V1→V2增删节点过程,那么B、C、D三个节点的投票即为V1→V2增删节点过程的确认信息,A、C、D三个节点即为增删节点结果。
具体地,对每一次增删节点过程对应的增删节点确认信息依次进行验签,当增删节点确认信息验签通过时,按照增删节点确认信息对应的增删节点结果更新目标节点与所述区块链系统对应的当前节点之间的连接关系。
对增删节点确认信息进行验签,是为了保证增删节点确认信息的合法性。比如,在V1→V2增删节点过程,有B、C、D三个节点的增删节点确认信息,A需要对B、C、D三个节点的增删节点确认信息进行验签,以确保增删节点确认信息的合法性。具体地,利用增删节点确认信息中的投票节点的签名、公钥对投票节点的确认信息进行验签。
在一个实施例中,当目标节点对增删节点确认信息均验签通过后,按照区块链系统对应的当前节点更新目标节点的连接关系。比如,对V1→V2增删节点过程和V2→V3增删节点过程的增删节点确认信息均验签通过后,按照A、D、E三个节点更新目标节点的连接关系。
在一个实施例中,当目标节点对一次增删节点过程对应的增删节点确认信息验签通过后,按照该增删节点过程对应的增删节点结果更新目标节点的连接关系。比如,对V1→V2增删节点过程的增删节点确认信息验签通过后,按照A、C、D三个节点更新目标节点的连接关系;V2→V3增删节点过程的增删节点确认信息验签通过后,按照A、D、E三个节点更新目标节点的连接关系。
针对增删节点结果,确定节点增删过程中删除的节点,断开与删除的节点之间的连接,确定节点增删过程中新增的节点,建立与新增的节点之间的连接。比如,目标节点A断开与节点B、节点C的连接,并与节点D、节点E建立连接。
目标节点按照增删节点确认信息对应的增删节点结果更新目标节点与区块链系统对应的当前节点之间的连接关系之后,存储验签通过的所述增删节点确认信息以及对应的增删节点结果。目标节点存储验签通过的增删节点确认信息以及对应的增删节点结果的目的是:一是与区块链系统中除自身以外的其它节点同步存储,另一是为区块链版本号落后的节点提供变更信息。
本申请提供的区块链的节点管理方法,利用区块链系统中其它节点发送的变更信息更新目标节点的连接关系,使得目标节点对区块链系统当前的节点的认知准确。
在一个实施例中,所述变更信息还包括验签信息;所述方法还包括:根据所述验签信息对所述增删节点信息进行验签;若验签通过,执行所述按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号的步骤。
其中,验签信息用于验证增删节点信息的合法性。
当目标节点接收到变更信息时,利用变更信息中的验签信息对变更信息中的增删节点信息进行验签。在一个实施例中,验签信息可包括:变更信息的发送方(以下简称发送方)的公钥和签名。具体地,发送方利用SHA256函数对增删节点信息进行处理,得到第一字符串,利用发送方私钥对第一字符串进行处理,得到发送方签名,将增删节点信息、发送方签名和发送方公钥打包发送至目标节点;目标节点利用SHA256函数对增删节点信息进行处理,得到第二字符串,利用发送方公钥对发送方签名进行解密,得到第三字符串,若第二字符串和第三字符串一致,则判定增删节点信息合法。
本申请提供的区块链的节点管理方法,对增删节点信息进行验签,保证了目标节点对区块链系统当前的节点的认知正确。
在一个实施例中,所述方法还包括:响应接收到的增删节点请求,将所述增删节点请求广播至辅助节点,其中,所述增删节点请求包括待增删节点的名称、网络地址、公钥、证书和签名中的至少一个,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;当接收到所述辅助节点返回的增删节点确认信息时,按照所述增删节点请求更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并更新所述目标节点对应的当前区块链版本号。
其中,增删节点请求用于触发区块链系统中的增删节点过程。增删节点请求的发送方可以是区块链系统信任的第三方机构,也可以是区块链系统中的节点,也可以是区块链系统外的节点。
其中,增删节点请求包括待增删节点的名称、网络地址、公钥、证书和签名中的至少一个。待增删节点的名称和网络地址用于待增删节点加入区块链系统后,与区块链系统中的节点进行通信;待增删节点的公钥、证书和签名用于区块链系统中的节点对待增删节点的合法性进行验证。
其中,增删节点确认信息是指响应于接收到的增删节点请求,区块链系统中的节点对该增删节点请求的投票,这些投票为同意增删节点请求对区块链系统当前的节点的状态进行变更的确认信息。增删节点确认信息可包括投票节点的签名、公钥和确认信息,投票节点的签名、公钥用于对投票节点的确认信息进行验签。
如图5所示,以共识机制为需要区块链系统中3/4的节点的投票才能通过增删节点请求为例,在V1→V2增删节点过程,由于A故障,有B、C、D三个节点的投票,即可实现V1→V2增删节点过程,那么B、C、D三个节点的投票即为V1→V2增删节点过程的确认信息。
具体地,区块链系统中的目标节点接收到增删节点请求,并将增删节点请求广播至辅助节点。区块链系统中的节点对待增删节点的合法性进行验证,当验证通过后,发送增删节点确认信息至目标节点,目标节点对辅助节点发送的增删节点确认信息的合法性进行验证,当验证通过后,若目标节点统计区块链系统中的投票情况符合区块链系统的共识机制,对投票结果(即增删节点确认信息和增删节点结果)进行广播,使得区块链系统中的节点更新自身与区块链系统对应的当前节点之间的连接关系,并更新自身对应的当前区块链版本号。
可以理解,区块链系统中的节点存储此次节点增删过程的投票结果(即增删节点确认信息和增删节点结果),一是同步区块链系统中的节点的存储,二是为区块链版本号落后的节点提供变更信息。
本申请提供的区块链的节点管理方法,通过共识机制对区块链系统中的节点进行增删操作,实现区块链系统的公正性、合法性。
在一个实施例中,所述方法还包括:当接收到所述辅助节点返回的增删节点确认信息时,对所述增删节点确认信息进行验签;当所述增删节点确认信息验签通过时,执行所述按照所述增删节点请求更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并更新所述目标节点对应的当前区块链版本号的步骤。
其中,增删节点确认信息可包括辅助节点的签名、公钥和确认信息,辅助节点的签名、公钥用于对辅助节点的确认信息进行验签。
在一个实施例中,辅助节点利用SHA256函数对确认信息进行处理,得到第四字符串,利用辅助节点私钥对第四字符串进行处理,得到辅助节点签名,将辅助节点确认信息、辅助节点签名和辅助节点公钥打包发送至目标节点;目标节点利用SHA256函数对辅助节点确认信息进行处理,得到第五字符串,利用辅助节点公钥对辅助节点签名进行解密,得到第六字符串,若第五字符串和第六字符串一致,则判定辅助节点确认信息合法,增删节点确认信息验签通过。
本申请提供的区块链的节点管理方法,对辅助节点的确认信息进行验签,保证了区块链系统中投票的合法性。
在一个实施例中,所述更新所述目标节点对应的当前区块链版本号,包括:获取所述区块链系统对应的当前区块高度;根据所述当前区块高度更新所述目标节点对应的当前区块链版本号。
其中,如图6所示,区块链的数据结构是由包含交易信息的区块链接起来的,区块被从远及近有序地链接在这个链条里,每个区块都指向前一个区块。区块是包含在区块链中,且聚合了交易信息的容器。区块由包含元数据的区块头和紧跟其后的构成区块主体的一长串交易组成。区块高度可用来识别区块在区块链中的位置,并据此找到和这个区块相关的所有基础属性和交易记录。
具体地,区块链版本号不仅可随区块链系统的节点的状态发生改变而改变,当区块链的数据结构发生改变时,区块链版本号也可改变。比如,增删区块也可导致区块链版本号的改变。
本申请提供的区块链的节点管理方法,将区块链版本号与区块高度进行关联,提高了判定节点对应的区块链版本号是否落后的准确性。
在一个实施例中,所述方法还包括:当接收到辅助节点发送的增删节点请求时,获取所述辅助节点对应的当前区块链版本号,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;若所述辅助节点对应的当前区块链版本号低于所述目标节点对应的当前区块链版本号,忽略所述辅助节点发送的增删节点请求。
具体地,若发送增删节点请求的节点对应的当前区块链版本号落后,说明该节点对区块链系统当前的节点的认知错误,因此忽略该节点发送的增删节点请求。
可以理解,若发送增删节点请求的节点对应的当前区块链版本号落后,该节点发送的其它请求也可忽略。
本申请提供的区块链的节点管理方法,忽略区块链版本号落后的节点发送的请求,保证了区块链系统的稳定性。
如图7所示,在一个具体的实施例中,包括以下步骤:
S702,获取辅助节点对应的当前区块链版本号,得到所述区块链系统对应的当前区块链版本号,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;
S704,若目标节点对应的当前区块链版本号低于所述区块链系统对应的当前区块链版本号,获取变更信息,所述变更信息包括验签信息和增删节点信息;
S706,根据所述验签信息对所述变更信息中的增删节点信息进行验签;
S708,若验签通过,对所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号经历的每一次增删节点过程对应的增删节点确认信息依次进行验签;
S710,当所述增删节点确认信息验签通过时,按照所述区块链系统对应的当前节点更新所述目标节点的连接关系;
S712,将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号。
本申请提供的区块链的节点管理方法,获取区块链系统对应的当前区块链版本号,若目标节点对应的当前区块链版本号低于区块链系统对应的当前区块链版本号,获取变更信息,按照变更信息更新目标节点与区块链系统对应的当前节点之间的连接关系,并将目标节点对应的当前区块链版本号升级为区块链系统对应的当前区块链版本号,这样,区块链系统中的节点通过比对自身对应的当前区块链版本号与区块链系统对应的当前区块链版本号是否一致,来确定自身对区块链系统当前的节点的认知是否落后,同步区块链系统中节点之间对区块链系统当前的节点的认知,从而降低了区块链系统中错误信息产生的可能性。
应该理解的是,虽然图2和图7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2和图7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图8所示,在一个实施例中,提供了一种区块链的节点管理装置800,包括:获取模块802和更新模块804。
获取模块802,用于获取区块链系统对应的当前区块链版本号;
所述获取模块802,还用于若目标节点对应的当前区块链版本号低于所述区块链系统对应的当前区块链版本号,获取变更信息;
更新模块804,用于按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号。
上述区块链的节点管理装置800,获取区块链系统对应的当前区块链版本号,若目标节点对应的当前区块链版本号低于区块链系统对应的当前区块链版本号,获取变更信息,按照变更信息更新目标节点与区块链系统对应的当前节点之间的连接关系,并将目标节点对应的当前区块链版本号升级为区块链系统对应的当前区块链版本号,这样,区块链系统中的节点通过比对自身对应的当前区块链版本号与区块链系统对应的当前区块链版本号是否一致,来确定自身对区块链系统当前的节点的认知是否落后,同步区块链系统中节点之间对区块链系统当前的节点的认知,从而降低了区块链系统中错误信息产生的可能性。
在一个实施例中,所述获取模块802,还用于获取所述区块链系统中辅助节点对应的当前区块链版本号,得到所述区块链系统对应的当前区块链版本号,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;或者,接收所述区块链系统信任的第三方机构发送的所述区块链系统对应的当前区块链版本号。
在一个实施例中,所述更新模块804,还用于按照所述区块链系统对应的当前节点,更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系。
在一个实施例中,所述更新模块804,还用于对所述每一次增删节点过程对应的所述增删节点确认信息依次进行验签;当所述增删节点确认信息验签通过时,按照所述增删节点确认信息对应的增删节点结果更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系。
在一个实施例中,所述区块链的节点管理装置800还包括验签模块,所述验签模块,用于根据所述验签信息对所述增删节点信息进行验签,若验签通过,执行所述按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号的步骤。
在一个实施例中,所述区块链的节点管理装置800还包括广播模块,所述广播模块,用于响应接收到的增删节点请求,将所述增删节点请求广播至辅助节点,其中,所述增删节点请求包括待增删节点的名称、网络地址、公钥、证书和签名中的至少一个,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;当接收到所述辅助节点返回的增删节点确认信息时,按照所述增删节点请求更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并更新所述目标节点对应的当前区块链版本号。
在一个实施例中,所述验签模块,还用于当接收到所述辅助节点返回的增删节点确认信息时,对所述增删节点确认信息进行验签;当所述增删节点确认信息验签通过时,执行所述按照所述增删节点请求更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并更新所述目标节点对应的当前区块链版本号的步骤。
在一个实施例中,所述更新模块804,还用于获取所述区块链系统对应的当前区块高度,根据所述当前区块高度更新所述目标节点对应的当前区块链版本号。
在一个实施例中,所述区块链的节点管理装置800还包括忽略模块,所述获取模块802,还用于当接收到辅助节点发送的增删节点请求时,获取所述辅助节点对应的当前区块链版本号,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;若所述辅助节点对应的当前区块链版本号低于所述目标节点对应的当前区块链版本号,忽略所述辅助节点发送的增删节点请求。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机可读指令,该计算机可读指令被处理器执行时实现以下步骤:
获取区块链系统对应的当前区块链版本号;
若目标节点对应的当前区块链版本号低于所述区块链系统对应的当前区块链版本号,获取变更信息;
按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号。
上述计算机可读存储介质上存储的计算机可读指令在被执行时,获取区块链系统对应的当前区块链版本号,若目标节点对应的当前区块链版本号低于区块链系统对应的当前区块链版本号,获取变更信息,按照变更信息更新目标节点与区块链系统对应的当前节点之间的连接关系,并将目标节点对应的当前区块链版本号升级为区块链系统对应的当前区块链版本号,这样,区块链系统中的节点通过比对自身对应的当前区块链版本号与区块链系统对应的当前区块链版本号是否一致,来确定自身对区块链系统当前的节点的认知是否落后,同步区块链系统中节点之间对区块链系统当前的节点的认知,从而降低了区块链系统中错误信息产生的可能性。
在一个实施例中,所述获取区块链系统对应的当前区块链版本号,包括:获取所述区块链系统中辅助节点对应的当前区块链版本号,得到所述区块链系统对应的当前区块链版本号,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;
或者,接收所述区块链系统信任的第三方机构发送的所述区块链系统对应的当前区块链版本号。
在一个实施例中,所述变更信息包括增删节点信息,若所述变更信息的发送方为所述区块链系统信任的第三方机构,所述增删节点信息包括所述区块链系统对应的当前节点;
所述按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,包括:
按照所述区块链系统对应的当前节点,更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系。
在一个实施例中,若所述变更信息的发送方为辅助节点,所述增删节点信息包括每一次增删节点过程对应的增删节点确认信息以及增删节点结果,所述每一次增删节点过程为所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号经历的增删节点过程,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;
所述按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,包括:
对所述每一次增删节点过程对应的所述增删节点确认信息依次进行验签;
当所述增删节点确认信息验签通过时,按照所述增删节点确认信息对应的增删节点结果更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系。
在一个实施例中,所述变更信息还包括验签信息;
所述方法还包括:
根据所述验签信息对所述增删节点信息进行验签;
若验签通过,执行所述按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号的步骤。
在一个实施例中,所述方法还包括:
响应接收到的增删节点请求,将所述增删节点请求广播至辅助节点,其中,所述增删节点请求包括待增删节点的名称、网络地址、公钥、证书和签名中的至少一个,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;
当接收到所述辅助节点返回的增删节点确认信息时,按照所述增删节点请求更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并更新所述目标节点对应的当前区块链版本号。
在一个实施例中,所述方法还包括:
当接收到所述辅助节点返回的增删节点确认信息时,对所述增删节点确认信息进行验签;
当所述增删节点确认信息验签通过时,执行所述按照所述增删节点请求更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并更新所述目标节点对应的当前区块链版本号的步骤。
在一个实施例中,所述更新所述目标节点对应的当前区块链版本号,包括:
获取所述区块链系统对应的当前区块高度;
根据所述当前区块高度更新所述目标节点对应的当前区块链版本号。
在一个实施例中,所述方法还包括:
当接收到辅助节点发送的增删节点请求时,获取所述辅助节点对应的当前区块链版本号,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;
若所述辅助节点对应的当前区块链版本号低于所述目标节点对应的当前区块链版本号,忽略所述辅助节点发送的增删节点请求。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中储存有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行以下步骤:
获取区块链系统对应的当前区块链版本号;
若目标节点对应的当前区块链版本号低于所述区块链系统对应的当前区块链版本号,获取变更信息;
按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号。
上述计算机设备,获取区块链系统对应的当前区块链版本号,若目标节点对应的当前区块链版本号低于区块链系统对应的当前区块链版本号,获取变更信息,按照变更信息更新目标节点与区块链系统对应的当前节点之间的连接关系,并将目标节点对应的当前区块链版本号升级为区块链系统对应的当前区块链版本号,这样,区块链系统中的节点通过比对自身对应的当前区块链版本号与区块链系统对应的当前区块链版本号是否一致,来确定自身对区块链系统当前的节点的认知是否落后,同步区块链系统中节点之间对区块链系统当前的节点的认知,从而降低了区块链系统中错误信息产生的可能性。
在一个实施例中,所述获取区块链系统对应的当前区块链版本号,包括:获取所述区块链系统中辅助节点对应的当前区块链版本号,得到所述区块链系统对应的当前区块链版本号,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;
或者,接收所述区块链系统信任的第三方机构发送的所述区块链系统对应的当前区块链版本号。
在一个实施例中,所述变更信息包括增删节点信息,若所述变更信息的发送方为所述区块链系统信任的第三方机构,所述增删节点信息包括所述区块链系统对应的当前节点;
所述按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,包括:
按照所述区块链系统对应的当前节点,更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系。
在一个实施例中,若所述变更信息的发送方为辅助节点,所述增删节点信息包括每一次增删节点过程对应的增删节点确认信息以及增删节点结果,所述每一次增删节点过程为所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号经历的增删节点过程,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;
所述按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,包括:
对所述每一次增删节点过程对应的所述增删节点确认信息依次进行验签;
当所述增删节点确认信息验签通过时,按照所述增删节点确认信息对应的增删节点结果更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系。
在一个实施例中,所述变更信息还包括验签信息;
所述方法还包括:
根据所述验签信息对所述增删节点信息进行验签;
若验签通过,执行所述按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号的步骤。
在一个实施例中,所述方法还包括:
响应接收到的增删节点请求,将所述增删节点请求广播至辅助节点,其中,所述增删节点请求包括待增删节点的名称、网络地址、公钥、证书和签名中的至少一个,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;
当接收到所述辅助节点返回的增删节点确认信息时,按照所述增删节点请求更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并更新所述目标节点对应的当前区块链版本号。
在一个实施例中,所述方法还包括:
当接收到所述辅助节点返回的增删节点确认信息时,对所述增删节点确认信息进行验签;
当所述增删节点确认信息验签通过时,执行所述按照所述增删节点请求更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并更新所述目标节点对应的当前区块链版本号的步骤。
在一个实施例中,所述更新所述目标节点对应的当前区块链版本号,包括:
获取所述区块链系统对应的当前区块高度;
根据所述当前区块高度更新所述目标节点对应的当前区块链版本号。
在一个实施例中,所述方法还包括:
当接收到辅助节点发送的增删节点请求时,获取所述辅助节点对应的当前区块链版本号,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;
若所述辅助节点对应的当前区块链版本号低于所述目标节点对应的当前区块链版本号,忽略所述辅助节点发送的增删节点请求。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (12)

1.一种区块链的节点管理方法,所述方法包括:
获取区块链系统对应的当前区块链版本号;
若目标节点对应的当前区块链版本号低于所述区块链系统对应的当前区块链版本号,获取变更信息;
按照所述变更信息,更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号。
2.根据权利要求1所述的方法,其特征在于,所述获取区块链系统对应的当前区块链版本号,包括:
获取所述区块链系统中辅助节点对应的当前区块链版本号,得到所述区块链系统对应的当前区块链版本号,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;
或者,接收所述区块链系统信任的第三方机构发送的所述区块链系统对应的当前区块链版本号。
3.根据权利要求1所述的方法,其特征在于,所述变更信息包括增删节点信息,若所述变更信息的发送方为所述区块链系统信任的第三方机构,所述增删节点信息包括所述区块链系统对应的当前节点;
所述按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,包括:
按照所述区块链系统对应的当前节点,更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系。
4.根据权利要求3所述的方法,其特征在于,若所述变更信息的发送方为辅助节点,所述增删节点信息包括每一次增删节点过程对应的增删节点确认信息以及增删节点结果,所述每一次增删节点过程为所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号经历的增删节点过程,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;
所述按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,包括:
对所述每一次增删节点过程对应的所述增删节点确认信息依次进行验签;
当所述增删节点确认信息验签通过时,按照所述增删节点确认信息对应的增删节点结果更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系。
5.根据权利要求3所述的方法,其特征在于,所述变更信息还包括验签信息;
所述方法还包括:
根据所述验签信息对所述增删节点信息进行验签;
若验签通过,执行所述按照所述变更信息更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号的步骤。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应接收到的增删节点请求,将所述增删节点请求广播至辅助节点,其中,所述增删节点请求包括待增删节点的名称、网络地址、公钥、证书和签名中的至少一个,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;
当接收到所述辅助节点返回的增删节点确认信息时,按照所述增删节点请求更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并更新所述目标节点对应的当前区块链版本号。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
当接收到所述辅助节点返回的增删节点确认信息时,对所述增删节点确认信息进行验签;
当所述增删节点确认信息验签通过时,执行所述按照所述增删节点请求更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并更新所述目标节点对应的当前区块链版本号的步骤。
8.根据权利要求6所述的方法,其特征在于,所述更新所述目标节点对应的当前区块链版本号,包括:
获取所述区块链系统对应的当前区块高度;
根据所述当前区块高度更新所述目标节点对应的当前区块链版本号。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当接收到辅助节点发送的增删节点请求时,获取所述辅助节点对应的当前区块链版本号,所述辅助节点为所述区块链系统中除所述目标节点外的其它节点;
若所述辅助节点对应的当前区块链版本号低于所述目标节点对应的当前区块链版本号,忽略所述辅助节点发送的增删节点请求。
10.一种区块链的节点管理装置,所述装置包括:
获取模块,用于获取区块链系统对应的当前区块链版本号;
所述获取模块,还用于若目标节点对应的当前区块链版本号低于所述区块链系统对应的当前区块链版本号,获取变更信息;
更新模块,用于按照所述变更信息,更新所述目标节点与所述区块链系统对应的当前节点之间的连接关系,并将所述目标节点对应的当前区块链版本号升级为所述区块链系统对应的当前区块链版本号。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机可执行指令,所述计算机可执行指令被处理器执行时,使得所述处理器执行权利要求1至9中任一项所述方法的步骤。
12.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行权利要求1至9中任一项所述方法的步骤。
CN201910831068.7A 2019-09-04 2019-09-04 区块链的节点管理方法、装置、存储介质和计算机设备 Active CN110557452B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910831068.7A CN110557452B (zh) 2019-09-04 2019-09-04 区块链的节点管理方法、装置、存储介质和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910831068.7A CN110557452B (zh) 2019-09-04 2019-09-04 区块链的节点管理方法、装置、存储介质和计算机设备

Publications (2)

Publication Number Publication Date
CN110557452A true CN110557452A (zh) 2019-12-10
CN110557452B CN110557452B (zh) 2022-07-29

Family

ID=68739078

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910831068.7A Active CN110557452B (zh) 2019-09-04 2019-09-04 区块链的节点管理方法、装置、存储介质和计算机设备

Country Status (1)

Country Link
CN (1) CN110557452B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111338574A (zh) * 2020-02-20 2020-06-26 平安科技(深圳)有限公司 基于区块链的数据自修复方法、装置、介质及电子设备
CN111381866A (zh) * 2020-05-29 2020-07-07 支付宝(杭州)信息技术有限公司 区块链系统的版本升级方法、系统、及装置
CN113438109A (zh) * 2021-06-23 2021-09-24 预言机(重庆)科技有限公司 一种基于网络节点的区块链协议升级方法及系统
CN113872923A (zh) * 2020-06-30 2021-12-31 成都质数斯达克科技有限公司 基于区块链系统的交易方法、更新方法、装置、设备及存储介质
CN114189441A (zh) * 2021-12-01 2022-03-15 北京众享比特科技有限公司 用于对区块链中节点进行升级的方法及其相关产品
CN115225639A (zh) * 2022-09-15 2022-10-21 杭州趣链科技有限公司 共识可信集群的变更方法、装置、计算机设备及介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103024065A (zh) * 2012-12-25 2013-04-03 曙光信息产业(北京)有限公司 用于云存储系统的系统配置管理方法
CN107040594A (zh) * 2017-04-12 2017-08-11 山大地纬软件股份有限公司 基于pbft的许可区块链节点准入的方法及装置
CN107171829A (zh) * 2017-04-24 2017-09-15 杭州趣链科技有限公司 一种基于bft共识算法实现的动态节点管理方法
CN107579848A (zh) * 2017-08-30 2018-01-12 上海保险交易所股份有限公司 实用拜占庭容错共识机制中动态更改共识节点的方法
CN108365993A (zh) * 2018-03-09 2018-08-03 深圳前海微众银行股份有限公司 区块链节点动态变更方法、系统和计算机可读存储介质
WO2019011179A1 (zh) * 2017-07-10 2019-01-17 腾讯科技(深圳)有限公司 证书管理方法、系统、网络设备及计算机可读存储介质
CN109408551A (zh) * 2018-08-06 2019-03-01 杭州复杂美科技有限公司 数据查询方法及系统、共识方法及系统、设备和存储介质
US20190238327A1 (en) * 2018-01-30 2019-08-01 Baidu Online Network Technology (Beijing) Co., Ltd. Cross-blockchain data access method, apparatus and system, and computer readable medium

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103024065A (zh) * 2012-12-25 2013-04-03 曙光信息产业(北京)有限公司 用于云存储系统的系统配置管理方法
CN107040594A (zh) * 2017-04-12 2017-08-11 山大地纬软件股份有限公司 基于pbft的许可区块链节点准入的方法及装置
CN107171829A (zh) * 2017-04-24 2017-09-15 杭州趣链科技有限公司 一种基于bft共识算法实现的动态节点管理方法
WO2019011179A1 (zh) * 2017-07-10 2019-01-17 腾讯科技(深圳)有限公司 证书管理方法、系统、网络设备及计算机可读存储介质
CN107579848A (zh) * 2017-08-30 2018-01-12 上海保险交易所股份有限公司 实用拜占庭容错共识机制中动态更改共识节点的方法
US20190238327A1 (en) * 2018-01-30 2019-08-01 Baidu Online Network Technology (Beijing) Co., Ltd. Cross-blockchain data access method, apparatus and system, and computer readable medium
CN108365993A (zh) * 2018-03-09 2018-08-03 深圳前海微众银行股份有限公司 区块链节点动态变更方法、系统和计算机可读存储介质
CN109408551A (zh) * 2018-08-06 2019-03-01 杭州复杂美科技有限公司 数据查询方法及系统、共识方法及系统、设备和存储介质

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111338574A (zh) * 2020-02-20 2020-06-26 平安科技(深圳)有限公司 基于区块链的数据自修复方法、装置、介质及电子设备
CN111338574B (zh) * 2020-02-20 2022-07-08 平安科技(深圳)有限公司 基于区块链的数据自修复方法、装置、介质及电子设备
CN111381866A (zh) * 2020-05-29 2020-07-07 支付宝(杭州)信息技术有限公司 区块链系统的版本升级方法、系统、及装置
CN113872923A (zh) * 2020-06-30 2021-12-31 成都质数斯达克科技有限公司 基于区块链系统的交易方法、更新方法、装置、设备及存储介质
CN113872923B (zh) * 2020-06-30 2023-06-06 成都质数斯达克科技有限公司 基于区块链系统的交易方法、更新方法、装置、设备及存储介质
CN113438109A (zh) * 2021-06-23 2021-09-24 预言机(重庆)科技有限公司 一种基于网络节点的区块链协议升级方法及系统
CN114189441A (zh) * 2021-12-01 2022-03-15 北京众享比特科技有限公司 用于对区块链中节点进行升级的方法及其相关产品
CN115225639A (zh) * 2022-09-15 2022-10-21 杭州趣链科技有限公司 共识可信集群的变更方法、装置、计算机设备及介质
CN115225639B (zh) * 2022-09-15 2022-12-27 杭州趣链科技有限公司 共识可信集群的变更方法、装置、计算机设备及介质

Also Published As

Publication number Publication date
CN110557452B (zh) 2022-07-29

Similar Documents

Publication Publication Date Title
CN110557452B (zh) 区块链的节点管理方法、装置、存储介质和计算机设备
CN107579848B (zh) 实用拜占庭容错共识机制中动态更改共识节点的方法
CN111163182B (zh) 基于区块链的设备注册方法、装置、电子设备和存储介质
KR20210057149A (ko) 스마트 계약 기반 데이터 처리 방법, 기기 및 저장 매체
CN111291000B (zh) 基于区块链的文件获取方法、设备及存储介质
CN108769230B (zh) 交易数据存储方法、装置、服务器及存储介质
CN109522363B (zh) 基于区块链的云平台同步方法、系统、设备及存储介质
CN104572320A (zh) 用于确认校正程序的方法以及信息处理设备
CN110417502B (zh) 一种区块链节点时钟共识方法及装置
CN110784495B (zh) 基于区块链的大数据集群系统的发现与配置信息管理方法
CN104052818A (zh) 一种移动终端的版本升级方法及装置
CN111258599B (zh) 固件升级方法、系统和计算机可读存储介质
CN112311779B (zh) 应用于区块链系统的数据访问控制方法及装置
CN110602108A (zh) 基于区块链网络的数据通信方法、装置、设备及存储介质
CN115225639B (zh) 共识可信集群的变更方法、装置、计算机设备及介质
CN110730081A (zh) 基于区块链网络的证书吊销方法、相关设备及介质
CN114338715A (zh) 数据同步方法、区块链系统、终端设备及存储介质
EP1434384A1 (en) Certificate path information management system and certificate management device
CN112131041A (zh) 用于管理数据放置的方法、设备和计算机程序产品
CN106454767A (zh) 一种业务数据同步方法、装置及系统
CN112073961A (zh) Sim卡的状态更新方法及装置、终端及可读存储介质
CN101616002B (zh) 一种用户身份验证方法及装置
EP4220518A1 (en) Blockchain network-based device management method, related device, and storage medium
CN112182009A (zh) 区块链的数据更新方法及装置、可读存储介质
CN111125001A (zh) 快照复制方法、电子设备和计算机程序产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant