CN111526219A - 一种联盟链的共识方法及联盟链系统 - Google Patents
一种联盟链的共识方法及联盟链系统 Download PDFInfo
- Publication number
- CN111526219A CN111526219A CN202010630328.7A CN202010630328A CN111526219A CN 111526219 A CN111526219 A CN 111526219A CN 202010630328 A CN202010630328 A CN 202010630328A CN 111526219 A CN111526219 A CN 111526219A
- Authority
- CN
- China
- Prior art keywords
- consensus
- data
- node
- proposed
- data blocks
- 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
Links
Images
Classifications
-
- 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
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
- H04L9/3265—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate chains, trees or paths; Hierarchical trust model
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
- H04L2209/463—Electronic voting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
Abstract
本说明书实施例提供一种联盟链的共识方法及联盟链系统。方法包括:共识主节点基于纠删码技术,将待共识的提议数据拆分成与共识备份节点相对应的数据块,提议数据拆分成的数据块对应有基于纠删码技术计算得到的哈希值。共识主节点将通过提议数据拆分成的数据块发送至对应的共识备份节点。接收到共识主节点发送的数据块的共识备份节点,将数据块转发至其他共识备份节点。共识主节点基于实用拜占庭容错PBFT协议,发起提议数据的共识,以通过PBFT协议的消息将提议数据拆分成的数据块的哈希值发送至共识备份节点。共识备份节点基于PBFT协议的消息中的数据块的哈希值,对获得的由提议数据拆分成的数据块校验,以对校验成功的提议数据执行PBFT协议的共识逻辑。
Description
技术领域
本文件涉及联盟链技术领域,尤其涉及一种联盟链的共识方法及联盟链系统。
背景技术
现阶段,很多联盟链系统基于实用拜占庭容错(PBFT,Practical ByzantineFault Tolerant)算法来实现共识。基于PBFT协议,在执行共识前,共识主节点需要将提议数据(交易集)发送给共识备份节点。为了保证提议数据的传输具有容错性,共识主节点需要发送冗余的提议数据。冗余的提议数据会使PBFT协议的共识机制会占用较多网络带宽和存储空间。
为此,当前亟需一种PBFT协议的优化方案,能够有效减少共识过程中的网络带宽和存储空间的开销。
发明内容
本说明书实施例目的是提供一种联盟链的共识方法及联盟链系统,能够减少共识过程中的网络带宽和存储空间的开销。
为了实现上述目的,本说明书实施例是这样实现的:
第一方面,提供一种联盟链的共识方法,包括:
联盟链的共识主节点基于纠删码技术,将待共识的提议数据拆分成与所述联盟链的共识备份节点相对应的数据块,其中,所述提议数据拆分成的数据块对应有基于所述纠删码技术计算得到的哈希值;
所述共识主节点将通过所述提议数据拆分成的数据块发送至所述联盟链中对应的共识备份节点;
接收到所述共识主节点发送的数据块的共识备份节点,将该接收到的数据块转发至所述联盟链的其他共识备份节点;
所述共识主节点基于实用拜占庭容错PBFT协议,发起所述提议数据的共识,以通过PBFT协议的消息将所述提议数据拆分成的数据块的哈希值发送至所述联盟链的共识备份节点;
所述联盟链的共识备份节点基于所述PBFT协议的消息中的数据块的哈希值,对获得的由所述提议数据拆分成的数据块进行校验,以对校验成功的提议数据执行所述PBFT协议的共识逻辑。
第二方面,提供一种联盟链系统,包括:共识主节点和多个共识备份节点,其中,
所述共识主节点基于纠删码技术,将待共识的提议数据拆分成与所述联盟链的共识备份节点相对应的数据块,其中,所述提议数据拆分成的数据块对应有基于所述纠删码技术计算得到的哈希值;
所述共识主节点将通过所述提议数据拆分成的数据块发送至所述联盟链中对应的共识备份节点;
所述联盟链的共识备份节点在接收到所述共识主节点发送的数据块后,将所述数据块转发至所述联盟链的其他共识备份节点;
所述共识主节点基于实用拜占庭容错PBFT协议,发起所述提议数据的共识,以通过PBFT协议的消息将所述提议数据拆分成的数据块的哈希值发送至所述联盟链的共识备份节点;
所述联盟链的共识备份节点基于所述PBFT协议的消息中的数据块的哈希值,对获得的由所述提议数据拆分成的数据块进行校验,以对校验成功的提议数据执行所述PBFT协议的共识逻辑。
基于本说明书实施例的方案,联盟链的共识主节点利用纠删码技术发送提议数据,从而以较小的网络带宽和存储空间开销,实现提议数据的容错性。此外,共识备份节点也可以基于纠删码技术,对接收到的数据块进行校验,确定是否得到正确的提议数据,可避后续花费资源对错误的提议数据执行共识逻辑,不仅防止了提议数据被恶意篡改上传至联盟链,还可以显著提高共识效率。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书实施例提供的联盟链的共识方法的流程示意图。
图2为本说明书实施例提供的联盟链系统的结构示意图。
图3为本说明书实施例提供的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
如前所述,目前PBFT协议的共识机制下,共识主节点需要将冗余的提议数据发送给共识备份节点,以使共识备份节点对提议数据执行共识逻辑。冗余的提议数据会占用较大网络带宽和存储空间。为此,本文件旨在提供一种PBFT协议的优化方案,能够有效减少共识过程中的网络带宽和存储空间的开销,实现更高的资源利用率。
图1是本说明书实施例联盟链的共识方法的流程图。图1所示的方法可以由下文相对应的装置执行,包括如下步骤:
S102,联盟链的共识主节点基于纠删码技术,将待共识的提议数据拆分成与联盟链的共识备份节点相对应的数据块,其中,提议数据拆分成的数据块对应有基于纠删码技术计算得到的哈希值。
纠删码(erasure coding,EC)是一种数据容错保护方法,它将数据分割成片段,把冗余数据块扩展、编码,并将其存储在不同的位置,比如磁盘、存储节点或者其它地理位置。从数据函数角度来说,纠删码提供的保护可以用下面公式:n = k + m来表示。变量“k”代表原始数据或符号的值。变量“m”代表故障后添加的提供保护的额外或冗余符号的值。变量“n”代表纠删码过程后创建的符号的总值。举个例子来说,在一个EC 10/16的配置中,会有6个额外的符号(变量m)被添加到10个原始符号(变量k)中。这16个数据片段(变量n)可以遍布16个驱动器、节点或地理位置中,而原始文件可以从10个验证片段中重建。也就是说,即使有6个驱动器、节点或者地理位置丢失或不可用,而原始文件还是可以恢复。可以看出,纠删码仅需要数据量较少的冗余就能实现数据的还原。
在本说明书实施例中,利用纠删码技术,将待共识的提议数据拆分成与共识备份节点相对应的数据块,后续由共识备份节点进行保存。
S104,共识主节点将通过提议数据拆分成的数据块发送至联盟链中对应的共识备份节点。
这里需要说明的是,提议数据拆分成的多个数据块可以与联盟链的共识备份节点一一对应;或者,提议数据拆分成的多个数据块的数量小于联盟链的共识备份节点的数量,一个共识备份节点最多对应一个数据块。因此,本步骤中,共识主节点可以但不一定向联盟链的每个共识备份节点都发送数据块,这取决于纠删码的算法设置。
S106,接收到共识主节点发送的数据块的共识备份节点,将该接收到的数据块转发至联盟链的其他共识备份节点。
应理解,本步骤中共识备份节点之间彼此转发各自接收到的数据块,在正常情况下,任一共识备份节点如果获得N-F个数据块,即可能够还原出完整的提议数据,这里F为纠删码算法下的容错数。
S108,共识主节点基于实用拜占庭容错PBFT协议,发起提议数据的共识,以通过PBFT协议的消息将提议数据拆分成的数据块的哈希值发送至联盟链的共识备份节点。
应理解,为了避免共识主节点作恶,共识备份节点需要对共识主节点发送的提示数据进行校验,以保证每个共识主节点都能获得正确的提议数据。
在说明书本实施例中,共识主节点需要向共识备份节点发送数据块的哈希值,使得共识备份节点能够通过纠删码算法,利用共识主节点发送的数据块的哈希值对接收到的数据块进行校验,以确定是否获得正确的提议数据。
S110,联盟链的共识备份节点基于PBFT协议的消息中的数据块的哈希值,对获得的由提议数据拆分成的数据块进行校验,以对校验成功的提议数据执行所述PBFT协议的共识逻辑。
具体地,在本步骤中,共识备份节点基于纠删码技术,对获得的由提议数据拆分成的数据块进行默克尔树重建,若重建的默克尔树的根哈希值与PBFT协议的消息中的数据块的哈希值匹配,则校验成功,否则校验失败。其中,对于校验失败的情况,共识备份节点可以拒绝本次共识。
在实际应用中,共识备份节点若对获得的由所述提议数据拆分成的数据块进行校验并失败,则可以向其他共识备份节点获取其他共识备份节点校验成功的所述提议数据的数据块,并在成功获取后,对提议数据执行PBFT协议的共识逻辑。如果,共识备份节点未成功获取其他共识备份节点验成功的提议数据的数据块,则发起视图切换操作,以尝试更换联盟链的共识主节点。
此外,共识备份节点还可以对共识的视图序号以及提议数据的校验结果进行关联记录,从而后续可以追溯共识主节点的共识成功率,以对共识主节点进行评估。
基于图1所示的共识方法,联盟链的共识主节点利用纠删码技术发送提议数据,从而以较小的网络带宽和存储空间开销,实现提议数据的容错性。此外,共识备份节点也可以基于纠删码技术,对接收到的数据块进行校验,确定是否得到正确的提议数据,可避后续花费资源对错误的提议数据执行共识逻辑,不仅防止了提议数据被恶意篡改上传至联盟链,还可以显著提高共识效率。
下面对本说明书实施例的共识方法进行详细介绍。
应用场景一
本应用场景一中,区块链采用PBFT共识协议,每轮视图中,只有共识主节点能够发起共识。其中,具体地的共识流程包括:
共识主节点生成本轮视图的提议数据,提议数据包含有来自所述共识主节点的交易池中的交易。应理解,在联盟链系统中,客户端发起交易后,共识主节点在接收到后,可以对客户端发起的交易进行账户合法性校验,并将通过账户合法性校验的交易同步至自身交易池中。
共识主节点基于纠删码技术,将待提议数据拆分成与共识备份节点相对应的数据块,并将拆分成的数据块发送至对应的共识备份节点。
接收到共识主节点发送的数据块的共识备份节点,将该接收到的数据块转发至所述联盟链的其他共识备份节点。
共识主节点发起本轮视图的共识。其中,PBFT协议的共识过程包括:
pre-prepare阶段:
主共识节点收到来自Client的一个请求,并分配一个编号给这个请求,共识主节点广播一条pre-prepare消息给共识备份节点,这个pre-prepare消息包含当前共识的视图(view)和共识主节点的摘要(digest),同时还包括共识主节点基于纠删码技术计算得到的各数据块对应的哈希值。
每一个共识备份节点在接收到pre-prepare消息后,确定同不同意共识主节点分配给该请求的这个编号n,即,确认是否接受这条pre-prepare消息。
各共识备份节点如果接受了这条pre-prepare消息,则基于纠删码技术,对获得的由提议数据拆分成的数据块进行默克尔树重建,并检验重建的默克尔树的根哈希值与共识主节点在pre-prepare消息中提供的数据块的哈希值匹配。
如果匹配,则检验成功,则进入prepare阶段。
如果不匹配,则各共识备份节点尝试向其他共识备份节点获取其他共识备份节点校验成功的提议数据的数据块。若获取成功,则进入prepare阶段,否则打回本次共识的提议数据,共识流程结束。
prepare阶段:
所有参与共识的共识备份节点中的每一个在接收到 pre-prepare 消息后,检查pre-prepare消息是否合法。如果pre-prepare消息合法,那么该共识提议在replica上的状态被确定为prepared,共识备份节点将该pre-prepare消息添加到本地Log中,并发送 prepare消息给其他参与共识的共识备份节点。
commit阶段:
所有共识节点中的每一个在进入prepared 状态后,发送 commit 消息给其他共识节点,并将自己发送的commit消息添加到本地Log中(代表自己的认可)。当一个共识节点发现有一个quorum(quorum是为了能够确保所有 replica 数据一致性要求和容错要求需要的一定数量replica的集合)同意编号分配时,它就会广播一条commit消息给其它所有节点。与此同时也会陆续收到来自其他节点的commit消息,如果每个节点收到了2f+1(f是联盟链中作恶节点的数量)条commit消息(包括自身的一条,这些来自不同节点的commit携带相同的编号n和view v),就说名该共识节点拥有了一个名为committed certificate的证书,请求在这个共识节点上达到了committed状态。此时只通过这一个共识节点,就能断定该请求已经在一个quorum中到达了prepared状态,即同一个quorum的所有共识节点都同意了编号n的分配。当Client发起的请求到达commited状态后,说明已经达成全网共识。
应用场景二
本应用场景二中,区块链采用PBFT共识协议,每轮视图中,只有共识主节点能够发起共识。其中,具体地的共识流程包括:
共识主节点生成本轮视图的提议数据,提议数据包含有来自所述共识主节点的交易池中的交易。
共识主节点基于纠删码技术,将待提议数据拆分成与共识备份节点相对应的数据块,并将拆分成的数据块发送至对应的共识备份节点。
接收到共识主节点发送的数据块的共识备份节点,将该接收到的数据块转发至所述联盟链的其他共识备份节点。
共识主节点发起本轮视图的共识。其中,PBFT协议的共识过程包括:
pre-prepare阶段:
主共识节点收到来自Client的一个请求,并分配一个编号给这个请求,共识主节点广播一条pre-prepare消息给共识备份节点,这个pre-prepare消息包含当前共识的视图(view)和共识主节点的摘要(digest),同时还包括共识主节点基于纠删码技术计算得到的各数据块对应的哈希值。
每一个共识备份节点在接收到pre-prepare消息后,确定同不同意共识主节点分配给该请求的这个编号n,即,确认是否接受这条pre-prepare消息。在各共识备份节点接受这条pre-prepare消息后,进入prepare阶段。
prepare阶段:
所有参与共识的共识备份节点中的每一个在接收到 pre-prepare 消息后,基于纠删码技术,对获得的由提议数据拆分成的数据块进行默克尔树重建,并检验重建的默克尔树的根哈希值与共识主节点在pre-prepare消息中提供的数据块的哈希值匹配。
如果匹配,则检验成功,共识备份节点再检查pre-prepare消息是否合法。如果pre-prepare消息合法,那么该共识提议在replica上的状态被确定为prepared,共识备份节点将该pre-prepare消息添加到本地Log中,并发送 prepare 消息给其他共识备份节点,以等待进入commit阶段。
如果不匹配,则各共识备份节点尝试向其他共识备份节点获取其他共识备份节点校验成功的提议数据的数据块。若获取成功,共识备份节点再检查pre-prepare消息是否合法。同样地,如果pre-prepare消息合法,那么该共识提议在replica上的状态被确定为prepared,共识备份节点将该pre-prepare消息添加到本地Log中,并发送 prepare 消息给其他共识备份节点,以等待进入commit阶段。若获取失败,共识备份节点则打回本次共识的提议数据,共识流程结束。
commit阶段:
所有共识节点中的每一个在进入prepared 状态后,发送 commit 消息给其他共识节点,并将自己发送的commit消息添加到本地Log中。当一个共识节点发现有一个quorum同意编号分配时,它就会广播一条commit消息给其它所有节点。与此同时也会陆续收到来自其他节点的commit消息,如果每个节点收到了2f+1条commit消息,就说名该共识节点拥有了一个名为committed certificate的证书,请求在这个共识节点上达到了committed状态。此时只通过这一个共识节点,就能断定该请求已经在一个quorum中到达了prepared状态,即同一个quorum的所有共识节点都同意了编号n的分配。当Client发起的请求到达commited状态后,说明已经达成全网共识。
通过上述应用场景二和应用场景三可以知道,在传统的PBFT算法的共识过程中,共识备份节点在prepare阶段开始执行主要的共识逻辑。为此,本说明书实施例中,共识备份节点在prepare阶段或之前的pre-prepare阶段,基于共主识节在pre-prepare消息中提供的数据块的哈希值来对提议数据进行校验。一旦提议数据未通过校验,则拒绝执行后续的共识逻辑,从而避免造成不必要的资源开销,并能够提高共识的执行效率。
以上是对本说明书实施例的方法的介绍。应理解,在不脱离本文上述原理基础之上,还可以进行适当的变化,这些变化也应视为本说明书实施例的保护范围。
与上述共识方法相对应地,如图2所示,本说明书实施例还提供一种联盟链系统200,包括:共识主节点210和多个共识备份节点220。其中:
共识主节点210基于纠删码技术,将待共识的提议数据拆分成与共识备份节点220相对应的数据块,其中,所述提议数据拆分成的数据块对应有基于所述纠删码技术计算得到的哈希值。
所述共识主节点210将通过所述提议数据拆分成的数据块发送至共识备份节点220。
所述联盟链的共识备份节点220在接收到所述共识主节点210发送的数据块后,将所述数据块转发至所述联盟链的其他共识备份节点220。
所述共识主节点210基于实用拜占庭容错PBFT协议,发起所述提议数据的共识,以通过PBFT协议的消息将所述提议数据拆分成的数据块的哈希值发送至共识备份节点220。
所述联盟链的共识备份节点220基于所述PBFT协议的消息中的数据块的哈希值,对获得的由所述提议数据拆分成的数据块进行校验,以对校验成功的提议数据执行所述PBFT协议的共识逻辑。
在本实施例的联盟链系统中,共识主节点利用纠删码技术发送提议数据,从而以较小的网络带宽和存储空间开销,实现提议数据的容错性。此外,共识备份节点也可以基于纠删码技术,对接收到的数据块进行校验,确定是否得到正确的提议数据,可避后续花费资源对错误的提议数据执行共识逻辑,不仅防止了提议数据被恶意篡改上传至联盟链,还可以显著提高共识效率。
可选地,所述共识主节点210在所述PBFT协议的预准备pre-prepare阶段,通过预准备pre-prepare 消息,将所述提议数据拆分成的数据块的根哈希发送至所述联盟链的共识备份节点220。
可选地,共识备份节点220在所述PBFT协议的pre-prepare阶段或prepare阶段,基于所述pre-prepare 消息中的数据块的哈希值,对获得的由所述提议数据拆分成的数据块进行校验。
可选地,共识备份节点220若对获得的由所述提议数据拆分成的数据块进行校验并失败,则向其他共识备份节点220获取所述其他共识备份节点220校验成功的所述提议数据的数据块,并在成功获取后,对所述提议数据执行所述PBFT协议的共识逻辑。
此外,在上述基础之上,共识备份节点220若未成功获取所述其他共识备份节点220验成功的所述提议数据的数据块, 则发起视图切换操作。
可选地,共识备份节点220基于所述纠删码技术,对获得的由所述提议数据拆分成的数据块进行默克尔树重建,若重建的默克尔树的根哈希值与所述PBFT协议的消息中的数据块的哈希值匹配,则校验成功,否则校验失败。
可选地,所述提议数据拆分成的数据块与联盟链的共识备份节点220一一对应;或者,所述提议数据拆分成的数据块的数量小于联盟链的共识备份节点220的数量,一个共识备份节点220最多对应有一个数据块。
可选地,所述提议数据包含有来自所述共识主节点210的交易池中的交易,其中,所述共识主节点210对客户端发起的交易进行账户合法性校验,并将通过账户合法性校验的交易同步至共识主节点的交易池中。
可选地,所述联盟链的共识备份节点对所述共识的视图序号以及所述提议数据的校验结果进行关联记录,从而后续可以追溯共识主节点的共识成功率,以对共识主节点进行评估。
显然,本说明书实施例的联盟链系统可以作为上述图1所示的共识方法的执行主体,因此能够实现共识方法在图1中所实现的功能。由于原理相同,本文不再赘述。
图3是本说明书的一个实施例电子设备的结构示意图。请参考图3,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成上述联盟链中的共识主节点或者共识备份节点。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
在电子设备应用于联盟链的共识主节点时,基于纠删码技术,将待共识的提议数据拆分成与所述联盟链的共识备份节点相对应的数据块,其中,所述提议数据拆分成的数据块对应有基于所述纠删码技术计算得到的哈希值;以及,将通过所述提议数据拆分成的数据块发送至所述联盟链中对应的共识备份节点;并在基于实用拜占庭容错PBFT协议,发起所述提议数据的共识,以通过PBFT协议的消息将所述提议数据拆分成的数据块的哈希值发送至所述联盟链的共识备份节点。
在电子设备应用于联盟链的共识主节点时,将接收到的所述共识主节点发送的数据块转发至所述联盟链的其他共识备份节点;以及,基于所述PBFT协议的消息中的数据块的哈希值,对获得的由所述提议数据拆分成的数据块进行校验,以对校验成功的提议数据执行所述PBFT协议的共识逻辑。
基于本说明书实施例的电子设备,联盟链的共识主节点利用纠删码技术发送提议数据,从而以较小的网络带宽和存储空间开销,实现提议数据的容错性。此外,共识备份节点也可以基于纠删码技术,对接收到的数据块进行校验,确定是否得到正确的提议数据,可避后续花费资源对错误的提议数据执行共识逻辑,不仅防止了提议数据被恶意篡改上传至联盟链,还可以显著提高共识效率。
上述如本说明书图1所示实施例揭示的共识方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本说明书实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本说明书实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
应理解,本说明书实施例的电子设备可以实现上述共识方法在图1所示的实施例的功能,本文不再赘述。
当然,除了软件实现方式之外,本说明书的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
此外,本说明书实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图1所示实施例的方法,并具体用于执行以下方法:
在电子设备应用于联盟链的共识主节点时,基于纠删码技术,将待共识的提议数据拆分成与所述联盟链的共识备份节点相对应的数据块,其中,所述提议数据拆分成的数据块对应有基于所述纠删码技术计算得到的哈希值;以及,将通过所述提议数据拆分成的数据块发送至所述联盟链中对应的共识备份节点;并在基于实用拜占庭容错PBFT协议,发起所述提议数据的共识,以通过PBFT协议的消息将所述提议数据拆分成的数据块的哈希值发送至所述联盟链的共识备份节点。
在电子设备应用于联盟链的共识主节点时,将接收到的所述共识主节点发送的数据块转发至所述联盟链的其他共识备份节点;以及,基于所述PBFT协议的消息中的数据块的哈希值,对获得的由所述提议数据拆分成的数据块进行校验,以对校验成功的提议数据执行所述PBFT协议的共识逻辑。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。此外,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本文件的保护范围。
Claims (10)
1.一种联盟链的共识方法,包括:
联盟链的共识主节点基于纠删码技术,将待共识的提议数据拆分成与所述联盟链的共识备份节点相对应的数据块,其中,所述提议数据拆分成的数据块对应有基于所述纠删码技术计算得到的哈希值;
所述共识主节点将通过所述提议数据拆分成的数据块发送至所述联盟链中对应的共识备份节点;
接收到所述共识主节点发送的数据块的共识备份节点,将该接收到的数据块转发至所述联盟链的其他共识备份节点;
所述共识主节点基于实用拜占庭容错PBFT协议,发起所述提议数据的共识,以通过PBFT协议的消息将所述提议数据拆分成的数据块的哈希值发送至所述联盟链的共识备份节点;
所述联盟链的共识备份节点基于所述PBFT协议的消息中的数据块的哈希值,对获得的由所述提议数据拆分成的数据块进行校验,以对校验成功的提议数据执行所述PBFT协议的共识逻辑。
2.根据权利要求1所述的方法,
所述共识主节点在所述PBFT协议的预准备pre-prepare阶段,通过预准备pre-prepare消息,将所述提议数据拆分成的数据块的根哈希发送至所述联盟链的共识备份节点。
3.根据权利要求2所述的方法,
所述联盟链的共识备份节点基于所述PBFT协议消息中的数据块的哈希值,对获得的由所述提议数据拆分成的数据块进行校验,包括:
所述联盟链的共识备份节点在所述PBFT协议的pre-prepare阶段或prepare阶段,基于所述pre-prepare 消息中的数据块的哈希值,对获得的由所述提议数据拆分成的数据块进行校验。
4.根据权利要求1所述的方法,还包括:
所述联盟链的共识备份节点若对获得的由所述提议数据拆分成的数据块进行校验并失败,则向所述联盟链的其他共识备份节点获取所述其他共识备份节点校验成功的所述提议数据的数据块,并在成功获取后,对所述提议数据执行所述PBFT协议的共识逻辑。
5.根据权利要求4所述的方法,还包括:
所述联盟链的共识备份节点若未成功获取所述其他共识备份节点验成功的所述提议数据的数据块,则发起视图切换操作。
6.根据权利要求1-5中任一项所述的方法,
所述联盟链的共识备份节点基于所述PBFT协议消息中的数据块的哈希值,对获得的由所述提议数据拆分成的数据块进行校验,包括:
所述共识备份节点基于所述纠删码技术,对获得的由所述提议数据拆分成的数据块进行默克尔树重建,若重建的默克尔树的根哈希值与所述PBFT协议的消息中的数据块的哈希值匹配,则校验成功,否则校验失败。
7.根据权利要求1-5中任一项所述的方法,
所述提议数据拆分成的数据块与联盟链的共识备份节点一一对应;或者,所述提议数据拆分成的数据块的数量小于联盟链的共识备份节点的数量,一个共识备份节点最多对应有一个数据块。
8.根据权利要求1-5中任一项所述的方法,
所述提议数据包含有来自所述共识主节点的交易池中的交易,其中,所述共识主节点对客户端发起的交易进行账户合法性校验,并将通过账户合法性校验的交易同步至所述共识主节点的交易池中。
9.根据权利要求1-5任一项所述的方法,还包括:
所述联盟链的共识备份节点对所述共识的视图序号以及所述提议数据的校验结果进行关联记录。
10.一种联盟链系统,包括:共识主节点和多个共识备份节点,其中,
所述共识主节点基于纠删码技术,将待共识的提议数据拆分成与共识备份节点相对应的数据块,其中,所述提议数据拆分成的数据块对应有基于所述纠删码技术计算得到的哈希值;
接收到所述共识主节点发送的数据块的共识备份节点,将该接收到的数据块转发至其他共识备份节点;
所述共识主节点基于实用拜占庭容错PBFT协议,发起所述提议数据的共识,以通过PBFT协议的消息将所述提议数据拆分成的数据块的哈希值发送至共识备份节点;
所述联盟链的共识备份节点基于所述PBFT协议的消息中的数据块的哈希值,对获得的由所述提议数据拆分成的数据块进行校验,以对校验成功的提议数据执行所述PBFT协议的共识逻辑。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010630328.7A CN111526219B (zh) | 2020-07-03 | 2020-07-03 | 一种联盟链的共识方法及联盟链系统 |
US17/359,581 US11368317B2 (en) | 2020-07-03 | 2021-06-27 | Consensus method of consortium blockchain, and consortium blockchain system |
EP21182382.8A EP3934165B1 (en) | 2020-07-03 | 2021-06-29 | Consensus method of consortium blockchain, and consortium blockchain system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010630328.7A CN111526219B (zh) | 2020-07-03 | 2020-07-03 | 一种联盟链的共识方法及联盟链系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111526219A true CN111526219A (zh) | 2020-08-11 |
CN111526219B CN111526219B (zh) | 2021-02-09 |
Family
ID=71911971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010630328.7A Active CN111526219B (zh) | 2020-07-03 | 2020-07-03 | 一种联盟链的共识方法及联盟链系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11368317B2 (zh) |
EP (1) | EP3934165B1 (zh) |
CN (1) | CN111526219B (zh) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112835743A (zh) * | 2021-01-25 | 2021-05-25 | 中央财经大学 | 分布式账本数据存储优化方法、装置、电子设备及介质 |
CN113573255A (zh) * | 2021-07-26 | 2021-10-29 | 上海点融信息科技有限责任公司 | 基于区块链进行共识的方法、装置及存储介质 |
CN113630257A (zh) * | 2021-10-09 | 2021-11-09 | 支付宝(杭州)信息技术有限公司 | 一种共识方法、区块链系统和共识节点 |
CN113761071A (zh) * | 2021-10-09 | 2021-12-07 | 支付宝(杭州)信息技术有限公司 | 一种共识方法、区块链系统和共识节点 |
CN113821569A (zh) * | 2021-09-30 | 2021-12-21 | 广州智链未来科技有限公司 | 一种区块链的共识方法及区块链 |
CN113872961A (zh) * | 2021-09-24 | 2021-12-31 | 支付宝(杭州)信息技术有限公司 | 一种区块链的共识方法、共识节点及电子设备 |
US11240034B2 (en) | 2020-07-03 | 2022-02-01 | Alipay (Hangzhou) Information Technology Co., Ltd. | Consensus methods and systems in consortium blockchain |
US11251967B2 (en) | 2020-07-03 | 2022-02-15 | Alipay (Hangzhou) Information Technology Co., Ltd. | Consensus methods and systems in consortium blockchain |
US11271748B2 (en) | 2020-07-03 | 2022-03-08 | Alipay (Hangzhou) Information Technology Co., Ltd. | Consensus methods and systems in consortium blockchain |
CN114584312A (zh) * | 2021-10-09 | 2022-06-03 | 支付宝(杭州)信息技术有限公司 | 一种共识方法、区块链系统和共识节点 |
CN114710512A (zh) * | 2022-03-30 | 2022-07-05 | 蚂蚁区块链科技(上海)有限公司 | 共识结果的分发方法、节点和区块链系统 |
CN115174574A (zh) * | 2022-06-30 | 2022-10-11 | 蚂蚁区块链科技(上海)有限公司 | 区块链系统中的数据广播方法、节点和区块链系统 |
CN115208881A (zh) * | 2022-06-02 | 2022-10-18 | 哈尔滨工业大学(深圳) | 区块链的共识方法、设备及存储介质 |
WO2023045533A1 (zh) * | 2021-09-24 | 2023-03-30 | 蚂蚁区块链科技(上海)有限公司 | 区块链的共识 |
WO2023056966A1 (zh) * | 2021-10-09 | 2023-04-13 | 支付宝(杭州)信息技术有限公司 | 共识方法、区块链系统和共识节点 |
WO2023056964A1 (zh) * | 2021-10-09 | 2023-04-13 | 支付宝(杭州)信息技术有限公司 | 共识方法、区块链系统和共识节点 |
CN116755640A (zh) * | 2023-08-21 | 2023-09-15 | 腾讯科技(深圳)有限公司 | 联盟链的数据处理方法、装置、计算机设备和存储介质 |
EP4332870A4 (en) * | 2021-09-24 | 2024-03-20 | Tencent Tech Shenzhen Co Ltd | METHOD AND APPARATUS FOR PROCESSING TRANSACTION DATA, COMPUTER DEVICE AND STORAGE MEDIUM |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114254050B (zh) * | 2022-03-02 | 2022-06-07 | 恒生电子股份有限公司 | 区块链网络共识预加载方法、装置、设备及存储介质 |
CN115334038B (zh) * | 2022-08-20 | 2024-03-26 | 信通院(江西)科技创新研究院有限公司 | 一种基于区块链的appid申请管理方法和系统 |
CN115577044A (zh) * | 2022-09-30 | 2023-01-06 | 蚂蚁区块链科技(上海)有限公司 | 区块链系统中的交易执行方法、共识节点和区块链系统 |
CN115996130B (zh) * | 2023-03-23 | 2023-06-30 | 安徽中科晶格技术有限公司 | 基于预置合约的dao治理方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109194466A (zh) * | 2018-10-29 | 2019-01-11 | 南开大学 | 一种基于区块链的云端数据完整性检测方法及系统 |
CN109345386A (zh) * | 2018-08-31 | 2019-02-15 | 阿里巴巴集团控股有限公司 | 基于区块链的交易共识处理方法及装置、电子设备 |
US20200028947A1 (en) * | 2019-03-18 | 2020-01-23 | Alibaba Group Holding Limited | System and method for ending view change protocol |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190340269A1 (en) | 2018-05-02 | 2019-11-07 | Rockwell Automation Technologies, Inc. | Blockchain-enabled industrial devices |
CN109379397B (zh) | 2018-08-31 | 2019-12-06 | 阿里巴巴集团控股有限公司 | 基于区块链的交易共识处理方法及装置、电子设备 |
CN109274667B (zh) | 2018-09-14 | 2020-06-23 | 阿里巴巴集团控股有限公司 | 一种基于区块链的版权事件存证方法及系统 |
CN109272385B (zh) | 2018-09-14 | 2021-03-23 | 创新先进技术有限公司 | 一种基于区块链的版权事件代理存证方法及系统 |
CN111833186A (zh) | 2018-09-20 | 2020-10-27 | 创新先进技术有限公司 | 基于区块链的交易方法、装置和节点设备 |
CN109583886B (zh) | 2018-09-30 | 2020-07-03 | 阿里巴巴集团控股有限公司 | 基于区块链的交易方法、装置和汇出方设备 |
CN109583912A (zh) | 2018-11-14 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 基于区块链的商户认证方法和装置 |
CA3053208C (en) | 2018-12-13 | 2020-10-06 | Alibaba Group Holding Limited | Performing a change of primary node in a distributed system |
US10735464B2 (en) * | 2018-12-29 | 2020-08-04 | Alibaba Group Holding Limited | System and method for detecting replay attack |
US10681083B2 (en) * | 2018-12-29 | 2020-06-09 | Alibaba Group Holding Limited | System and method for detecting replay attack |
US10896171B2 (en) | 2019-06-13 | 2021-01-19 | Tyson York Winarski | Big data blockchains with Merkle trees |
SG11202001989WA (en) | 2019-07-11 | 2020-04-29 | Alibaba Group Holding Ltd | Shared blockchain data storage |
SG11202001975SA (en) | 2019-07-11 | 2020-04-29 | Alibaba Group Holding Ltd | Shared blockchain data storage |
WO2021016998A1 (en) | 2019-08-01 | 2021-02-04 | Advanced New Technologies Co., Ltd. | Shared blockchain data storage based on error correction code |
CN111902817B (zh) | 2019-08-20 | 2024-04-09 | 创新先进技术有限公司 | 基于共享节点和纠错编码的区块链数据存储 |
SG11202001978YA (en) | 2019-09-11 | 2020-04-29 | Alibaba Group Holding Ltd | Shared blockchain data storage based on error correction coding in trusted execution environments |
WO2020011287A2 (en) | 2019-10-15 | 2020-01-16 | Alipay (Hangzhou) Information Technology Co., Ltd. | Indexing and recovering encoded blockchain data |
JP7050955B2 (ja) | 2019-11-06 | 2022-04-08 | アリペイ (ハンジョウ) インフォメーション テクノロジー カンパニー リミテッド | 共有されたブロックチェーンデータの記憶の優先順位付け |
WO2020098820A2 (en) | 2019-12-05 | 2020-05-22 | Alipay (Hangzhou) Information Technology Co., Ltd. | Performing map iterations in a blockchain-based system |
CA3098649A1 (en) | 2019-12-05 | 2020-05-22 | Alipay (Hangzhou) Information Technology Co., Ltd. | Performing map iterations in a blockchain-based system |
EP3797375B1 (en) | 2020-02-24 | 2022-10-05 | Alipay (Hangzhou) Information Technology Co., Ltd. | Blockchain-based consensus process |
WO2020169123A2 (en) | 2020-06-08 | 2020-08-27 | Alipay Labs (singapore) Pte. Ltd. | Blockchain-based smart contract pools |
-
2020
- 2020-07-03 CN CN202010630328.7A patent/CN111526219B/zh active Active
-
2021
- 2021-06-27 US US17/359,581 patent/US11368317B2/en active Active
- 2021-06-29 EP EP21182382.8A patent/EP3934165B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109345386A (zh) * | 2018-08-31 | 2019-02-15 | 阿里巴巴集团控股有限公司 | 基于区块链的交易共识处理方法及装置、电子设备 |
CN109194466A (zh) * | 2018-10-29 | 2019-01-11 | 南开大学 | 一种基于区块链的云端数据完整性检测方法及系统 |
US20200028947A1 (en) * | 2019-03-18 | 2020-01-23 | Alibaba Group Holding Limited | System and method for ending view change protocol |
CN110800258A (zh) * | 2019-03-18 | 2020-02-14 | 阿里巴巴集团控股有限公司 | 用于结束视图更改协议的系统和方法 |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11240034B2 (en) | 2020-07-03 | 2022-02-01 | Alipay (Hangzhou) Information Technology Co., Ltd. | Consensus methods and systems in consortium blockchain |
US11271748B2 (en) | 2020-07-03 | 2022-03-08 | Alipay (Hangzhou) Information Technology Co., Ltd. | Consensus methods and systems in consortium blockchain |
US11251967B2 (en) | 2020-07-03 | 2022-02-15 | Alipay (Hangzhou) Information Technology Co., Ltd. | Consensus methods and systems in consortium blockchain |
CN112835743B (zh) * | 2021-01-25 | 2023-12-19 | 中央财经大学 | 分布式账本数据存储优化方法、装置、电子设备及介质 |
CN112835743A (zh) * | 2021-01-25 | 2021-05-25 | 中央财经大学 | 分布式账本数据存储优化方法、装置、电子设备及介质 |
CN113573255A (zh) * | 2021-07-26 | 2021-10-29 | 上海点融信息科技有限责任公司 | 基于区块链进行共识的方法、装置及存储介质 |
WO2023045533A1 (zh) * | 2021-09-24 | 2023-03-30 | 蚂蚁区块链科技(上海)有限公司 | 区块链的共识 |
EP4332870A4 (en) * | 2021-09-24 | 2024-03-20 | Tencent Tech Shenzhen Co Ltd | METHOD AND APPARATUS FOR PROCESSING TRANSACTION DATA, COMPUTER DEVICE AND STORAGE MEDIUM |
CN113872961A (zh) * | 2021-09-24 | 2021-12-31 | 支付宝(杭州)信息技术有限公司 | 一种区块链的共识方法、共识节点及电子设备 |
CN113872961B (zh) * | 2021-09-24 | 2023-09-29 | 支付宝(杭州)信息技术有限公司 | 一种区块链的共识方法、共识节点及电子设备 |
CN113821569A (zh) * | 2021-09-30 | 2021-12-21 | 广州智链未来科技有限公司 | 一种区块链的共识方法及区块链 |
CN113821569B (zh) * | 2021-09-30 | 2024-02-06 | 广州智链未来科技有限公司 | 一种区块链的共识方法及区块链 |
CN114584312A (zh) * | 2021-10-09 | 2022-06-03 | 支付宝(杭州)信息技术有限公司 | 一种共识方法、区块链系统和共识节点 |
CN114584312B (zh) * | 2021-10-09 | 2024-03-29 | 支付宝(杭州)信息技术有限公司 | 一种共识方法、区块链系统和共识节点 |
CN113761071A (zh) * | 2021-10-09 | 2021-12-07 | 支付宝(杭州)信息技术有限公司 | 一种共识方法、区块链系统和共识节点 |
WO2023056966A1 (zh) * | 2021-10-09 | 2023-04-13 | 支付宝(杭州)信息技术有限公司 | 共识方法、区块链系统和共识节点 |
WO2023056964A1 (zh) * | 2021-10-09 | 2023-04-13 | 支付宝(杭州)信息技术有限公司 | 共识方法、区块链系统和共识节点 |
WO2023056958A1 (zh) * | 2021-10-09 | 2023-04-13 | 支付宝(杭州)信息技术有限公司 | 共识方法、区块链系统和共识节点 |
WO2023056967A1 (zh) * | 2021-10-09 | 2023-04-13 | 支付宝(杭州)信息技术有限公司 | 共识方法、区块链系统和共识节点 |
WO2023056974A1 (zh) * | 2021-10-09 | 2023-04-13 | 支付宝(杭州)信息技术有限公司 | 共识方法、区块链系统和共识节点 |
CN113630257A (zh) * | 2021-10-09 | 2021-11-09 | 支付宝(杭州)信息技术有限公司 | 一种共识方法、区块链系统和共识节点 |
CN113630257B (zh) * | 2021-10-09 | 2022-01-04 | 支付宝(杭州)信息技术有限公司 | 一种共识方法、区块链系统和共识节点 |
CN114710512B (zh) * | 2022-03-30 | 2023-09-29 | 蚂蚁区块链科技(上海)有限公司 | 共识结果的分发方法、节点和区块链系统 |
CN114710512A (zh) * | 2022-03-30 | 2022-07-05 | 蚂蚁区块链科技(上海)有限公司 | 共识结果的分发方法、节点和区块链系统 |
CN115208881A (zh) * | 2022-06-02 | 2022-10-18 | 哈尔滨工业大学(深圳) | 区块链的共识方法、设备及存储介质 |
CN115208881B (zh) * | 2022-06-02 | 2024-03-26 | 哈尔滨工业大学(深圳) | 区块链的共识方法、设备及存储介质 |
CN115174574A (zh) * | 2022-06-30 | 2022-10-11 | 蚂蚁区块链科技(上海)有限公司 | 区块链系统中的数据广播方法、节点和区块链系统 |
CN116755640A (zh) * | 2023-08-21 | 2023-09-15 | 腾讯科技(深圳)有限公司 | 联盟链的数据处理方法、装置、计算机设备和存储介质 |
CN116755640B (zh) * | 2023-08-21 | 2024-02-09 | 腾讯科技(深圳)有限公司 | 联盟链的数据处理方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP3934165B1 (en) | 2023-12-20 |
EP3934165A1 (en) | 2022-01-05 |
CN111526219B (zh) | 2021-02-09 |
US11368317B2 (en) | 2022-06-21 |
US20220006655A1 (en) | 2022-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111526219B (zh) | 一种联盟链的共识方法及联盟链系统 | |
CN111522822A (zh) | 一种区块链共识方法、装置及电子设备 | |
CN111523153B (zh) | 一种区块生成方法及共识节点 | |
KR102230829B1 (ko) | 합의 시스템 다운타임 복구 | |
CN111523899B (zh) | 联盟链的共识方法、数据校验方法、装置及系统 | |
KR20200112633A (ko) | 합의 시스템 다운타임 복구 | |
CN113852691A (zh) | 一种区块链的共识方法、共识节点及电子设备 | |
CN113873030A (zh) | 一种区块链的共识方法、共识节点及电子设备 | |
WO2023045533A1 (zh) | 区块链的共识 | |
CN110022216A (zh) | 低通信复杂度的高效异步拜占庭共识方法、网络通信平台 | |
CN113849564B (zh) | 一种区块链的共识方法、共识节点及电子设备 | |
CN109586949B (zh) | 区块生成方法及计算机存储介质 | |
CN109254956B (zh) | 一种数据下载的方法、装置及电子设备 | |
CN114936253A (zh) | 区块链的共识方法及装置、电子设备、存储介质 | |
CN111522696B (zh) | 区块链共识节点的宕机处理方法、数据持久化方法及硬件 | |
CN116232893A (zh) | 分布式系统的共识方法、装置、电子设备及存储介质 | |
CN114529414A (zh) | 一种区块链的交易处理方法、区块链节点及电子设备 | |
CN113872961B (zh) | 一种区块链的共识方法、共识节点及电子设备 | |
WO2023221772A1 (zh) | 基于区块链网络的数据处理方法及相关产品 | |
US20240134739A1 (en) | Method and apparatus for storing blockchain data based on error correction code | |
CN117473020B (zh) | 数据存取方法、系统及计算机存储介质和终端设备 | |
CN114357079A (zh) | 一种基于区块链的数据处理方法、节点设备、系统及平台 | |
CN115733678A (zh) | 一种数据恢复方法及装置 | |
CN117155954A (zh) | 一种区块同步方法、装置、设备、存储介质及产品 | |
CN116431361A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40036324 Country of ref document: HK |