CN111049696B - 用于区块链系统的节点管理的方法、节点和计算设备 - Google Patents
用于区块链系统的节点管理的方法、节点和计算设备 Download PDFInfo
- Publication number
- CN111049696B CN111049696B CN202010181765.5A CN202010181765A CN111049696B CN 111049696 B CN111049696 B CN 111049696B CN 202010181765 A CN202010181765 A CN 202010181765A CN 111049696 B CN111049696 B CN 111049696B
- Authority
- CN
- China
- Prior art keywords
- node
- blockchain system
- deleted
- transaction
- vote
- 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
- 238000000034 method Methods 0.000 title claims abstract description 171
- 230000008569 process Effects 0.000 claims abstract description 126
- 230000003993 interaction Effects 0.000 claims abstract description 50
- 238000012790 confirmation Methods 0.000 claims description 71
- 238000004891 communication Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 14
- 238000012217 deletion Methods 0.000 description 12
- 230000037430 deletion Effects 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/30—Decision processes by autonomous network management units using voting and bidding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本说明书的实施例提供了用于区块链系统的节点管理的方法、节点和计算设备。该方法包括:区块链系统中的第一节点与区块链系统中的各个节点进行预投票交互,以确定区块链系统是否处于主节点选举过程中;在区块链系统没有处于主节点选举过程中的情况下,第一节点执行使得待删除节点从区块链系统中被删除的操作;在区块链系统处于主节点选举过程中的情况下,第一节点确定不执行使得待删除节点从区块链系统中被删除的操作。
Description
技术领域
本说明书的实施例涉及区块链技术领域,并且更具体地,涉及用于区块链系统的节点管理的方法、节点和计算设备。
背景技术
区块链技术,也被称为分布式账本技术,是一种由若干个计算设备(在本文中也可以称为节点)共同参与“记账”,共同维护一份完整的分布式数据库的新兴技术。由于区块链技术具有去中心化,公开透明以及不可篡改等各种特性,使得区块链技术已经在众多的领域中得以广泛应用。
发明内容
考虑到现有技术的上述问题,本说明书的实施例提供了用于区块链系统的节点管理的方法、节点和计算设备。
一方面,本说明书的实施例提供了一种用于区块链系统的节点管理的方法,包括:区块链系统中的第一节点与所述区块链系统中的各个节点进行预投票交互,以确定所述区块链系统是否处于主节点选举过程中;在所述区块链系统没有处于主节点选举过程中的情况下,所述第一节点执行使得待删除节点从所述区块链系统中被删除的操作;在所述区块链系统处于主节点选举过程中的情况下,所述第一节点确定不执行使得所述待删除节点从所述区块链系统中被删除的操作。
另一方面,本说明书的实施例提供了一种用于区块链系统的节点管理的方法,包括:区块链系统中的第二节点与所述区块链系统中的第一节点进行预投票交互,以辅助所述第一节点确定所述区块链系统是否处于主节点选举过程中;如果所述第一节点在所述区块链系统没有处于主节点选举过程中的情况下请求从所述区块链系统中删除待删除节点,则所述第二节点执行使得所述待删除节点从所述区块链系统中被删除的操作;其中,如果所述区块链系统处于主节点选举过程中,则所述待删除节点无法从所述区块链系统中被删除。
另一方面,本说明书的实施例提供了一种区块链系统中的节点,包括:交互单元,用于与所述区块链系统中的各个节点进行预投票交互,以确定所述区块链系统是否处于主节点选举过程中;执行单元,用于:在所述区块链系统没有处于主节点选举过程中的情况下,执行使得待删除节点从所述区块链系统中被删除的操作;在所述区块链系统处于主节点选举过程中的情况下,确定不执行使得所述待删除节点从所述区块链系统中被删除的操作。
另一方面,本说明书的实施例提供了一种区块链系统中的节点,包括:交互单元,用于与所述区块链系统中的第一节点进行预投票交互,以辅助所述第一节点确定所述区块链系统是否处于主节点选举过程中;执行单元,用于:如果所述第一节点在所述区块链系统没有处于主节点选举过程中的情况下请求从所述区块链系统中删除待删除节点,则执行使得所述待删除节点从所述区块链系统中被删除的操作;其中,如果所述区块链系统处于主节点选举过程中,则所述待删除节点无法从所述区块链系统中被删除。
可见,在该技术方案中,可以在区块链系统没有处于主节点选举过程中的情况下,执行使得待删除节点从区块链系统中被删除的操作,而在区块链系统处于主节点选举过程中的情况下,确定不执行相应的删除操作。这样,能够有效地避免区块链系统在主节点选举过程中由于删除节点而引起的混乱问题等,从而确保区块链系统在主节点选举过程中的稳定性和可靠性。
附图说明
通过结合附图对本说明书的实施例的更详细的描述,本说明书的实施例的上述以及其它目的、特征和优势将变得更加明显,其中,在本说明书的实施例中,相同的附图标记通常代表相同的元素。
图1A是根据一个实施例的用于区块链系统的节点管理的方法的示意性流程图。
图1B是根据一个实施例的用于区块链系统的节点管理的方法的示意性流程图。
图2是用于区块链系统中的节点管理的一种场景的交互示意图。
图3A是根据一个实施例的区块链系统中的节点的示意性框图。
图3B是根据一个实施例的区块链系统中的节点的示意性框图。
图4A是根据一个实施例的用于区块链系统的节点管理的计算设备的硬件结构图。
图4B是根据一个实施例的用于区块链系统的节点管理的计算设备的硬件结构图。
具体实施方式
现在将参考各实施例讨论本文描述的主题。应当理解的是,讨论这些实施例仅是为了使得本领域技术人员能够更好地理解并且实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离权利要求书的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个实施例可以根据需要,省略、替换或者添加各种过程或组件。
基于区块链技术形成的区块链系统可以包括多个节点。在这多个节点中,一个节点可以被选举为主节点,而其它节点可以作为从节点。主节点可以负责发起交易共识,并且可以负责基于共识通过的交易数据来为区块链创建最新的区块。
主节点可以是根据不同的情况来动态产生的。例如,在区块链系统在进行共识处理之前,可以首先从各个节点中选举产生主节点。再例如,当由于网络延迟、主节点故障等原因而导致主节点和从节点无法进行通信时,可以重新选举出新的主节点。再例如,当大多数节点认为主节点是作恶节点(例如,发送假数据或错误数据等)时,可以重新选举出新的主节点。
基于区块链系统所采用的共识算法,选举主节点的机制可以是不同的。例如,在本说明书中,区块链系统可以采用RAFT算法、实用拜占庭容错(Practical Byzantine FaultTolerance ,PBFT)算法等各种适用的共识算法。
无论基于何种共识算法,主节点选举过程都需要一定的时间来完成。在该过程期间,如果同时进行其它操作,可能会占用带宽,造成超时等,从而可能影响整个区块链系统的稳定性。例如,如果在主节点选举过程中从区块链系统中删除某个节点,而该节点可能还在参与共识处理,这可能会引起区块链系统的消息机制混乱,从而严重影响整个区块链系统的可靠性和稳定性。
鉴于此,在本说明书中,区块链系统中的第一节点可以与各个节点进行预投票交互,来确定区块链系统是否处于主节点选举过程中。在区块链系统没有处于主节点选举过程中的情况下,第一节点可以执行使得待删除节点从区块链系统中被删除的操作。而在区块链系统处于主节点选举过程中的情况下,第一节点可以确定不执行使得待删除节点从区块链系统中被删除的操作。
可见,在该技术方案中,可以在区块链系统没有处于主节点选举过程中的情况下,执行使得待删除节点从区块链系统中被删除的操作,而在区块链系统处于主节点选举过程中的情况下,确定不执行相应的删除操作。这样,能够有效地避免区块链系统在主节点选举过程中由于删除节点而引起的混乱问题等,从而确保区块链系统在主节点选举过程中的稳定性和可靠性。
在本说明书中,区块链系统可以包括公有链系统、私有链系统或联盟链系统。
例如,在一个场景中,区块链系统可以是由第三方支付平台的服务器、境内银行服务器、境外银行服务器、以及若干用户节点作为成员组成的一个联盟链系统。该联盟链的运营方可以依托于该联盟链,来在线部署诸如基于联盟链的跨境转账、资产转移等在线业务。
然而,考虑到公有链系统、私有链系统和联盟链系统部署的节点规模,本说明书的技术方案将在联盟链系统或私有链系统中产生更佳的效果,但是本说明书的技术方案同样适用于公有链系统。
下面将结合具体实施例来描述本说明书中的技术方案。
图1A是根据一个实施例的用于区块链系统的节点管理的方法的示意性流程图。
如图1A所示,在步骤102A中,区块链系统中的第一节点可以与区块链系统中的各个节点进行预投票交互,以确定区块链系统是否处于主节点选举过程中。
在步骤104A中,在区块链系统没有处于主节点选举过程中的情况下,第一节点可以执行使得待删除节点从区块链系统中被删除的操作。
在步骤106A中,在区块链系统处于主节点选举过程中的情况下,第一节点可以确定不执行使得待删除节点从区块链系统中被删除的操作。
可见,在该技术方案中,可以在区块链系统没有处于主节点选举过程中的情况下,执行使得待删除节点从区块链系统中被删除的操作,而在区块链系统处于主节点选举过程中的情况下,确定不执行相应的删除操作。这样,能够有效地避免区块链系统在主节点选举过程中由于删除节点而引起的混乱等问题,从而确保区块链系统在主节点选举过程中的稳定性和可靠性。
在本说明书中,待删除节点可以是区块链系统中的任一节点。可以出于各种原因而要从区块链系统中删除该节点。例如,如果该节点出于自身的原因(比如,资源限制、管理问题等等)需要退出区块链系统,则可以将该节点从区块链系统中删除。再例如,如果该节点由于某种故障而无法与其它节点进行通信,可以将该节点从区块链系统中删除。再例如,如果该节点是作恶节点(例如,发送假消息或者错误消息),可以将该节点从区块链系统中删除。
例如,删除节点操作可以由待删除节点本身发起。此时,上述第一节点可以是待删除节点,即第一节点和待删除节点指的是同一节点。
此外,删除节点操作也可以由区块链系统中除了待删除节点之外的节点发起。例如,区块链系统中的大多数节点可以在线下针对需要删除某个节点达成一致。比如,大多数节点认为某个节点出现故障或者是作恶节点,因此需要删除该节点。然后,达成一致的节点可以将线下针对需要删除该节点的一致意见转换为区块链系统的线上合约。该过程可以利用公钥和私钥来完成。在这种情况下,第一节点可以是与待删除节点不同的节点。例如,第一节点可以是非拜占庭节点。
在一个实施例中,在步骤102A中,第一节点可以向各个节点发送预投票(pre-vote)消息。预投票消息可以包括用于识别待删除节点的信息。
例如,第一节点可以向各个节点广播预投票消息。再例如,第一节点可以向相邻的节点发送预投票消息,然后相邻的节点可以将预投票消息转发至其它节点,这样通过转发机制使得区块链系统中的各个节点接收到预投票消息。第一节点还可以采用其它适用的通信方式来发送预投票消息,本说明书对此不作限定。
然后,第一节点可以接收各个节点针对预投票消息发送的预投票确认(pre-vote-ack)消息。例如,第一节点可能接收到M个节点发送的M个预投票确认消息。M为正整数。
在一种情况下,第一节点可能接收到区块链系统中的所有其它节点发送的预投票确认消息。此时,M等于区块链系统中的节点总数减去1得到的值。
在另一种情况下,第一节点可以由于各种原因(例如,网络延迟、节点故障等等)而没有接收到所有其它节点发送的预投票确认消息。此时,M可以小于区块链系统中的节点总数减去1得到的值。
预投票确认消息可以指示发送该预投票确认消息的节点的共识状态。例如,共识状态可以包括主节点选举状态、同步状态、正常处理状态、初始化状态等等。
这样,第一节点基于接收到的M个预投票确认消息,可以确定区块链系统是否处于主节点选举过程中。
可见,在该实施例中,通过预投票消息和预投票确认消息的交互,可以高效地确定区块链系统是否正在进行主节点选举,从而辅助第一节点判断是否能够执行删除节点的操作,由此能够避免影响区块链系统在主节点选举过程中的稳定性。
在一个实施例中,预投票消息可以包括待删除节点的标识和网络地址。例如,预投票消息的格式可以如下:pre-vote<i, address>,其中,i表示待删除节点的标识,address表示待删除节点的网络地址。比如,网络地址可以包括域名、互联网协议(InternetProtocol,IP)端口等。
在一个实施例中,预投票确认消息可以包括发送该预投票确认消息的节点的共识状态信息、标识以及当前主节点标识。例如,预投票确认消息的格式可以如下:pre-vote-ack<consensus_status, leader_id,j >,其中,consensus_status可以表示对应节点的共识状态,j可以表示对应节点的标识,leader_id可以表示主节点标识。
在一个实施例中,待删除节点可能是当前主节点。那么,上述M个预投票确认消息可以是M个节点在区块链系统通过主节点选举过程选举出与待删除节点不同的新主节点之后发送的。
例如,其它节点接收到第一节点的预投票消息之后,发现待删除节点是当前主节点。这样,其它节点可以通过达成共识来发起主节点选举过程,从而选举与待删除节点不同的节点作为新主节点。在产生新主节点之后,这些节点可以返回针对预投票消息的预投票确认消息。由此,能够有效避免由于误删除主节点而导致的稳定性和可靠性问题。
在一个实施例中,如果大多数预投票确认消息都指示主节点选举状态,则第一节点可以确定区块链系统处于主节点选举过程中。此处的大多数预投票确认消息可以至少是法定数量的预投票确认消息。那么,应当理解的是,上述M可以大于法定数量。在一些场景中,法定数量可以称为quorum数量。在本文中,假设法定数量为K。法定数量K可以与区块链系统所使用的共识算法相关联。例如,在RAFT算法中,假设区块链系统中存在N个节点,而N个节点中最多存在f个故障节点,则法定数量可以是f+1。在PBFT算法中,假设N个节点中最多存在f个问题节点和f个故障节点,则法定数量可以是2f+1。
这样,如果M个预投票确认消息中的至少K个预投票确认消息都指示主节点选举状态,则第一节点可以确定区块链系统处于主节点选举过程中;而如果M个预投票确认消息中的至少K个预投票确认消息都指示与主节点选举状态不同的另一共识状态,则第一节点可以确定区块链系统没有处于主节点选举过程中。
可见,通过基于预投票确认消息,可以高效地确定区块链系统是否正在进行主节点选举。
那么,在一个实施例中,在步骤104A中,在区块链系统没有处于主节点选举过程中的情况下,第一节点可以向各个节点发送交易请求。该交易请求可以用于请求执行删除待删除节点的交易。
区块链系统中的各个节点在达成执行该交易的共识之后执行该交易,从而使得待删除节点从区块链系统中被删除。例如,区块链系统中的至少法定数量的节点达成执行交易的共识之后,这些节点将执行该交易。比如,每个节点可以针对待删除节点来更新配置信息,例如,在配置信息中删除待删除节点的信息等等,从而使得待删除节点从区块链系统中被删除。
在一个实施例中,在步骤106A中,在区块链系统处于主节点选举过程中的情况下,第一节点可以确定不向各个节点发送用于请求执行删除待删除节点的交易的交易请求。这样,能够避免影响区块链系统在主节点选举过程中的稳定性。
此外,可以理解的是,如果第一节点在确定区块链系统正在进行主节点选举之后,仍然发送了针对删除待删除节点的交易请求。此时,该交易请求将不会通过共识,由此不会被执行。也就是说,区块链系统中的各个节点将在达成共识中不会执行该交易,从而能够避免影响区块链系统在主节点选举过程中的稳定性。
在一个实施例中,第一节点可以为待删除节点,也就是第一节点和待删除节点是同一节点。此时,图1A所示出的方法是由待删除节点执行的。
待删除节点(此处也是第一节点)在进行预投票交互期间或之后(例如,在待删除节点发送预投票消息之后),向各个节点发送另一交易请求。该另一交易请求用于请求执行另一交易,该另一交易与删除该删除节点的交易是不同的。此时,各个节点可以在达成不执行该另一交易的共识之后,拒绝执行该另一交易。
由于待删除节点本身与各个节点进行了预投票交互,所以待删除节点将有可能被删除,那么除了针对删除待删除节点的交易请求之外,待删除节点发起的其它交易请求将不会被区块链系统中的节点接受。也就是说,如果待删除节点发起了与其它节点的预投票交互,区块链系统将仅接受待删除节点的删除自身的交易请求,而不接受其它类型的交易请求。这样,能够进一步确保区块链系统在删除某个节点时的稳定性和可靠性。
图1B是根据一个实施例的用于区块链系统的节点管理的方法的示意性流程图。图1B的方法可以由区块链系统中的任何正常节点来执行。为了便于描述,此处将该节点称为第二节点。例如,第二节点可以是非拜占庭节点。
如图1B所示,在步骤102B中,区块链系统中的第二节点可以与区块链系统中的第一节点进行预投票交互,以辅助第一节点确定区块链系统是否处于主节点选举过程中。
在步骤104B中,如果第一节点在区块链系统没有处于主节点选举过程中的情况下请求从区块链系统中删除待删除节点,则第二节点执行使得待删除节点从区块链系统中被删除的操作。
其中,如果区块链系统处于主节点选举过程中,则待删除节点无法从区块链系统中被删除。
可见,在该技术方案中,在区块链系统没有处于主节点选举过程中的情况下使得待删除节点从区块链系统中被删除,而在区块链系统处于主节点选举过程中的情况下待删除节点不会被删除,这样,能够有效地避免区块链系统在主节点选举过程中由于删除节点而引起的混乱等问题,从而确保区块链系统在主节点选举过程中的稳定性和可靠性。
在一个实施例中,在步骤102B中,第二节点可以从第一节点接收预投票消息。预投票消息可以包括用于识别待删除节点的信息。
第二节点可以向第一节点发送针对预投票消息的预投票确认消息。预投票确认消息可以指示第二节点的共识状态。
在一个实施例中,预投票消息可以包括待删除节点的标识和网络地址。
在一个实施例中,预投票确认消息可以包括第二节点的共识状态信息、标识以及当前主节点标识。
上文已经在图1A的实施例中详细描述了预投票消息和预投票确认消息,此处将不再赘述。
在一个实施例中,待删除节点可以是当前主节点。这样,第二节点可以等待选举与待删除节点不同的新主节点。在产生新主节点之后,第二节点可以向第一节点发送预投票确认消息。例如,第二节点在接收到预投票消息之后,发现待删除节点是当前主节点。然后,第二节点可以与其它节点达成共识进行主节点选举,从而选举产生新主节点。之后,第二节点可以发送预投票确认消息。由此,能够有效地避免由于误删除主节点而导致的稳定性和可靠性问题。
在一个实施例中,在步骤104B中,第二节点接收第一节点在区块链系统没有处于主节点选举过程中的情况下发送的交易请求。该交易请求可以用于执行删除待删除节点的交易。
第二节点可以在与其它节点达成执行该交易的共识之后执行该交易,使得待删除节点从区块链系统中被删除。例如,第二节点可以确定至少法定数量的节点达成执行该交易的共识。法定数量的节点可以包括第二节点本身。然后,第二节点可以执行该交易,比如针对待删除节点更新配置信息,从而使得待删除节点从区块链系统被删除。
此外,可以理解的是,第二节点可能接收到第一节点在区块链系统处于主节点选举过程中的情况下发送的交易请求,比如该交易请求用于请求执行删除待删除节点的交易。此时,第二节点与其它节点达成不执行该交易的共识,例如,至少法定数量的节点达成该共识。这样,这些节点都会拒绝执行该交易。由此,能够避免在主节点选举过程中删除节点,从而能够确保区块链系统的稳定性和可靠性。
在一个实施例中,第一节点可以为待删除节点。第二节点可能接收到第一节点在进行预投票交互期间或者之后发送的另一交易请求。例如,第二节点接收第一节点在发送预投票消息之后发送的另一交易请求。该另一交易请求可以用于请求执行另一交易,该另一交易与删除待删除节点的交易不同。
此时,第二节点将与其它节点达成不执行该另一交易的共识,从而拒绝执行该另一交易。也就是说,如果待删除节点发起了与其它节点的预投票交互,区块链系统将仅接受待删除节点的删除自身的交易请求,而不接受其它类型的交易请求。这样,能够进一步确保区块链系统在删除某个节点时的稳定性和可靠性。
为了便于理解,下面将结合具体例子进行描述。应当理解的是,以下例子仅是为了帮助本领域技术人员更好地理解本说明书中的技术方案,而并非限制其范围。
图2是用于区块链系统中的节点管理的一种场景的交互示意图。
在图2中,假设区块链系统包括节点R0、R1、R2和R3,其中待删除节点为R0。另外,进一步假设待删除节点R0自身决定要退出区块链系统,由此,待删除节点R0可以发起预投票交互。
如图2所示,待删除节点R0可以向节点R1、R2和R3发送pre-vote消息。例如,pre-vote消息可以具有如下格式:pre-vote<R0的标识, R0的网络地址>。
节点R1、R2和R3在接收到pre-vote消息之后,可以向待删除节点返回pre-vote-ack消息。例如,pre-vote-ack消息可以具有如下格式:pre-vote-ack<consensus_status,leader_id,j >。
在一种情况下,如上所述,如果节点R1、R2和R3在接收到pre-vote消息之后,发现待删除节点R0是当前主节点,可以达成共识来进行主节点选举过程,从而选举产生新主节点。之后,节点R1、R2和R3可以发送pre-vote-ack消息。例如,图2中示出了该阶段。
如果待删除节点不是当前主节点,则节点R1、R2和R3在接收到pre-vote消息之后,可以直接返回pre-vote-ack消息。
对于节点R1来说,consensus_status可以表示节点R1的共识状态,leader_id可以表示当前主节点标识,j可以表示节点R1的标识。
对于节点R2来说,consensus_status可以表示节点R2的共识状态,leader_id可以表示当前主节点标识,j可以表示节点R2的标识。
对于节点R3来说,consensus_status可以表示节点R3的共识状态,leader_id可以表示当前主节点标识,j可以表示节点R3的标识。
待删除节点在接收3个pre-vote-ack消息之后,确定区块链系统是否处于主节点选举过程中。
例如,如果3个pre-vote-ack消息中的2个消息或者3个消息都指示主节点选举状态,也就是说,节点R1、R2和R3正在选举主节点,则待删除节点R0可以确定区块链系统处于主节点选举状态。此时,待删除节点R0可以不发送用于请求执行删除节点R0的交易的交易请求。这样,在区块链系统处于主节点选举状态时,将不会从区块链系统中删除节点。
再例如,如果3个pre-vote-ack消息中的2个消息或者3个消息都指示除了主节点选举状态之外的另一共识状态,也就是说,节点R1、R2和R3没有在选举主节点,则待删除节点R0可以确定区块链系统没有处于主节点选举状态。
此时,如图2所示,待删除节点R0可以向节点R1、R2和R3发送交易请求,该交易请求用于请求执行删除节点R0的交易。
接下来,节点R1、R2和R3可以在达成执行该交易的共识之后,都执行该交易,例如,针对节点R0来更新配置信息。由此,使得节点R0从区块链系统中删除。
应当理解的是,在图2的例子中,为了简化图示,仅描绘了预投票、预投票确认和交易请求三个阶段,而并未示出其它阶段,但是这并不表明不包括其它相关阶段。例如,如果区块链系统并未处于主节点选举过程中,在交易请求这个阶段之后,还存在对执行交易的共识阶段以及执行交易的阶段等等。
应当理解的是,在本说明书的技术方案中,可以由与待删除节点不同的节点来发起删除待删除节点的交易。例如,假设待删除节点是R1。节点R0、R2和R3可以在线下达成删除节点R1的共识,然后通过公钥和私钥转换为区块链系统的线上合约。节点R0可以发送预投票消息,此时,预投票消息可以包括节点R1的标识和网络地址。其它节点可以返回预投票确认消息。其具体过程与上述图2的过程是类似的,此处不再赘述。
可见,在该技术方案中,可以在区块链系统没有处于主节点选举过程中的情况下,执行使得待删除节点从区块链系统中被删除的操作,而在区块链系统处于主节点选举过程中的情况下,确定不执行相应的删除操作。这样,能够有效地避免区块链系统在主节点选举过程中由于删除节点而引起的混乱等问题,从而确保区块链系统在主节点选举过程中的稳定性和可靠性。
图3A是根据一个实施例的区块链系统中的节点的示意性框图。
如图3A所示,节点300A可以包括交互单元302A和执行单元304A。
交互单元302A可以与区块链系统中的各个节点进行预投票交互,以确定区块链系统是否处于主节点选举过程中。在区块链系统没有处于主节点选举过程中的情况下,执行单元304A可以执行使得待删除节点从区块链系统中被删除的操作。在区块链系统处于主节点选举过程中的情况下,执行单元304A可以确定不执行使得待删除节点从区块链系统中被删除的操作。
可见,在该技术方案中,可以在区块链系统没有处于主节点选举过程中的情况下,执行使得待删除节点从区块链系统中被删除的操作,而在区块链系统处于主节点选举过程中的情况下,确定不执行相应的删除操作。这样,能够有效地避免区块链系统在主节点选举过程中由于删除节点而引起的混乱等问题,从而确保区块链系统在主节点选举过程中的稳定性和可靠性。
在一个实施例中,交互单元302A可以向各个节点发送预投票消息,其中,预投票消息包括用于识别待删除节点的信息。交互单元302A可以接收各个节点中的M个节点针对预投票消息发送的M个预投票确认消息,其中,每个预投票确认消息指示发送该预投票确认消息的节点的共识状态,M为正整数。交互单元302A可以基于M个预投票确认消息,确定区块链系统是否处于主节点选举过程中。
在另一实施例中,待删除节点可以是当前主节点。M个预投票确认消息可以是M个节点在区块链系统通过主节点选举过程选举出与待删除节点不同的新主节点之后发送的。
在另一实施例中,如果M个预投票确认消息中的至少K个预投票确认消息都指示主节点选举状态,则交互单元302A可以确定区块链系统处于主节点选举过程中,其中,K是基于区块链系统所使用的共识算法确定的法定数量。
如果M个预投票确认消息中的至少K个预投票确认消息都指示与主节点选举状态不同的另一共识状态,则交互单元302A可以确定区块链系统没有处于主节点选举过程中。
在另一实施例中,预投票消息可以包括待删除节点的标识和网络地址。
在另一实施例中,每个预投票确认消息可以包括发送该预投票确认消息的节点的共识状态信息、标识以及当前主节点标识。
在另一实施例中,在区块链系统没有处于主节点选举过程中的情况下,执行单元304A可以向各个节点发送交易请求,其中,交易请求用于请求执行删除待删除节点的交易。
其中,各个节点达成执行交易的共识之后执行交易,使得待删除节点从区块链系统中被删除。
在另一实施例中,在区块链系统处于主节点选举过程中的情况下,执行单元304A可以确定不向各个节点发送交易请求,其中,交易请求用于请求执行删除待删除节点的交易。
在另一实施例中,节点可以为待删除节点。
执行单元304A还可以在进行预投票交互期间或者之后,向各个节点发送另一交易请求,其中,另一交易请求用于请求执行另一交易,另一交易与删除待删除节点的交易不同。其中,各个节点在达成不执行另一交易的共识之后拒绝执行另一交易。
在另一实施例中,区块链系统可以包括联盟链系统。
装置300A的各个单元可以执行图1A和图2的方法实施例中的相应步骤,因此,为了描述的简洁,装置300A的各个单元的具体操作和功能此处不再赘述。
上述装置300A可以采用硬件实现,也可以采用软件实现,或者可以通过软硬件的组合来实现。例如,装置300A在采用软件实现时,其可以通过其所在设备的处理器将存储器(比如非易失性存储器)中对应的可执行指令读取到内存中运行来形成。
图3B是根据一个实施例的区块链系统中的节点的示意性框图。
如图3B所示,图3B的节点300B可以包括交互单元302B和执行单元304B。
交互单元302B可以与区块链系统中的第一节点进行预投票交互,以辅助第一节点确定区块链系统是否处于主节点选举过程中。
如果第一节点在区块链系统没有处于主节点选举过程中的情况下请求从区块链系统中删除待删除节点,则执行单元304B可以执行使得待删除节点从区块链系统中被删除的操作;其中,如果区块链系统处于主节点选举过程中,则待删除节点无法从区块链系统中被删除。
可见,在该技术方案中,在区块链系统没有处于主节点选举过程中的情况下使得待删除节点从区块链系统中被删除,而在区块链系统处于主节点选举过程中的情况下待删除节点不会被删除,这样,能够有效地避免区块链系统在主节点选举过程中由于删除节点而引起的混乱等问题,从而确保区块链系统在主节点选举过程中的稳定性和可靠性。
在一个实施例中,交互单元302B可以从第一节点接收预投票消息,其中,预投票消息包括用于识别待删除节点的信息。交互单元304B可以向第一节点发送针对预投票消息的预投票确认消息,其中,预投票确认消息指示节点300B的共识状态。
在另一实施例中,待删除节点可以是当前主节点。交互单元302B可以在区块链系统通过主节点选举过程选举出与待删除节点不同的新主节点之后,向第一节点发送预投票确认消息。
在另一实施例中,预投票消息可以包括待删除节点的标识和网络地址。
在另一实施例中,预投票确认消息可以包括节点300B的共识状态信息、标识以及当前主节点标识。
在另一实施例中,执行单元304B可以接收第一节点在区块链系统没有处于主节点选举过程中的情况下发送的交易请求,其中,交易请求用于请求执行删除待删除节点的交易。执行单元304B可以在与区块链系统中的各个节点达成执行交易的共识之后执行交易,使得待删除节点从区块链系统中被删除。
在另一实施例中,第一节点可以为待删除节点。
执行单元304B还可以接收第一节点在进行预投票交互期间或者之后发送的另一交易请求,其中,另一交易请求用于请求执行另一交易,另一交易与删除待删除节点的交易不同。执行单元304B可以在与区块链系统中的各个节点达成不执行另一交易的共识之后,拒绝执行另一交易。
在另一实施例中,区块链系统可以包括联盟链系统。
装置300B的各个单元可以执行图1B和图2的方法实施例中的相应步骤,因此,为了描述的简洁,装置300B的各个单元的具体操作和功能此处不再赘述。
上述装置300B可以采用硬件实现,也可以采用软件实现,或者可以通过软硬件的组合来实现。例如,装置300B在采用软件实现时,其可以通过其所在设备的处理器将存储器(比如非易失性存储器)中对应的可执行指令读取到内存中运行来形成。
图4A是根据一个实施例的用于区块链系统的节点管理的计算设备的硬件结构图。如图4A所示,计算设备400A可以包括至少一个处理器402A、存储器404A、内存406A和通信接口408A,并且至少一个处理器402A、存储器404A、内存406A和通信接口408A经由总线410A连接在一起。至少一个处理器402A执行在存储器404A中存储或编码的至少一个可执行指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器404A中存储的可执行指令在被至少一个处理器402A执行时,使得计算设备实现以上结合图1A和2描述的各种过程。
计算设备400A可以采用本领域任何适用的形式来实现,例如,其包括但不限于台式计算机、膝上型计算机、智能电话、平板计算机、消费电子设备、可穿戴智能设备等等。
图4B是根据一个实施例的用于区块链系统的节点管理的计算设备的硬件结构图。如图4B所示,计算设备400B可以包括至少一个处理器402B、存储器404B、内存406B和通信接口408B,并且至少一个处理器402B、存储器404B、内存406B和通信接口408B经由总线410B连接在一起。至少一个处理器402B执行在存储器404B中存储或编码的至少一个可执行指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器404B中存储的可执行指令在被至少一个处理器402B执行时,使得计算设备实现以上结合图1B和2描述的各种过程。
计算设备400B可以采用本领域任何适用的形式来实现,例如,其包括但不限于台式计算机、膝上型计算机、智能电话、平板计算机、消费电子设备、可穿戴智能设备等等。
本说明书的实施例还提供了一种机器可读存储介质。该机器可读存储介质可以存储有可执行指令,可执行指令在被机器执行时使得机器实现上面参照图1A和图2描述的关于第一节点的方法实施例的具体过程。
本说明书的实施例还提供了一种机器可读存储介质。该机器可读存储介质可以存储有可执行指令,可执行指令在被机器执行时使得机器实现上面参照图1B和图2描述的关于第二节点的方法实施例的具体过程。
例如,机器可读存储介质可以包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、电可擦除可编程只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、静态随机存取存储器(Static Random Access Memory,SRAM)、硬盘、闪存等等。
应当理解的是,本说明书中的各个实施例均采用递进的方式来描述,各个实施例之间相同或相似的部分相互参见即可,每个实施例重点说明的都是与其它实施例的不同之处。例如,对于上述关于装置的实施例、关于计算设备的实施例以及关于机器可读存储介质的实施例而言,由于它们基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上文对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
应当理解的是,对于本领域普通技术人员来说,对本说明书中的实施例进行的各种修改将是显而易见的,并且可以在不脱离权利要求书的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。
Claims (34)
1.一种用于区块链系统的节点管理的方法,包括:
区块链系统中的第一节点与所述区块链系统中的各个节点进行预投票交互,以确定所述区块链系统是否处于主节点选举过程中;
在所述区块链系统没有处于主节点选举过程中的情况下,所述第一节点执行使得待删除节点从所述区块链系统中被删除的操作;
在所述区块链系统处于主节点选举过程中的情况下,所述第一节点确定不执行使得所述待删除节点从所述区块链系统中被删除的操作;
其中,所述区块链系统中的第一节点与所述区块链系统中的各个节点进行预投票交互,包括:
所述第一节点向所述各个节点发送预投票消息,其中,所述预投票消息包括用于识别所述待删除节点的信息;
所述第一节点接收所述各个节点中的M个节点针对所述预投票消息发送的M个预投票确认消息,其中,每个预投票确认消息指示发送该预投票确认消息的节点的共识状态,M为正整数;
所述第一节点基于所述M个预投票确认消息,确定所述区块链系统是否处于主节点选举过程中。
2.根据权利要求1所述的方法,其中,所述待删除节点是当前主节点;
所述M个预投票确认消息是所述M个节点在所述区块链系统通过主节点选举过程选举出与所述待删除节点不同的新主节点之后发送的。
3.根据权利要求1或2所述的方法,其中,所述第一节点基于所述M个预投票确认消息,确定所述区块链系统是否处于主节点选举过程中,包括:
如果所述M个预投票确认消息中的至少K个预投票确认消息都指示主节点选举状态,则所述第一节点确定所述区块链系统处于主节点选举过程中,其中,K是基于所述区块链系统所使用的共识算法确定的法定数量;
如果所述M个预投票确认消息中的至少K个预投票确认消息都指示与主节点选举状态不同的另一共识状态,则所述第一节点确定所述区块链系统没有处于主节点选举过程中。
4.根据权利要求1或2所述的方法,其中,所述预投票消息包括所述待删除节点的标识和网络地址。
5.根据权利要求1或2所述的方法,其中,所述每个预投票确认消息包括发送该预投票确认消息的节点的共识状态信息、标识以及当前主节点标识。
6.根据权利要求1或2所述的方法,其中,在所述区块链系统没有处于主节点选举过程中的情况下,所述第一节点执行使得所述待删除节点从所述区块链系统中被删除的操作,包括:
在所述区块链系统没有处于主节点选举过程中的情况下,所述第一节点向所述各个节点发送交易请求,其中,所述交易请求用于请求执行删除所述待删除节点的交易;
其中,所述各个节点达成执行所述交易的共识之后执行所述交易,使得所述待删除节点从所述区块链系统中被删除。
7.根据权利要求1或2所述的方法,其中,在所述区块链系统处于主节点选举过程中的情况下,所述第一节点确定不执行使得所述待删除节点从所述区块链系统中被删除的操作,包括:
在所述区块链系统处于主节点选举过程中的情况下,所述第一节点确定不向所述各个节点发送交易请求,其中,所述交易请求用于请求执行删除所述待删除节点的交易。
8.根据权利要求1或2所述的方法,其中,所述第一节点为所述待删除节点;
所述方法还包括:
所述第一节点在进行预投票交互期间或者之后,向所述各个节点发送另一交易请求,其中,所述另一交易请求用于请求执行另一交易,所述另一交易与删除所述待删除节点的交易不同;
其中,所述各个节点在达成不执行所述另一交易的共识之后拒绝执行所述另一交易。
9.根据权利要求1或2所述的方法,其中,所述区块链系统包括联盟链系统。
10.一种用于区块链系统的节点管理的方法,包括:
区块链系统中的第二节点与所述区块链系统中的第一节点进行预投票交互,以辅助所述第一节点确定所述区块链系统是否处于主节点选举过程中;
如果所述第一节点在所述区块链系统没有处于主节点选举过程中的情况下请求从所述区块链系统中删除待删除节点,则所述第二节点执行使得所述待删除节点从所述区块链系统中被删除的操作;其中,如果所述区块链系统处于主节点选举过程中,则所述待删除节点无法从所述区块链系统中被删除;
其中,所述区块链系统中的第二节点与所述区块链系统中的第一节点进行预投票交互,包括:
所述第二节点从所述第一节点接收预投票消息,其中,所述预投票消息包括用于识别所述待删除节点的信息;
所述第二节点向所述第一节点发送针对所述预投票消息的预投票确认消息,其中,所述预投票确认消息指示所述第二节点的共识状态。
11.根据权利要求10所述的方法,其中,所述待删除节点是当前主节点;
所述第二节点向所述第一节点发送针对所述预投票消息的预投票确认消息,包括:
所述第二节点在所述区块链系统通过主节点选举过程选举出与所述待删除节点不同的新主节点之后,向所述第一节点发送所述预投票确认消息。
12.根据权利要求10或11所述的方法,其中,所述预投票消息包括所述待删除节点的标识和网络地址。
13.根据权利要求10或11所述的方法,其中,所述预投票确认消息包括所述第二节点的共识状态信息、标识以及当前主节点标识。
14.根据权利要求10或11所述的方法,其中,所述第二节点执行使得所述待删除节点从所述区块链系统中被删除的操作,包括:
所述第二节点接收所述第一节点在所述区块链系统没有处于主节点选举过程中的情况下发送的交易请求,其中,所述交易请求用于请求执行删除所述待删除节点的交易;
所述第二节点在与所述区块链系统中的各个节点达成执行所述交易的共识之后执行所述交易,使得所述待删除节点从所述区块链系统中被删除。
15.根据权利要求10或11所述的方法,其中,所述第一节点为所述待删除节点;
所述方法还包括:
所述第二节点接收所述第一节点在进行预投票交互期间或者之后发送的另一交易请求,其中,所述另一交易请求用于请求执行另一交易,所述另一交易与删除所述待删除节点的交易不同;
所述第二节点在与所述区块链系统中的各个节点达成不执行所述另一交易的共识之后,拒绝执行所述另一交易。
16.根据权利要求10或11所述的方法,其中,所述区块链系统包括联盟链系统。
17.一种区块链系统中的节点,包括:
交互单元,用于与所述区块链系统中的各个节点进行预投票交互,以确定所述区块链系统是否处于主节点选举过程中;
执行单元,用于:
在所述区块链系统没有处于主节点选举过程中的情况下,执行使得待删除节点从所述区块链系统中被删除的操作;
在所述区块链系统处于主节点选举过程中的情况下,确定不执行使得所述待删除节点从所述区块链系统中被删除的操作;
其中,所述交互单元具体用于:
向所述各个节点发送预投票消息,其中,所述预投票消息包括用于识别所述待删除节点的信息;
接收所述各个节点中的M个节点针对所述预投票消息发送的M个预投票确认消息,其中,每个预投票确认消息指示发送该预投票确认消息的节点的共识状态,M为正整数;
基于所述M个预投票确认消息,确定所述区块链系统是否处于主节点选举过程中。
18.根据权利要求17所述的节点,其中,所述待删除节点是当前主节点;
所述M个预投票确认消息是所述M个节点在所述区块链系统通过主节点选举过程选举出与所述待删除节点不同的新主节点之后发送的。
19.根据权利要求17或18所述的节点,其中,所述交互单元具体用于:
如果所述M个预投票确认消息中的至少K个预投票确认消息都指示主节点选举状态,则确定所述区块链系统处于主节点选举过程中,其中,K是基于所述区块链系统所使用的共识算法确定的法定数量;
如果所述M个预投票确认消息中的至少K个预投票确认消息都指示与主节点选举状态不同的另一共识状态,则确定所述区块链系统没有处于主节点选举过程中。
20.根据权利要求17或18所述的节点,其中,所述预投票消息包括所述待删除节点的标识和网络地址。
21.根据权利要求17或18所述的节点,其中,所述每个预投票确认消息包括发送该预投票确认消息的节点的共识状态信息、标识以及当前主节点标识。
22.根据权利要求17或18所述的节点,其中,所述执行单元具体用于:
在所述区块链系统没有处于主节点选举过程中的情况下,向所述各个节点发送交易请求,其中,所述交易请求用于请求执行删除所述待删除节点的交易;
其中,所述各个节点达成执行所述交易的共识之后执行所述交易,使得所述待删除节点从所述区块链系统中被删除。
23.根据权利要求17或18所述的节点,其中,所述执行单元具体用于:
在所述区块链系统处于主节点选举过程中的情况下,确定不向所述各个节点发送交易请求,其中,所述交易请求用于请求执行删除所述待删除节点的交易。
24.根据权利要求17或18所述的节点,其中,所述节点为所述待删除节点;
所述执行单元还用于:
在进行预投票交互期间或者之后,向所述各个节点发送另一交易请求,其中,所述另一交易请求用于请求执行另一交易,所述另一交易与删除所述待删除节点的交易不同;
其中,所述各个节点在达成不执行所述另一交易的共识之后拒绝执行所述另一交易。
25.根据权利要求17或18所述的节点,其中,所述区块链系统包括联盟链系统。
26.一种区块链系统中的节点,包括:
交互单元,用于与所述区块链系统中的第一节点进行预投票交互,以辅助所述第一节点确定所述区块链系统是否处于主节点选举过程中;
执行单元,用于:如果所述第一节点在所述区块链系统没有处于主节点选举过程中的情况下请求从所述区块链系统中删除待删除节点,则执行使得所述待删除节点从所述区块链系统中被删除的操作;其中,如果所述区块链系统处于主节点选举过程中,则所述待删除节点无法从所述区块链系统中被删除;
其中,所述交互单元具体用于:
从所述第一节点接收预投票消息,其中,所述预投票消息包括用于识别所述待删除节点的信息;
向所述第一节点发送针对所述预投票消息的预投票确认消息,其中,所述预投票确认消息指示所述节点的共识状态。
27.根据权利要求26所述的节点,其中,所述待删除节点是当前主节点;
所述交互单元具体用于:
在所述区块链系统通过主节点选举过程选举出与所述待删除节点不同的新主节点之后,向所述第一节点发送所述预投票确认消息。
28.根据权利要求26或27所述的节点,其中,所述预投票消息包括所述待删除节点的标识和网络地址。
29.根据权利要求26或27所述的节点,其中,所述预投票确认消息包括所述节点的共识状态信息、标识以及当前主节点标识。
30.根据权利要求26或27所述的节点,其中,所述执行单元具体用于:
接收所述第一节点在所述区块链系统没有处于主节点选举过程中的情况下发送的交易请求,其中,所述交易请求用于请求执行删除所述待删除节点的交易;
在与所述区块链系统中的各个节点达成执行所述交易的共识之后执行所述交易,使得所述待删除节点从所述区块链系统中被删除。
31.根据权利要求26或27所述的节点,其中,所述第一节点为所述待删除节点;
所述执行单元还用于:
接收所述第一节点在进行预投票交互期间或者之后发送的另一交易请求,其中,所述另一交易请求用于请求执行另一交易,所述另一交易与删除所述待删除节点的交易不同;
在与所述区块链系统中的各个节点达成不执行所述另一交易的共识之后,拒绝执行所述另一交易。
32.根据权利要求26或27所述的节点,其中,所述区块链系统包括联盟链系统。
33.一种计算设备,包括:
至少一个处理器;
与所述至少一个处理器进行通信的存储器,其上存储有可执行指令,所述可执行指令在被所述至少一个处理器执行时使得所述至少一个处理器实现根据权利要求1至9中任一项所述的方法。
34.一种计算设备,包括:
至少一个处理器;
与所述至少一个处理器进行通信的存储器,其上存储有可执行指令,所述可执行指令在被所述至少一个处理器执行时使得所述至少一个处理器实现根据权利要求10至16中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010181765.5A CN111049696B (zh) | 2020-03-16 | 2020-03-16 | 用于区块链系统的节点管理的方法、节点和计算设备 |
PCT/CN2020/139713 WO2021184878A1 (zh) | 2020-03-16 | 2020-12-26 | 用于区块链系统的节点管理的方法、节点和计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010181765.5A CN111049696B (zh) | 2020-03-16 | 2020-03-16 | 用于区块链系统的节点管理的方法、节点和计算设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111049696A CN111049696A (zh) | 2020-04-21 |
CN111049696B true CN111049696B (zh) | 2020-06-12 |
Family
ID=70231082
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010181765.5A Active CN111049696B (zh) | 2020-03-16 | 2020-03-16 | 用于区块链系统的节点管理的方法、节点和计算设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111049696B (zh) |
WO (1) | WO2021184878A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111049696B (zh) * | 2020-03-16 | 2020-06-12 | 支付宝(杭州)信息技术有限公司 | 用于区块链系统的节点管理的方法、节点和计算设备 |
CN112087521B (zh) * | 2020-09-17 | 2021-12-17 | 山东诺蓝信息科技有限公司 | 一种基于大数据的区块链节点权限控制方法及区块链系统 |
CN112671761B (zh) * | 2020-12-22 | 2022-08-05 | 网易(杭州)网络有限公司 | 区块链的节点处理方法、装置、节点设备及存储介质 |
CN113645074A (zh) * | 2021-08-11 | 2021-11-12 | 永旗(北京)科技有限公司 | 一种基于区块链的共识方法 |
CN113630257B (zh) * | 2021-10-09 | 2022-01-04 | 支付宝(杭州)信息技术有限公司 | 一种共识方法、区块链系统和共识节点 |
CN114448769B (zh) * | 2022-04-02 | 2022-07-01 | 支付宝(杭州)信息技术有限公司 | 一种基于共识系统的节点竞选投票方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110300167A (zh) * | 2019-06-28 | 2019-10-01 | 京东数字科技控股有限公司 | 基于区块链的业务信息处理方法、设备及可读存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106331046A (zh) * | 2015-07-02 | 2017-01-11 | 中兴通讯股份有限公司 | 集群主节点选举方法及装置 |
US10686590B2 (en) * | 2016-12-23 | 2020-06-16 | Joseph Santilli | Methods and systems for crowdsourcing an outcome to an issue |
CN109426952B (zh) * | 2017-08-22 | 2021-06-01 | 汇链丰(北京)科技有限公司 | 一种区块链架构 |
CN108134706B (zh) * | 2018-01-02 | 2020-08-18 | 中国工商银行股份有限公司 | 区块链多活高可用系统、计算机设备以及方法 |
US11063746B2 (en) * | 2018-04-19 | 2021-07-13 | Electronics And Telecommunications Research Institute | Method for selecting consensus node using nonce and method and apparatus for generating blockchain using the same |
CN110569675B (zh) * | 2019-09-18 | 2021-07-09 | 上海海事大学 | 一种基于区块链技术的多Agent交易信息保护方法 |
CN111049696B (zh) * | 2020-03-16 | 2020-06-12 | 支付宝(杭州)信息技术有限公司 | 用于区块链系统的节点管理的方法、节点和计算设备 |
-
2020
- 2020-03-16 CN CN202010181765.5A patent/CN111049696B/zh active Active
- 2020-12-26 WO PCT/CN2020/139713 patent/WO2021184878A1/zh active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110300167A (zh) * | 2019-06-28 | 2019-10-01 | 京东数字科技控股有限公司 | 基于区块链的业务信息处理方法、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2021184878A1 (zh) | 2021-09-23 |
CN111049696A (zh) | 2020-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111049696B (zh) | 用于区块链系统的节点管理的方法、节点和计算设备 | |
CN111046110B (zh) | 用于区块链系统的节点管理的方法、节点和计算设备 | |
US11336451B2 (en) | Cross-blockchain resource transmission | |
CN111782275B (zh) | 基于区块链的交易处理方法及装置、电子设备 | |
CN113438219B (zh) | 一种基于区块链一体机的重放交易识别方法及装置 | |
CN110263035A (zh) | 基于区块链的数据存储、查询方法及装置和电子设备 | |
CN110474797A (zh) | Api业务系统、主备切换的方法及装置 | |
CN110597918A (zh) | 一种账户管理方法、装置及计算机可读存储介质 | |
CN110602108A (zh) | 基于区块链网络的数据通信方法、装置、设备及存储介质 | |
CN111163173B (zh) | 集群配置方法、装置、服务器及可读存储介质 | |
CN112422341B (zh) | 区块链网络的故障检测方法及相关设备 | |
CN110971702A (zh) | 服务调用方法、装置、计算机设备及存储介质 | |
CN114143283B (zh) | 一种隧道自适应配置方法、装置,中心端设备及通信系统 | |
CN112714158A (zh) | 事务处理方法、中继网络、跨链网关、系统、介质和设备 | |
CN116132052A (zh) | 跨链交易方法、装置、电子设备及存储介质 | |
CN114157633A (zh) | 一种报文转发方法及装置 | |
CN113781202A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN112636987A (zh) | 一种区块链的跨链网关确定方法、系统及终端设备 | |
CN110908801B (zh) | 基于区块链的数据处理方法、装置、计算机设备和存储介质 | |
CN110708383B (zh) | 区块链节点的网络连接方法及相关设备 | |
CN113377702A (zh) | 两节点集群启动的方法及装置、电子设备和存储介质 | |
CN115390939B (zh) | 业务处理方法和系统 | |
CN117560396A (zh) | 一种数据处理方法、装置、设备及介质 | |
CN116414628A (zh) | 一种新旧系统切换过程中交易请求的处理方法和装置 | |
US20080259789A1 (en) | Method and apparatus for re-establishing anonymous data transfers |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240923 Address after: Room 803, 8th floor, 618 waima Road, Huangpu District, Shanghai 200001 Patentee after: Ant blockchain Technology (Shanghai) Co.,Ltd. Country or region after: China Address before: 310000 801-11 section B, 8th floor, 556 Xixi Road, Xihu District, Hangzhou City, Zhejiang Province Patentee before: Alipay (Hangzhou) Information Technology Co.,Ltd. Country or region before: China |