CN111291110A - 基于区块链网络的共识方法和系统 - Google Patents
基于区块链网络的共识方法和系统 Download PDFInfo
- Publication number
- CN111291110A CN111291110A CN201811483299.5A CN201811483299A CN111291110A CN 111291110 A CN111291110 A CN 111291110A CN 201811483299 A CN201811483299 A CN 201811483299A CN 111291110 A CN111291110 A CN 111291110A
- Authority
- CN
- China
- Prior art keywords
- consensus
- node
- consensus process
- block chain
- abnormal
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 217
- 230000008569 process Effects 0.000 claims abstract description 173
- 230000002159 abnormal effect Effects 0.000 claims abstract description 46
- 238000004590 computer program Methods 0.000 claims description 10
- 238000003860 storage Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 15
- 244000144972 livestock Species 0.000 description 12
- 238000002360 preparation method Methods 0.000 description 8
- 241000283690 Bos taurus Species 0.000 description 7
- 230000005856 abnormality Effects 0.000 description 6
- 230000036541 health Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 230000003862 health status Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 208000015181 infectious disease Diseases 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Images
Landscapes
- Retry When Errors Occur (AREA)
Abstract
本公开提供了一种基于区块链网络的共识方法和系统,涉及区块链技术领域。该共识方法包括:区块链网络中的每个节点将在共识过程的每个阶段所产生的共识过程数据存储到共识过程数据库中;以及在节点出现异常的情况下,共识临时服务器从该共识过程数据库中获取该出现异常的节点的共识过程数据,并代替该节点进行共识过程。本公开可以在某个节点出现异常的情况下能够继续进行共识过程。
Description
技术领域
本公开涉及区块链技术领域,特别涉及一种基于区块链网络的共识方法和系统。
背景技术
目前,区块链技术得到广泛应用。区块链通过去中心化的协同工作机制,不再依赖传统的中心化控制。为实现区块链网络中各节点的协同工作,就需要执行共识过程。其中,PBFT(Practical Byzantine Fault Tolerance,拜占庭容错算法)算法是一种典型且常用的算法,应用于区块链节点的共识过程中。
图1是示出在相关技术中的BPFT算法的执行过程示意图。如图1所示,在一轮共识中,由区块链网络中的某一个节点作为主节点(例如,图1中以节点0作为主节点),向所有副本节点(非主节点的其他节点统称为副本节点)发送共识请求,由此开启三阶段协议(three-phase protocol)。即,预准备(pre-prepare)阶段、准备(prepare)阶段和确认(commit)阶段,这三个阶段依次完成后达成一次共识。另外,该共识过程还可以包括一些辅助阶段,例如请求阶段、应答阶段等。例如,图1中还示出了所有副本节点1、2和3向主节点0进行应答(reply)的阶段。
一般来说,区块链网络中的节点由处理设备(例如:服务器、智能终端、计算机等)构成。但是,在实际应用中,处理设备可能会出现宕机、损坏或重启等异常现象。在PBFT的共识过程中,若某个处理设备(特别是主节点所对应的处理设备)出现异常现象,将导致一次共识过程不能顺利进行,若某次共识未达成,则无论区块链处于任何一种共识阶段,均会从预准备阶段起重新发起共识。显然,这无疑会影响区块链共识的效率,并进一步影响区块链对业务处理的效率。
发明内容
本公开解决的一个技术问题是:提供一种基于区块链网络的共识方法,以便在某个节点出现异常的情况下能够继续进行共识过程。
根据本公开实施例的一个方面,提供了一种基于区块链网络的共识方法,包括:区块链网络中的每个节点将在共识过程的每个阶段所产生的共识过程数据存储到共识过程数据库中;以及在节点出现异常的情况下,共识临时服务器从所述共识过程数据库中获取该出现异常的节点的共识过程数据,并代替该节点进行共识过程。
在一些实施例中,所述共识方法还包括:在该出现异常的节点在所述共识过程结束前恢复正常的情况下,该节点向所述区块链网络中的其他节点发送通知消息,并从所述共识过程数据库中获取由所述共识临时服务器代替该节点所处理的共识过程数据,以进行共识过程。
在一些实施例中,所述共识过程数据包括:节点编号、节点类型、当前所处的共识阶段、中间共识结果数据和节点对中间共识结果数据的签名。
在一些实施例中,所述共识方法还包括:在所述区块链网络中的第一节点在设定的时长内未接收到第二节点的共识过程数据的情况下,所述共识临时服务器从所述共识过程数据库中获取所述第二节点的共识过程数据,并代替所述第二节点进行共识过程。
根据本公开实施例的另一个方面,提供了一种基于区块链网络的共识系统,包括:共识过程数据库,用于存储区块链网络中的每个节点在共识过程的每个阶段所产生的共识过程数据;以及共识临时服务器,用于在节点出现异常的情况下,从所述共识过程数据库中获取该出现异常的节点的共识过程数据,并代替该节点进行共识过程。
在一些实施例中,在该出现异常的节点在所述共识过程结束前恢复正常的情况下,该节点向所述区块链网络中的其他节点发送通知消息,并从所述共识过程数据库中获取由所述共识临时服务器代替该节点所处理的共识过程数据,以进行共识过程。
在一些实施例中,所述共识过程数据包括:节点编号、节点类型、当前所处的共识阶段、中间共识结果数据和节点对中间共识结果数据的签名。
在一些实施例中,所述共识临时服务器还用于在所述区块链网络中的第一节点在设定的时长内未接收到第二节点的共识过程数据的情况下,从所述共识过程数据库中获取所述第二节点的共识过程数据,并代替所述第二节点进行共识过程。
根据本公开实施例的另一个方面,提供了一种基于区块链网络的共识系统,包括:存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器的指令执行如前所述的方法。
根据本公开实施例的另一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现如前所述的方法的步骤。
在上述方法中,区块链网络中的每个节点将在共识过程的每个阶段所产生的共识过程数据存储到共识过程数据库中;以及在某个节点出现异常的情况下,共识临时服务器从该共识过程数据库中获取该出现异常的节点的共识过程数据,并代替该节点进行共识过程。上述方法可以在某个节点出现异常的情况下能够继续进行共识过程,这样可以提高区块链共识的效率,并提高区块链对业务处理的效率。
通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
图1是示出在相关技术中的BPFT算法的执行过程示意图;
图2是示出根据本公开一些实施例的基于区块链网络的共识方法的流程图;
图3是示出根据本公开一些实施例的基于区块链网络的共识系统的结构图;
图4是示出根据本公开另一些实施例的基于区块链网络的共识系统的结构图;
图5是示出根据本公开另一些实施例的基于区块链网络的共识系统的结构图;
图6是示出根据本公开另一些实施例的基于区块链网络的共识系统的结构图。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图2是示出根据本公开一些实施例的基于区块链网络的共识方法的流程图。如图2所示,该共识方法包括步骤S202至S204。
在步骤S202,区块链网络中的每个节点将在共识过程的每个阶段所产生的共识过程数据存储到共识过程数据库中。
例如,可以针对指定数量的区块链网络节点,设置一个共识过程数据库(Database,简称为DB)。换言之,这些节点将共用一个共识过程数据库。假设,区块链网络中有节点1~n(n为正整数),则节点1~n共用一个共识过程数据库。基于此,在共识过程中,节点1~n将在每个阶段所产生的共识过程数据都会存储至该共识过程数据库中。另外,每个节点也可以具有自身的数据库,存储一些与自身相关的数据。
需要说明的是,本公开实施例提到的术语“节点”包括该节点的处理设备等。
在一些实施例中,该共识过程数据可以包括:节点编号、节点类型、当前所处的共识阶段、中间共识结果数据和节点对中间共识结果数据的签名。
例如,每个节点存储至共识过程数据库中的共识过程数据的数据格式可以为:<节点编号、节点类型、当前所处的共识阶段、中间共识结果数据、节点对中间共识结果数据的签名>。
其中,节点编号是每个节点自身的编号,例如:1、2……n等;
节点类型表示该节点是主节点还是副本节点;
当前所处的共识阶段是指该节点自身当前所处于的各阶段(例如,预准备阶段、准备阶段和确认阶段等)中的某一阶段;
中间共识结果数据为各个节点针对主节点发起的共识请求中所携带的业务数据进行共识的中间数据;
节点对中间共识结果数据的签名为每个节点对自身的中间共识结果数据进行的签名数据。例如,该签名可以采用MD5算法等。
在步骤S204,在节点出现异常的情况下,共识临时服务器从共识过程数据库中获取该出现异常的节点的共识过程数据,并代替该节点进行共识过程。
例如,在系统中增加一个共识临时服务器。在区块链的某个节点出现异常(例如该节点超时未收到响应信息)的情况下,该共识临时服务器可以从共识过程数据库中获取该出现异常的节点的共识过程数据(即,该异常节点在发生异常之前所生成的共识过程数据),并代替该节点继续进行后续的共识过程。
这里,该共识临时服务器是一个能代替异常节点继续共识的代理服务器。在实现方式上,该共识临时服务器可以是独立于区块链网络的当前节点的,也可以由区块链网络的当前节点中的一个完好的节点来临时充当。因此,该共识临时服务器可以部署在一个独立的服务器上,也可以部署于任何一个当前节点上。
至此,提供了根据本公开一些实施例的基于区块链网络的共识方法。在该方法中,区块链网络中的每个节点把在共识过程的每个阶段所产生的共识过程数据存储到共识过程数据库中;以及在某个节点出现异常的情况下,共识临时服务器从该共识过程数据库中获取该异常节点的共识过程数据,并代替该异常节点进行共识过程。这样,在某个节点出现异常的情况下,不需要如现有技术所描述的从预准备阶段起重新发起共识,而是可以由共识临时服务器代替该异常节点继续进行共识过程。因此,上述方法可以在某个节点出现异常的情况下能够继续进行共识过程,这样可以提高区块链共识的效率,并提高区块链对业务处理的效率。
在一些实施例中,所述共识方法还可以包括:在该出现异常的节点在该共识过程结束前恢复正常的情况下,该节点向区块链网络中的其他节点(即除该节点之外的其他节点)发送通知消息(例如,本节点恢复正常的通知消息,或者关于共识过程的通知消息),并从共识过程数据库中获取由共识临时服务器代替该节点(即该出现过异常的节点)所处理的共识过程数据,以进行共识过程。该实施例实现了出现异常的节点在恢复正常后继续由自身进行共识过程的实施方法。这样可以使得共识过程继续由区块链网络中的节点完成,实现节点之间的共识。
在一些实施例中,所述共识方法还可以包括:在区块链网络中的第一节点在设定的时长内未接收到第二节点的共识过程数据的情况下,共识临时服务器从共识过程数据库中获取该第二节点的共识过程数据,并代替该第二节点进行共识过程。
需要说明的是,这里的第一节点可以是在区块链网络中除了第二节点之外的任一节点。
例如,对于任一节点(例如第一节点)而言,如果在设定的时长内未接收到某一节点(例如第二节点)的共识过程数据,则共识临时服务器启动并会从共识过程数据库中获取相应节点的共识过程数据。即,共识临时服务器会从共识过程数据库中获取第二节点的共识过程数据。基于此,共识临时服务器便可以接替该第二节点完成后续的共识过程。在该过程中,共识临时服务器认为第二节点出现了异常,所以代替该第二节点完成后续的共识过程。
在一些实施例中,如果该第二节点在共识过程结束前恢复正常,那么该第二节点可以继续参与共识。具体来说,该第二节点可以向其他节点发送通知消息,并从共识过程数据库中获取由共识临时服务器代为处理的共识过程数据,继续参与共识。
图3是示出根据本公开一些实施例的基于区块链网络的共识系统的结构图。如图3所示,共识系统可以包括共识过程数据库302和共识临时服务器304。另外,图3中还示出了包含节点1~n的区块链网络310。
该共识过程数据库302用于存储区块链网络310中的每个节点(例如节点1~n)在共识过程的每个阶段所产生的共识过程数据。
该共识临时服务器304用于在节点出现异常的情况下,从该共识过程数据库302中获取该出现异常的节点的共识过程数据,并代替该节点进行共识过程。
例如,在节点1出现异常的情况下,该共识临时服务器304可以从该共识过程数据库302中获取该节点1的共识过程数据,并代替该节点1进行共识过程。
至此,提供了根据本公开一些实施例的基于区块链网络的共识系统。在该系统中,共识过程数据库存储区块链网络中的每个节点在共识过程的每个阶段所产生的共识过程数据;共识临时服务器在节点出现异常的情况下,从该共识过程数据库中获取该出现异常的节点的共识过程数据,并代替该节点进行共识过程。该系统可以在某个节点出现异常的情况下能够继续进行共识过程,这样可以提高区块链共识的效率,并提高区块链对业务处理的效率。
在一些实施例中,在该出现异常的节点在共识过程结束前恢复正常的情况下,该节点向区块链网络310中的其他节点发送通知消息,并从共识过程数据库中获取由共识临时服务器代替该节点所处理的共识过程数据,以进行共识过程。
在一些实施例中,该共识过程数据可以包括:节点编号、节点类型、当前所处的共识阶段、中间共识结果数据和节点对中间共识结果数据的签名。
在一些实施例中,该共识临时服务器304还可以用于在区块链网络310中的第一节点(例如节点1)在设定的时长内未接收到第二节点(例如节点2)的共识过程数据的情况下,从共识过程数据库302中获取该第二节点(例如节点2)的共识过程数据,并代替该第二节点进行共识过程。
在本公开的实施例中,提出了基于区块链网络的共识方法和系统。针对一定数量的区块链网络节点设置共享的共识过程数据库和共识临时服务器。参与共识的节点在每一个共识阶段,可将数据存储在共识过程数据库中。如果某一节点发生异常,则由共识临时服务器在该共识过程数据库中读取到该异常节点在发生异常之前所生成的共识过程数据,并替代该节点继续执行共识过程,确保共识过程的顺利完成。上述方法可以解决区块链网络的共识过程中因节点异常导致的等待或重新执行共识的问题。而且能够增强区块链网络中的容错性,有效提升共识过程成功执行的概率。相比现有共识恢复技术,本公开的方法可提高资源的利用率。
图4是示出根据本公开另一些实施例的基于区块链网络的共识系统的结构图。
在一种可能的应用场景中,区块链技术可应用于畜牧业,具体而言,牲畜所佩戴的智能终端可作为区块链网络节点(如图4所示),参与到共识过程中。特别是基于区块链技术对智能终端采集到的牲畜生理数据进行健康状态的共识,能够有效防止数据被篡改的情况出现。其架构可如图4所示。
在一轮共识中,主节点发送的共识请求中可采用的数据格式为:<当前阶段、节点编号、节点类型、采集到的牲畜数据、节点对请求数据的签名>。这里,请求数据也属于一种中间结果数据。
在共识的最后阶段,主节点会收到来自副本节点所反馈的共识结果。该主节点可统计其接收到的共识结果,如果有超过51%的共识结果认可健康状态数据,则表明当前节点所对应的牲畜是健康的。此时,可以切换主节点,进行下一次共识。
但是应注意,牲畜身上所佩戴的智能终端可能会出现损坏、电量耗尽、无法通信等等异常情况。如果某牲畜处于不健康状态,本可通过共识发现此问题,但是一旦该牲畜的智能终端在共识阶段异常,则不能有效执行共识,进而有可能耽误预警,导致牲畜病情加重或增加传染的风险。
而在本公开的一些实施例中,可以设置相应的共识过程数据库302,用于存储共识过程中每台智能终端(例如智能终端1、2和3)所采集到的牲畜生理数据及其对应的共识数据。
在实际应用中,为保证各个节点之间的通信和共识效率,可以控制区块链网络的规模,比如:可针对200台智能终端设置一台共识过程数据库。
在此基础上,如果牧场中牲畜的数量较少,则可以和其他牧场中牲畜所佩戴的终端设备共同形成一个区块链网络,直到该区块链网络中的节点数量达到上限为止。
跨牧场的节点通信可以依赖无线路由器等网络传输设备。
假设,牧场中有4头牛(牛身上戴有智能终端),4个智能终端构成了一个小型区块链网络。0号牛的智能终端采集到健康状态信息后,以共识请求的方式向其他3个智能终端发送0号牛的健康状态信息,进行三阶段共识。
共识请求将存储至数据库中,其存储的数据可以包括:
<Pre-prepare、node0、primary、HealthData、D(m)>。
其中,Pre-prepare为预准备阶段,node0是发起共识的节点的标识,primary表示该节点是主节点,HealthData是0号牛的健康状态数据,D(m)是node0对HealthData的签名。
如果在共识过程中,0号牛的智能终端异常,不能继续执行共识,那么,其他3台智能终端中的任一台智能终端可以作为共识临时服务器,从数据库中获取0号牛的共识数据,继续执行共识。
图5是示出根据本公开另一些实施例的基于区块链网络的共识系统的结构图。该共识系统包括存储器510和处理器520。其中:
存储器510可以是磁盘、闪存或其它任何非易失性存储介质。存储器用于存储图2所对应实施例中的指令。
处理器520耦接至存储器510,可以作为一个或多个集成电路来实施,例如微处理器或微控制器。该处理器520用于执行存储器中存储的指令,从而可以在某个节点出现异常的情况下能够继续进行共识过程。这样可以提高区块链共识的效率,并提高区块链对业务处理的效率。
在一些实施例中,还可以如图6所示,该共识系统600包括存储器610和处理器620。处理器620通过BUS总线630耦合至存储器610。该共识系统600还可以通过存储接口640连接至外部存储装置650以便调用外部数据,还可以通过网络接口660连接至网络或者另外一台计算机系统(未标出),此处不再进行详细介绍。
在该实施例中,通过存储器存储数据指令,再通过处理器处理上述指令,从而可以在某个节点出现异常的情况下能够继续进行共识过程。这样可以提高区块链共识的效率,并提高区块链对业务处理的效率。
在另一些实施例中,本公开还提供了一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现图2所对应实施例中的方法的步骤。本领域内的技术人员应明白,本公开的实施例可提供为方法、装置、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
至此,已经详细描述了本公开。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
可能以许多方式来实现本公开的方法和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和系统。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。本领域的技术人员应该理解,可在不脱离本公开的范围和精神的情况下,对以上实施例进行修改。本公开的范围由所附权利要求来限定。
Claims (10)
1.一种基于区块链网络的共识方法,包括:
区块链网络中的每个节点将在共识过程的每个阶段所产生的共识过程数据存储到共识过程数据库中;以及
在节点出现异常的情况下,共识临时服务器从所述共识过程数据库中获取该出现异常的节点的共识过程数据,并代替该节点进行共识过程。
2.根据权利要求1所述的共识方法,还包括:
在该出现异常的节点在所述共识过程结束前恢复正常的情况下,该节点向所述区块链网络中的其他节点发送通知消息,并从所述共识过程数据库中获取由所述共识临时服务器代替该节点所处理的共识过程数据,以进行共识过程。
3.根据权利要求1所述的共识方法,其中,
所述共识过程数据包括:节点编号、节点类型、当前所处的共识阶段、中间共识结果数据和节点对中间共识结果数据的签名。
4.根据权利要求1所述的共识方法,还包括:
在所述区块链网络中的第一节点在设定的时长内未接收到第二节点的共识过程数据的情况下,所述共识临时服务器从所述共识过程数据库中获取所述第二节点的共识过程数据,并代替所述第二节点进行共识过程。
5.一种基于区块链网络的共识系统,包括:
共识过程数据库,用于存储区块链网络中的每个节点在共识过程的每个阶段所产生的共识过程数据;以及
共识临时服务器,用于在节点出现异常的情况下,从所述共识过程数据库中获取该出现异常的节点的共识过程数据,并代替该节点进行共识过程。
6.根据权利要求5所述的共识系统,其中,
在该出现异常的节点在所述共识过程结束前恢复正常的情况下,该节点向所述区块链网络中的其他节点发送通知消息,并从所述共识过程数据库中获取由所述共识临时服务器代替该节点所处理的共识过程数据,以进行共识过程。
7.根据权利要求5所述的共识系统,其中,
所述共识过程数据包括:节点编号、节点类型、当前所处的共识阶段、中间共识结果数据和节点对中间共识结果数据的签名。
8.根据权利要求5所述的共识系统,其中,
所述共识临时服务器还用于在所述区块链网络中的第一节点在设定的时长内未接收到第二节点的共识过程数据的情况下,从所述共识过程数据库中获取所述第二节点的共识过程数据,并代替所述第二节点进行共识过程。
9.一种基于区块链网络的共识系统,包括:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器的指令执行如权利要求1至4任意一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现如权利要求1至4任意一项所述的方法的步骤。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201811483299.5A CN111291110A (zh) | 2018-12-06 | 2018-12-06 | 基于区块链网络的共识方法和系统 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201811483299.5A CN111291110A (zh) | 2018-12-06 | 2018-12-06 | 基于区块链网络的共识方法和系统 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN111291110A true CN111291110A (zh) | 2020-06-16 |
Family
ID=71017978
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201811483299.5A Pending CN111291110A (zh) | 2018-12-06 | 2018-12-06 | 基于区块链网络的共识方法和系统 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN111291110A (zh) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112433885A (zh) * | 2020-11-19 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 区块链共识处理方法及装置、电子设备、存储介质 |
| CN114650289A (zh) * | 2020-12-02 | 2022-06-21 | 王志诚 | 用于区块链共识的方法及装置 |
| US11881980B2 (en) | 2022-04-22 | 2024-01-23 | Red Hat, Inc. | Byzantine fault prevention in mesh networks |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106682907A (zh) * | 2016-12-10 | 2017-05-17 | 江苏恒为信息科技有限公司 | 区块链数据对比及共识方法 |
| CN107315660A (zh) * | 2017-06-29 | 2017-11-03 | 郑州云海信息技术有限公司 | 一种虚拟化系统的双机热备份方法、装置及系统 |
| CN107368507A (zh) * | 2017-03-28 | 2017-11-21 | 阿里巴巴集团控股有限公司 | 一种基于区块链的共识方法及装置 |
| CN107391320A (zh) * | 2017-03-10 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 一种共识方法及装置 |
| WO2018177235A1 (zh) * | 2017-03-28 | 2018-10-04 | 阿里巴巴集团控股有限公司 | 一种区块链共识方法及装置 |
| CN108932189A (zh) * | 2018-06-30 | 2018-12-04 | 平安科技(深圳)有限公司 | 保存服务器日志的方法和装置 |
-
2018
- 2018-12-06 CN CN201811483299.5A patent/CN111291110A/zh active Pending
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106682907A (zh) * | 2016-12-10 | 2017-05-17 | 江苏恒为信息科技有限公司 | 区块链数据对比及共识方法 |
| CN107391320A (zh) * | 2017-03-10 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 一种共识方法及装置 |
| CN107368507A (zh) * | 2017-03-28 | 2017-11-21 | 阿里巴巴集团控股有限公司 | 一种基于区块链的共识方法及装置 |
| WO2018177235A1 (zh) * | 2017-03-28 | 2018-10-04 | 阿里巴巴集团控股有限公司 | 一种区块链共识方法及装置 |
| CN107315660A (zh) * | 2017-06-29 | 2017-11-03 | 郑州云海信息技术有限公司 | 一种虚拟化系统的双机热备份方法、装置及系统 |
| CN108932189A (zh) * | 2018-06-30 | 2018-12-04 | 平安科技(深圳)有限公司 | 保存服务器日志的方法和装置 |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112433885A (zh) * | 2020-11-19 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 区块链共识处理方法及装置、电子设备、存储介质 |
| CN114650289A (zh) * | 2020-12-02 | 2022-06-21 | 王志诚 | 用于区块链共识的方法及装置 |
| CN114650289B (zh) * | 2020-12-02 | 2023-04-14 | 王志诚 | 用于区块链共识的方法及装置 |
| US11881980B2 (en) | 2022-04-22 | 2024-01-23 | Red Hat, Inc. | Byzantine fault prevention in mesh networks |
| US12425290B2 (en) | 2022-04-22 | 2025-09-23 | Red Hat, Inc. | Byzantine fault prevention in mesh networks |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN112422684B (zh) | 目标消息的处理方法及装置、存储介质、电子装置 | |
| CN111291110A (zh) | 基于区块链网络的共识方法和系统 | |
| CN111147403B (zh) | 报文的处理方法及装置、存储介质和电子装置 | |
| CN113595788A (zh) | 一种基于插件的api网关管理方法及装置 | |
| CN107423942A (zh) | 一种业务流转的方法及装置 | |
| CN114780177B (zh) | 事务执行方法及装置、存储介质及电子装置 | |
| CN115412609A (zh) | 一种业务处理方法、装置、服务器及存储介质 | |
| EP3127354A1 (en) | Loop avoidance in middle-node-to-middle-node registration in m2m networks | |
| CN112130980B (zh) | 操作执行方法及装置、存储介质、电子装置 | |
| CN108536541B (zh) | 流程引擎对象处理方法及装置 | |
| JP7629546B2 (ja) | 電気車両充電管理及びクライアントデバイス | |
| CN102725999B (zh) | 数据配置方法和电信系统设备 | |
| US9866625B2 (en) | Message transmission apparatus, message transmission method, and message transmission program | |
| WO2021047561A1 (zh) | 用户签约参数集Profile的迁移方法、装置、用户管理-数据准备网元及运营商后台系统 | |
| CN113760519A (zh) | 分布式事务处理方法、装置、系统和电子设备 | |
| CN103501247A (zh) | 一种高并发请求处理方法及装置 | |
| CN110888892B (zh) | 一种区块同步方法、装置及存储介质 | |
| US9883408B2 (en) | Gateway apparatus and communications system | |
| CN107431634B (zh) | 一种建立vnfm之间的接口的方法、装置及系统 | |
| CN113691520A (zh) | 获取流媒体信息的方法、装置、存储介质及电子装置 | |
| CN109992353B (zh) | 一种扩缩容方法、装置、设备及计算机可读存储介质 | |
| CN116438834B (zh) | 用于控制集成接入和回程网络中的下行链路传输的方法、装置和计算机可读介质 | |
| CN113407200B (zh) | 轨道交通远程输入输出模块的软件部署方法及装置 | |
| CN113114465B (zh) | 归属权限的处理方法及装置、存储介质、电子装置 | |
| CN109451016B (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 | ||
| RJ01 | Rejection of invention patent application after publication | ||
| RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200616 |