CN109819003A - 一种区块链的分层共识方法和系统 - Google Patents
一种区块链的分层共识方法和系统 Download PDFInfo
- Publication number
- CN109819003A CN109819003A CN201711174609.0A CN201711174609A CN109819003A CN 109819003 A CN109819003 A CN 109819003A CN 201711174609 A CN201711174609 A CN 201711174609A CN 109819003 A CN109819003 A CN 109819003A
- Authority
- CN
- China
- Prior art keywords
- message
- node
- network
- nodes
- backbone
- 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 34
- 230000004044 response Effects 0.000 claims description 11
- 230000005540 biological transmission Effects 0.000 claims 4
- 230000008569 process Effects 0.000 abstract description 9
- 238000012795 verification Methods 0.000 description 32
- 230000007246 mechanism Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种区块链的分层共识方法和系统。将全网络中参与共识的计算机节点进行分组,把全网络划分为一个主干网和多个相互独立的子网络,主干网是共识的第一层,各子网络是共识的第二层;区块链网络中节点达成共识的过程通过分层的策略实现,第一层主干网中的节点首先形成共识,第二层子网络中的节点再同步形成共识。由于主干网中的节点数量比全网络中的节点数量大大减少,当全网络节点数量较大时区块链系统仍然能够高效的达成一致,网络带宽占用的更少。
Description
技术领域
本发明属于区块链技术领域,特别是涉及一种区块链的分层共识方法和系统。
背景技术
区块链是一种去中心化的、由各节点参与的分布式数据库技术。区块链网络中记录的信息由所有验证节点共同参与记录,无需任何中心化的节点审核,记录的信息具有不可伪造和防篡改的特点。完备可追溯、去中心化和去信用化是区块链技术的三大特点。区块链没有一个中心的机构,各个节点信息的一致性是通过区块链的共识机制来保证的。区块链共识机制是在拜占庭容错的分布式一致性算法基础上,根据具体业务场景传输和同步数据的通信模型。共识方法是区块链的核心技术之一,方法的性能直接影响系统的有效性。
目前常见的共识方法有工作量证明机制、权益证明机制、授权股权证明机制、实用拜占庭容错协议等。
工作量证明机制(Proof of Work,POW),网络中的节点需要通过一定工作量的计算得到随即哈希散列的数值解,才能通过节点竞争获取记账的权利(挖矿)。一般节点的计算机算力越强越容易得到记账权利及相应奖励。每次达成共识需要全网共同参与运算,性能效率比较低,容错性方面允许全网50%节点出错。
权益证明机制(Proof of Stake,POS),已有很多不同变种,它将POW中的算力改为系统权益,基本概念是产生区块的难度应该与用户在网络里所占的股权成比例。拥有数字资产越多,寻找随机数的速度就越快。相对于POW,一定程度减少了数学运算带来的资源消耗,性能也得到了相应的提升。但是POS中,拥有权益的参与者未必希望参与记账,并且容易产生分叉。
授权股权证明机制(Delegate Proof of Stake,DPOS),在PoS的基础上,将记账人的角色专业化,先通过权益来选出记账人,然后记账人之间再轮流记账,过程类似于董事会投票。但是这种方式依然没有解决最终性问题,需要检查点机制来弥补最终性。
实用拜占庭容错协议(Practical Byzantine Fault Tolerance,PBFT),是一种采用许可投票、少数服从多数来选举领导者进行记账的共识机制。该共识机制允许强监管节点参与,具备权限分级能力,性能更高,耗能更低,并且该共识机制容许拜占庭容错,允许33%的节点作恶,容错性为33%。
目前的共识方法还不完善,不能适应所有应用场景,尤其是网络节点数量大或存在多个子网的情况下,需要设计有针对性的共识方法,以提高共识的效率,减少网络流量。
发明内容
为了克服上述现有技术的不足,本发明提供了一种区块链的分层共识方法和系统,能够在网络中节点数量较大时,使区块链系统高效的达成一致。
本发明技术方案将全网络中参与共识的计算机节点进行分组,把全网络划分为一个主干网和多个相互独立的子网络,主干网是共识的第一层,各子网络是共识的第二层。所述子网络是由多个计算机节点组成,并且不存在一个计算机节点同时属于两个不同的子网络。组成子网络的节点会选举出一个主节点,所述主干网由所有子网络中的主节点组成。区块链网络中节点达成共识的过程通过分层的策略实现,第一层主干网中的节点首先形成共识,第二层子网络中的节点再同步形成共识。由于主干网中的节点数量比全网络中的节点数量大大减少,因此当全网络节点数量较大时区块链系统仍然能够高效的达成一致,并且相比于PBFT共识算法来说,网络带宽占用的更少。
具体而言,本发明提供了一种区块链的分层共识方法,所述方法包括:
(1)将参与验证的计算机节点分组为两层结构,选取各二级子网络主节点和一级主干网主节点,所述计算机节点分组是指将计算机节点划分为不同的小组,小组内的节点组成二级子网络,每个二级子网络通过投票方式选取出一个二级子网络主节点,而每个二级子网络主节点组成一级主干网,再次通过投票方式选取出一个一级主干网主节点;
(2)客户端发起请求消息到主干网主节点;
(3)主干网主节点接收请求消息后,生成请求序号,然后组织预准备消息发给所述主干网中其它各节点;
(4)主干网中各节点验证预准备消息通过后,组织主干网准备消息发送给所述主干网中其它各节点,同时组织主节点准备消息发送给自身所在二级子网络内的其它各节点,所述二级子网络内的其它各节点在验证消息后组织二级子网准备消息返回给发送主节点;
(5)主干网中各节点验证主干网准备消息和二级子网准备消息的合法性,当通过的消息数量达到给定阈值时,生成主干网提交消息并发送给所述主干网中其它各节点;
(6)主干网中各节点接收到主干网提交消息后验证该消息,当通过的消息数量达到给定阈值时,执行提交操作,然后组织主节点提交消息并发送给自身所在的二级子网络内的其它各节点,所述二级子网络内的其它各节点在执行提交操作后,组织提交回复消息并返回给发送主节点;
(7)各二级子网络主节点接收提交回复消息后,组织响应消息返回给客户端。
本发明还提供了一种区块链的分层共识系统,所述系统包括:主干网主节点、主干网节点、二级子网络节点、客户端节点和共享账本数据库。所述客户端节点为发起请求消息的节点;所述共享账本数据库为一个分布式的各节点一致的全网统一数据库;所述主干网主节点包括排序装置、消息验证装置、编解码装置、消息读写装置和消息收发装置,主干网主节点同时也是主干网节点之一;所述主干网节点和二级子网络节点均为多个节点,均包括消息验证装置、编解码装置、消息读写装置和消息收发装置,并且主干网节点同时也是二级子网络的节点之一。主干网主节点与主干网节点直接进行消息通信,主干网节点与二级子网络节点直接进行消息通信。
本发明的其它特征和优点将在随后的说明书中阐述,并且部分地从说明书中变得显而易见,或者通过实施本发明而了解。
附图说明
图1为一种区块链的分层共识方法的流程图。
图2为一种区块链的分层共识方法的一个具体实施例的共识过程流程图。
图3为一种区块链的分层共识的系统框图。
具体实施方式
容易理解,依据本发明的技术方案,在不变更本发明的实质精神的情况下,本领域的一般技术人员可以想象出本发明区块链的分层共识方法和系统的多种实施方式。因此,以下具体实施方式和附图仅是对本发明的技术方案的示例性说明,而不应当视为本发明的全部或者视为对本发明技术方案的限制或限定。
本发明技术方案将全网络中参与共识的计算机节点进行分组,把全网络划分为一个主干网和多个相互独立的子网络,主干网是共识的第一层,各子网络是共识的第二层。区块链节点达成共识的过程通过分层的策略实现,从而在节点数量较大时区块链系统仍然能够高效的达成一致,并且相比于PBFT共识方法来说,网络带宽占用的更少。
如图1所示,是本发明方法一个实施例的流程图,包括以下基本步骤:
在步骤101中将参与验证的计算机节点分组为两层结构,选取各二级子网络主节点和一级主干网主节点。所述计算机节点分组是指将计算机节点划分为不同的小组,小组内的节点组成二级子网络,每个二级子网络通过投票方式选取出一个二级子网络主节点,而每个二级子网络主节点组成一级主干网,再次通过投票方式选取出一个一级主干网主节点。
图2为本发明区块链的分层共识方法的一个具体实施例的共识过程流程图。按照本发明的一个实施例,假设有9台参与验证的计算机节点,分别为A0、A1、A2、B0、B1、B2、C0、C1、C2,将这些节点分为三组,其中A0、A1、A2组成第一组二级子网络,选取的主节点为A0;B0、B1、B2组成第二组二级子网络,选取的主节点为B0;C0、C1、C2组成第三组二级子网络,选取的主节点为C0。节点A0、B0、C0组成一级主干网,选取主干网主节点为A0。需要说明的是,本发明并不试图限定任何具体的分组策略,因为这些策略取决于应用本身的特性。本发明对此进行描述仅仅是为了说明本发明的一个应用场景。
步骤102为请求阶段,客户端发起请求消息到主干网主节点。在本发明的一个实施例中,客户端CT发起请求消息到主干网主节点A0,请求消息的形式为<REQUEST,t,ct,Φ(c),m>,其中,字符串常量REQUEST表示消息类型为请求消息;t为时间戳;ct为客户端标识,用于唯一确定一个客户端;Φ(c)是客户端CT对正文内容的数字签名;m为正文内容。
步骤103为主干网预准备阶段,主干网主节点接收到请求消息后,首先将这些请求消息按顺序排列,为每一个请求消息分配一个唯一的请求序号,然后将接收的请求消息和新分配的请求序号组织成预准备消息并发给所述主干网中其它各节点。在本发明的一个实施例中,主干网的主节点A0将接收的请求消息排序并生成请求序号,然后组织成预准备消息发送给主干网络中其它各节点B0,C0。预准备消息的形式为<PRE-PREPARE,v,n,Φ(a0),D(m),m>,其中,字符串常量PRE-PREPARE表示消息类型为预准备消息;v是当前视图(即一次共识过程)的一个编号,每个请求消息都会对应一个视图编号,从接收请求消息起连续编号;n是生成的请求序号;Φ(a0)是节点A0对正文内容的数字签名;D(m)为对正文内容的数字摘要;m为正文内容。
步骤104为准备阶段,主干网中各节点接收到预准备消息后,首先进行合法性的验证,然后将通过验证的预准备消息组织成主干网准备消息并发送给所述主干网中其它各节点,同时也组织成主节点准备消息并发送给自身所在二级子网络内的其它各节点,所述二级子网络内的其它各节点在接收到主节点准备消息后进行合法性验证,通过后组织成二级子网准备消息返回给发送主节点。
主干网中每个节点都会检查接收各类消息的视图编号是否和自己当前的视图编号相同,如果过程中发现视图编号不相同,各类消息就不会被继续处理。合法性检测除了检查视图编号之外,每个节点在接收到各类消息的时候也会检查对应的请求序号和视图是否匹配,以及检查数字签名和数字摘要是否正确。在本发明的一个实施例中,主干网中各节点A0,B0,C0对预准备消息进行验证,检查接收预准备消息中的数字签名和数字摘要是否正确,检查当前节点的视图是否为v,检查是否收到过相同的v和n的消息,而摘要却不一样。如果验证不通过则不会继续处理;否则验证通过后会组织主干网准备消息并发送给主干网中的其它节点,同时也组织主节点准备消息并发送给自身所在二级子网络内的其它节点。主干网准备消息的形式为<PREPARE0,v,n,Φ(i,j),D(m),i,j>,主节点准备消息的形式为<PREPARE1,v,n,Φ(i,j),D(m),m,i,j>,其中,字符串常量PREPARE0表示消息类型为主干网准备消息;PREPARE1表示消息类型为主节点准备消息;v是当前视图的一个编号;n是请求序号;Φ(i,j)是第i组(i为A,B,C三组)第j个节点(j为i组中的节点序号,j为0,1,2)对正文内容的数字签名;D(m)对正文内容的数字摘要;m为正文内容。
A0自身所在的二级子网络为第一组,子网络内的其它各节点为A1和A2,它们在接收到主节点准备消息PREPARE1后进行验证,检查主节点准备消息中的数字签名和数字摘要是否正确,检查当前节点的视图是否为v,检查是否收到过相同的v和n的消息,而摘要却不一样。如果验证不通过则不会继续处理;否则验证通过后会组织二级子网准备消息PREPARE2并返回二级子网络主节点A0。二级子网准备消息的形式为<PREPARE2,v,n,Φ(i,j),D(m),i,j>,其中,字符串常量PREPARE2表示消息类型为二级子网准备消息。类似的,B0发送的主节点准备消息PREPARE1经B1和B2验证后生成二级子网准备消息并返回B0;C0发送的主节点准备消息PREPARE1经C1和C2验证后生成二级子网准备消息并返回C0。
步骤105为主干网提交阶段,主干网中节点接收到主干网准备消息以及二级子网准备消息后,进行合法性验证,当验证通过的消息数量达到给定的阈值时,生成主干网提交消息并发送给所述主干网中其它各节点。在本发明的一个实施例中,主干网中各节点A0,B0,C0对接收的主干网准备消息PREPARE0以及二级子网准备消息PREPARE2进行验证,检查接收消息中的数字签名和数字摘要是否正确,检查当前节点的视图是否为v,检查是否收到过相同的v和n的消息,而摘要却不一样。如果接收的验证通过的消息中,主干网准备消息的数量大于等于(RN+1)/2-1(不包括本节点),并且二级子网准备消息的数量大于等于(LN(i)+1)/2-1(不包括本节点),则进入主干网提交阶段,生成主干网提交消息并发送给主干网中其它各节点;否则不做处理。其中,RN为主干网中的节点数量;LN(i)为第i组二级子网络的节点数量。主干网提交消息的形式为<COMMIT0,v,n,Φ(i,j),D(m),i,j>,其中,字符串常量COMMIT0表示消息类型为主干网提交消息。
步骤106为子网络提交阶段,主干网中各节点接收的主干网提交消息数量达到给定阈值后,开始执行提交操作,将正文内容等相关信息写入本节点数据库中,然后组织主节点提交消息并发送给自身所在的二级子网络内的其它各节点。所述二级子网络内的其它各节点在收到主节点提交消息后,开始执行提交操作,将正文内容等相关信息写入本节点数据库中,然后组织提交回复消息并返回给发送主节点。
在本发明的一个实施例中,主干网中主节点A0对主干网提交消息进行验证,检查接收消息中的数字签名和数字摘要是否正确,检查当前节点的视图是否为v,检查是否收到过相同的v和n的消息,而摘要却不一样。如果节点A0接收的主干网提交消息中,验证通过的数量大于等于(RN+1)/2-1(不包括A0节点),则节点A0执行提交操作,将正文内容等相关信息写入本节点数据库,然后组织主节点提交消息并发送给其自身所在的二级子网络内的其它各节点A1和A2。主节点提交消息的形式为<COMMIT1,v,n,Φ(i,j),D(m),i,j>,其中,字符串常量COMMIT1表示消息类型为主节点提交消息。
A1和A2这两个节点接收到主节点提交消息后进行验证,检查主节点提交消息中的数字签名和数字摘要是否正确,检查当前节点的视图是否为v,检查是否收到过相同的v和n的消息,而摘要却不一样。如果验证不通过则不会继续处理;否则验证通过后执行提交操作,将正文内容等相关信息写入本节点数据库,然后组织提交回复消息并返回二级子网络主节点A0。提交回复消息的形式为<COMMIT1-REPLY,v,n,Φ(i,j),D(m),i,j>,其中,字符串常量COMMIT1-REPLY表示消息类型为提交回复消息。类似的,B0发送主节点提交消息给B1和B2,这两个节点验证消息通过后执行提交操作,并将执行结果签名后以提交回复消息的形式返回B0;C0发送主节点提交消息给C1和C2,这两个节点验证消息通过后执行提交操作,并将执行结果签名后以提交回复消息的形式返回C0。
步骤107为响应阶段,各二级子网络主节点接收提交回复消息后首先进行合法性的验证,然后将通过验证的提交回复消息组织成响应消息并发送给客户端。在本发明的一个实施例中,各二级子网络主节点接收提交回复消息并进行验证,检查接收提交回复消息中的数字签名和数字摘要是否正确,检查当前节点的视图是否为v,检查是否收到过相同的v和n的消息,而摘要却不一样。如果验证不通过则不会继续处理;否则验证通过后会组织响应消息并发送给客户端CT。响应消息的形式为<REPLY,v,t,ct,Φ(i,j),i,j>,其中,字符串常量REPLY表示消息类型为响应消息。
上述过程中,所述给定阈值是一个预先给定的值,可以是一个常数值,也可以是一个与主干网节点数或者二级子网络节点数相关的数值。
图3是一种区块链的分层共识的系统框图。一种区块链的分层共识系统301包括主干网主节点302、主干网节点303、二级子网络节点304、客户端节点305、共享账本数据库306。所述客户端节点305为发起请求消息的节点;所述共享账本数据库306为一个分布式的各节点一致的全网统一数据库;所述主干网主节点包括排序装置307、消息验证装置308、编解码装置309、消息读写装置310、消息收发装置311,主干网主节点同时也是主干网节点之一;所述主干网节点和二级子网络节点均为多节点,均包括消息验证装置308、编解码装置309、消息读写装置310、消息收发装置311,并且主干网节点同时也是二级子网络的节点之一。主干网主节点302与主干网节点303直接进行消息通信,主干网节点303与二级子网络节点304直接进行消息通信。
具体而言,客户端节点305发送请求消息到主干网主节点302,主干网主节点302中的消息收发装置311接收到请求消息,编解码装置309和消息验证装置308对请求消息进行解码和验证,排序装置307将接收的请求消息进行排序,并生成请求序号,然后通过编解码装置309编码生成预准备消息,并通过消息收发装置311将预准备消息发送给主干网络中其它各节点303。
主干网节点303中的消息收发装置311接收预准备消息,编解码装置309和消息验证装置308对消息进行解码和验证,然后通过编解码装置309编码生成主干网准备消息和主节点准备消息,并通过消息收发装置311将主干网准备消息发送给主干网络中其它各节点303,同时将主节点准备消息发送给自身所在二级子网络内的其它各节点304。二级子网络节点304中的消息收发装置311接收主节点准备消息,编解码装置309和消息验证装置308对消息进行解码和验证,然后通过编解码装置309生成二级子网准备消息,并通过消息收发装置311将二级子网准备消息返回给发送主节点303。
主干网节点303通过自身的消息收发装置311接收主干网准备消息和二级子网准备消息,通过编解码装置309和消息验证装置308对消息进行解码和验证,消息验证装置308还根据验证通过的主干网准备消息的数量和二级子网准备消息的数量判断是否能够进入提交阶段,然后通过编解码装置309生成主干网提交消息,并通过消息收发装置311将主干网提交发送给其它主干网节点303。
主干网节点303中的消息收发装置311接收主干网提交消息,编解码装置309和消息验证装置308对消息进行解码和验证,消息验证装置308还根据验证通过的主干网提交消息的数量判断是否能够执行提交操作,通过各自节点中的消息读写装置310将正文内容及相关信息写入共享账本数据库306,然后通过编解码装置309编码生成主节点提交消息,并通过消息收发装置311将主节点提交消息发送给自身所在二级子网络内的其它各节点304。二级子网络节点304中的消息收发装置311接收主节点提交消息,编解码装置309和消息验证装置308对消息进行解码和验证,然后通过编解码装置309生成提交回复消息,并通过消息收发装置311将提交回复消息返回给发送主节点303。
主干网节点303中的消息收发装置311接收提交回复消息,编解码装置309和消息验证装置308对消息进行解码和验证,然后通过编解码装置309生成响应消息,并通过消息收发装置311将响应消息返回给客户端节点305。
Claims (8)
1.一种区块链的分层共识方法,其特征在于,将参与验证的计算机节点分组为两层结构,并且选取各二级子网络主节点和一级主干网主节点;客户端发起请求消息到主干网主节点;主干网主节点接收到请求消息后验证该消息,生成请求序号,然后组织预准备消息发给所述主干网中其它各节点;主干网中各节点接收到预准备消息后验证该消息,然后组织主干网准备消息发送给所述主干网中其它各节点,同时组织主节点准备消息发送给自身所在二级子网络内的其它各节点并接收返回的二级子网准备消息;主干网中各节点接收到主干网准备消息和二级子网准备消息后,验证该消息,当通过的消息数量达到给定阈值时,生成主干网提交消息并发送给所述主干网中其它各节点;主干网中各节点接收到主干网提交消息后验证该消息,当通过的消息数量达到给定阈值时,执行提交操作,然后组织主节点提交消息发送给自身所在的二级子网络内的其它各节点并接收返回的提交回复消息;各二级子网络主节点接收提交回复消息后组织响应消息并返回给客户端。
2.根据权利要求1所述的区块链的分层共识方法,其特征在于,所述计算机节点分组是指将计算机节点划分为不同的小组,小组内的节点组成二级子网络,每个二级子网络通过投票方式选取出一个二级子网络主节点,而每个二级子网络主节点组成一级主干网,一级主干网中的各个节点通过投票方式选取出一个一级主干网主节点。
3.根据权利要求1所述的区块链的分层共识方法,其特征在于,所述二级子网络内的其它各节点在接收到主节点准备消息后验证该消息,验证通过后组织二级子网准备消息返回给发送主节点。
4.根据权利要求1所述的区块链的分层共识方法,其特征在于,所述验证该消息是指每个节点检查接收的各类消息的视图编号是否和自己的视图编号相同,如果发现视图编号不相同,该消息就不会被处理。
5.根据权利要求1所述的区块链的分层共识方法,其特征在于,所述二级子网络内的其它各节点在接收到主节点提交消息后验证该消息,然后执行提交操作,组织提交回复消息返回给发送主节点。
6.根据权利要求1所述的区块链的分层共识方法,其特征在于:所述提交操作是指将信息写入到节点本地数据库中的操作。
7.一种区块链的分层共识系统,其特征在于,包括主干网主节点、主干网节点、二级子网络节点、客户端节点和共享账本数据库;所述客户端节点为发起请求消息的节点;所述共享账本数据库为一个分布式的各节点一致的全网统一数据库;所述主干网主节点包括排序装置、消息验证装置、编解码装置、消息读写装置和消息收发装置,主干网主节点同时也是主干网节点之一;所述主干网节点和二级子网络节点均为多个节点,均包括消息验证装置、编解码装置、消息读写装置和消息收发装置,并且主干网节点同时也是二级子网络的节点之一;主干网主节点与主干网节点直接进行消息通信,主干网节点与二级子网络节点直接进行消息通信。
8.根据权利要求1所述的区块链的分层共识系统,其特征在于,
客户端节点发送请求消息到主干网主节点,主干网主节点中的消息收发装置接收到请求消息,编解码装置和消息验证装置对请求消息进行解码和验证,排序装置将接收的请求消息进行排序,并生成请求序号,然后通过编解码装置编码生成预准备消息,并通过消息收发装置将预准备消息发送给主干网络中其它各节点;
主干网节点中的消息收发装置接收预准备消息,编解码装置和消息验证装置对消息进行解码和验证,然后通过编解码装置编码生成主干网准备消息和主节点准备消息,并通过消息收发装置将主干网准备消息发送给主干网络中其它各节点,同时将主节点准备消息发送给自身所在二级子网络内的其它各节点;二级子网络节点中的消息收发装置接收主节点准备消息,编解码装置和消息验证装置对消息进行解码和验证,然后通过编解码装置生成二级子网准备消息,并通过消息收发装置将二级子网准备消息返回给发送主节点;
主干网节点通过自身的消息收发装置接收主干网准备消息和二级子网准备消息,通过编解码装置和消息验证装置对消息进行解码和验证,消息验证装置还根据验证通过的主干网准备消息的数量和二级子网准备消息的数量判断是否能够进入提交阶段,然后通过编解码装置生成主干网提交消息,并通过消息收发装置将主干网提交发送给其它主干网节点;
主干网节点中的消息收发装置接收主干网提交消息,编解码装置和消息验证装置对消息进行解码和验证,消息验证装置还根据验证通过的主干网提交消息的数量判断是否能够执行提交操作,通过各自节点中的消息读写装置将正文内容及相关信息写入共享账本数据库,然后通过编解码装置编码生成主节点提交消息,并通过消息收发装置将主节点提交消息发送给自身所在二级子网络内的其它各节点;二级子网络节点中的消息收发装置接收主节点提交消息,编解码装置和消息验证装置对消息进行解码和验证,然后通过编解码装置生成提交回复消息,并通过消息收发装置将提交回复消息返回给发送主节点;
主干网节点中的消息收发装置接收提交回复消息,编解码装置和消息验证装置对消息进行解码和验证,然后通过编解码装置生成响应消息,并通过消息收发装置将响应消息返回给客户端节点。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201711174609.0A CN109819003A (zh) | 2017-11-22 | 2017-11-22 | 一种区块链的分层共识方法和系统 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201711174609.0A CN109819003A (zh) | 2017-11-22 | 2017-11-22 | 一种区块链的分层共识方法和系统 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN109819003A true CN109819003A (zh) | 2019-05-28 |
Family
ID=66599809
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201711174609.0A Pending CN109819003A (zh) | 2017-11-22 | 2017-11-22 | 一种区块链的分层共识方法和系统 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN109819003A (zh) |
Cited By (21)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110445778A (zh) * | 2019-08-01 | 2019-11-12 | 中盾云链(广州)信息科技有限公司 | 一种应用于联盟链的共识算法 |
| CN110474986A (zh) * | 2019-08-20 | 2019-11-19 | 深圳前海微众银行股份有限公司 | 一种基于区块链系统的共识方法、装置及系统 |
| CN110728515A (zh) * | 2019-09-28 | 2020-01-24 | 北京瑞卓喜投科技发展有限公司 | 基于区块链的业务处理方法及装置 |
| CN110766552A (zh) * | 2019-09-28 | 2020-02-07 | 北京瑞卓喜投科技发展有限公司 | 基于区块链的业务处理方法及装置 |
| CN110852882A (zh) * | 2019-11-11 | 2020-02-28 | 北京众享比特科技有限公司 | 用于区块链网络的分组共识方法、装置、设备和介质 |
| CN111371905A (zh) * | 2020-03-27 | 2020-07-03 | 中国人民解放军国防科技大学 | 一种基于云计算的区块链分层共识证明体系结构与方法 |
| CN111464631A (zh) * | 2020-03-31 | 2020-07-28 | 成都质数斯达克科技有限公司 | 联盟区块链中的业务共识方法及装置 |
| CN111711711A (zh) * | 2020-05-28 | 2020-09-25 | 北京邮电大学 | 基于区块链的顶级域名管理和解析方法及系统 |
| CN111770178A (zh) * | 2020-06-29 | 2020-10-13 | 深圳前海微众银行股份有限公司 | 一种领导节点选举方法及系统 |
| CN111858105A (zh) * | 2020-08-26 | 2020-10-30 | 电子科技大学 | 基于改进多层pbft的个人档案许可链管理系统及方法 |
| CN112150141A (zh) * | 2019-06-26 | 2020-12-29 | 京东数字科技控股有限公司 | 一种区块链共识方法、装置和系统 |
| CN112202775A (zh) * | 2020-09-29 | 2021-01-08 | 北京理工大学 | 一种有向无环图结构区块链的共识机制架构及其方法 |
| CN113037863A (zh) * | 2021-03-31 | 2021-06-25 | 杭州云象网络技术有限公司 | 一种区块链多方协同交叉共识验证方法及系统 |
| CN113259326A (zh) * | 2021-04-21 | 2021-08-13 | 广东电网有限责任公司 | 基于联盟链网络的共识优化方法、装置和计算机设备 |
| CN113259457A (zh) * | 2021-06-02 | 2021-08-13 | 支付宝(杭州)信息技术有限公司 | 区块链子网的信息同步方法及装置 |
| CN113259120A (zh) * | 2021-06-02 | 2021-08-13 | 支付宝(杭州)信息技术有限公司 | 同步节点信息列表的方法 |
| CN113301002A (zh) * | 2020-04-24 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 一种信息处理方法、装置、电子设备以及存储介质 |
| CN113343274A (zh) * | 2021-06-30 | 2021-09-03 | 深圳前海微众银行股份有限公司 | 一种区块链的共识方法及装置 |
| CN113676355A (zh) * | 2021-08-27 | 2021-11-19 | 浙商银行股份有限公司 | 一种区块链多层级组网方法、设备及存储介质 |
| CN115185961A (zh) * | 2022-06-24 | 2022-10-14 | 北京奥星贝斯科技有限公司 | 分布式数据库的节点配置方法、事务日志同步方法和节点 |
| CN120017478A (zh) * | 2025-04-15 | 2025-05-16 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 基于多轮消息交换的分布式请求处理方法及相关设备 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106656974A (zh) * | 2016-10-17 | 2017-05-10 | 江苏通付盾科技有限公司 | 区块链的分组共识方法及系统 |
| CN106789095A (zh) * | 2017-03-30 | 2017-05-31 | 腾讯科技(深圳)有限公司 | 分布式系统及消息处理方法 |
| CN107147735A (zh) * | 2017-05-12 | 2017-09-08 | 北京博晨技术有限公司 | 一种基于分层结构的分布式账本系统 |
| CN107239940A (zh) * | 2017-05-11 | 2017-10-10 | 北京博晨技术有限公司 | 基于区块链系统的网络交易方法及装置 |
| CN107273455A (zh) * | 2017-05-31 | 2017-10-20 | 深圳前海微众银行股份有限公司 | 区块链数据访问方法和装置 |
| CN107360206A (zh) * | 2017-03-29 | 2017-11-17 | 阿里巴巴集团控股有限公司 | 一种区块链共识方法、设备及系统 |
-
2017
- 2017-11-22 CN CN201711174609.0A patent/CN109819003A/zh active Pending
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106656974A (zh) * | 2016-10-17 | 2017-05-10 | 江苏通付盾科技有限公司 | 区块链的分组共识方法及系统 |
| CN107360206A (zh) * | 2017-03-29 | 2017-11-17 | 阿里巴巴集团控股有限公司 | 一种区块链共识方法、设备及系统 |
| CN106789095A (zh) * | 2017-03-30 | 2017-05-31 | 腾讯科技(深圳)有限公司 | 分布式系统及消息处理方法 |
| CN107239940A (zh) * | 2017-05-11 | 2017-10-10 | 北京博晨技术有限公司 | 基于区块链系统的网络交易方法及装置 |
| CN107147735A (zh) * | 2017-05-12 | 2017-09-08 | 北京博晨技术有限公司 | 一种基于分层结构的分布式账本系统 |
| CN107273455A (zh) * | 2017-05-31 | 2017-10-20 | 深圳前海微众银行股份有限公司 | 区块链数据访问方法和装置 |
Cited By (38)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US12126732B2 (en) | 2019-06-26 | 2024-10-22 | Jingdong Technology Holding Co., Ltd. | Blockchain consensus method, device and system |
| WO2020258912A1 (zh) * | 2019-06-26 | 2020-12-30 | 京东数字科技控股有限公司 | 一种区块链共识方法、装置和系统 |
| CN112150141A (zh) * | 2019-06-26 | 2020-12-29 | 京东数字科技控股有限公司 | 一种区块链共识方法、装置和系统 |
| CN110445778A (zh) * | 2019-08-01 | 2019-11-12 | 中盾云链(广州)信息科技有限公司 | 一种应用于联盟链的共识算法 |
| CN110474986B (zh) * | 2019-08-20 | 2022-08-12 | 深圳前海微众银行股份有限公司 | 一种基于区块链系统的共识方法、装置及系统 |
| WO2021032138A1 (zh) * | 2019-08-20 | 2021-02-25 | 深圳前海微众银行股份有限公司 | 一种基于区块链系统的共识方法、装置及系统 |
| CN110474986A (zh) * | 2019-08-20 | 2019-11-19 | 深圳前海微众银行股份有限公司 | 一种基于区块链系统的共识方法、装置及系统 |
| CN110766552A (zh) * | 2019-09-28 | 2020-02-07 | 北京瑞卓喜投科技发展有限公司 | 基于区块链的业务处理方法及装置 |
| CN110728515A (zh) * | 2019-09-28 | 2020-01-24 | 北京瑞卓喜投科技发展有限公司 | 基于区块链的业务处理方法及装置 |
| CN110766552B (zh) * | 2019-09-28 | 2023-10-20 | 北京瑞卓喜投科技发展有限公司 | 基于区块链的业务处理方法及装置 |
| CN110852882A (zh) * | 2019-11-11 | 2020-02-28 | 北京众享比特科技有限公司 | 用于区块链网络的分组共识方法、装置、设备和介质 |
| CN110852882B (zh) * | 2019-11-11 | 2020-11-20 | 北京众享比特科技有限公司 | 用于区块链网络的分组共识方法、装置、设备和介质 |
| CN111371905A (zh) * | 2020-03-27 | 2020-07-03 | 中国人民解放军国防科技大学 | 一种基于云计算的区块链分层共识证明体系结构与方法 |
| CN111371905B (zh) * | 2020-03-27 | 2023-08-01 | 中国人民解放军国防科技大学 | 一种基于云计算的区块链分层共识证明系统与方法 |
| CN111464631A (zh) * | 2020-03-31 | 2020-07-28 | 成都质数斯达克科技有限公司 | 联盟区块链中的业务共识方法及装置 |
| CN111464631B (zh) * | 2020-03-31 | 2023-03-28 | 成都质数斯达克科技有限公司 | 联盟区块链中的业务共识方法及装置 |
| CN113301002A (zh) * | 2020-04-24 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 一种信息处理方法、装置、电子设备以及存储介质 |
| CN113301002B (zh) * | 2020-04-24 | 2023-05-09 | 阿里巴巴集团控股有限公司 | 一种信息处理方法、装置、电子设备以及存储介质 |
| US11611567B2 (en) | 2020-05-28 | 2023-03-21 | Beijing University Of Posts And Telecommunications | Method and system for management and resolution of blockchain-based top-level domain |
| CN111711711A (zh) * | 2020-05-28 | 2020-09-25 | 北京邮电大学 | 基于区块链的顶级域名管理和解析方法及系统 |
| CN111770178B (zh) * | 2020-06-29 | 2025-03-28 | 深圳前海微众银行股份有限公司 | 一种领导节点选举方法及系统 |
| CN111770178A (zh) * | 2020-06-29 | 2020-10-13 | 深圳前海微众银行股份有限公司 | 一种领导节点选举方法及系统 |
| CN111858105B (zh) * | 2020-08-26 | 2021-03-16 | 电子科技大学 | 基于改进多层pbft的个人档案许可链管理系统及方法 |
| CN111858105A (zh) * | 2020-08-26 | 2020-10-30 | 电子科技大学 | 基于改进多层pbft的个人档案许可链管理系统及方法 |
| CN112202775B (zh) * | 2020-09-29 | 2021-06-22 | 北京理工大学 | 一种有向无环图结构区块链的共识机制架构及其方法 |
| CN112202775A (zh) * | 2020-09-29 | 2021-01-08 | 北京理工大学 | 一种有向无环图结构区块链的共识机制架构及其方法 |
| CN113037863A (zh) * | 2021-03-31 | 2021-06-25 | 杭州云象网络技术有限公司 | 一种区块链多方协同交叉共识验证方法及系统 |
| CN113037863B (zh) * | 2021-03-31 | 2022-07-12 | 杭州云象网络技术有限公司 | 一种区块链多方协同交叉共识验证方法及系统 |
| CN113259326A (zh) * | 2021-04-21 | 2021-08-13 | 广东电网有限责任公司 | 基于联盟链网络的共识优化方法、装置和计算机设备 |
| CN113259457B (zh) * | 2021-06-02 | 2021-10-15 | 支付宝(杭州)信息技术有限公司 | 区块链子网的信息同步方法及装置 |
| CN113259120A (zh) * | 2021-06-02 | 2021-08-13 | 支付宝(杭州)信息技术有限公司 | 同步节点信息列表的方法 |
| CN113259457A (zh) * | 2021-06-02 | 2021-08-13 | 支付宝(杭州)信息技术有限公司 | 区块链子网的信息同步方法及装置 |
| CN113343274A (zh) * | 2021-06-30 | 2021-09-03 | 深圳前海微众银行股份有限公司 | 一种区块链的共识方法及装置 |
| CN113676355A (zh) * | 2021-08-27 | 2021-11-19 | 浙商银行股份有限公司 | 一种区块链多层级组网方法、设备及存储介质 |
| CN113676355B (zh) * | 2021-08-27 | 2024-04-23 | 浙商银行股份有限公司 | 一种区块链多层级组网方法、设备及存储介质 |
| CN115185961A (zh) * | 2022-06-24 | 2022-10-14 | 北京奥星贝斯科技有限公司 | 分布式数据库的节点配置方法、事务日志同步方法和节点 |
| CN120017478A (zh) * | 2025-04-15 | 2025-05-16 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 基于多轮消息交换的分布式请求处理方法及相关设备 |
| CN120017478B (zh) * | 2025-04-15 | 2025-07-08 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 基于多轮消息交换的分布式请求处理方法及相关设备 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN109819003A (zh) | 一种区块链的分层共识方法和系统 | |
| Wang et al. | Study of blockchains’s consensus mechanism based on credit | |
| Xie et al. | A survey on blockchain consensus mechanism: research overview, current advances and future directions | |
| CN110971684B (zh) | 一种基于pbft的区块链网络节点负载均衡方法 | |
| CN110990408B (zh) | 基于区块链的业务信息协同方法、业务系统及联盟链 | |
| CN109347804B (zh) | 一种用于区块链的拜占庭容错共识优化方法 | |
| CN108737375B (zh) | 一种区块链共识方法及系统 | |
| CN109447795B (zh) | 一种支持快速达成最终确认性的拜占庭共识方法 | |
| CN113965329A (zh) | 一种跨链互操作系统、方法、介质及数据处理终端 | |
| CN113570357B (zh) | 一种动态分层的高效pbft算法 | |
| CN108848056A (zh) | 基于验证的区块链共识方法 | |
| CN111311414A (zh) | 一种基于一致性哈希算法的区块链多方共识方法 | |
| CN119558832A (zh) | 使用分布式协调的智能合约执行 | |
| CN110445778A (zh) | 一种应用于联盟链的共识算法 | |
| CN114938292B (zh) | 一种基于节点可信度的多层次优化pbft共识方法 | |
| CN109327459A (zh) | 一种联盟区块链网络的共识方法 | |
| CN111798234B (zh) | 一种轻量级区块链系统及构造方法 | |
| CN114449476B (zh) | 一种用于车联网中安全通信的区块链节点共识方法 | |
| CN113626875B (zh) | 一种区块链分片赋能的知识图谱文件存储方法 | |
| CN117896116A (zh) | 基于权重随机选举和分组信誉的pbft的共识方法 | |
| CN114503143A (zh) | 统一协议共识 | |
| CN114861211A (zh) | 一种面向元宇宙场景的数据隐私保护方法、系统、存储介质 | |
| CN113839985B (zh) | 一种基于区块链的跨部门涉案财物信息共享体系系统 | |
| CN114448639B (zh) | 具有唯一性和密钥安全的去中心化身份系统及实现方法 | |
| Xu et al. | Improved PBFT algorithm based on vague sets |
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: 20190528 |