CN111274313B - 分段共识方法、设备和存储介质 - Google Patents

分段共识方法、设备和存储介质 Download PDF

Info

Publication number
CN111274313B
CN111274313B CN202010028960.4A CN202010028960A CN111274313B CN 111274313 B CN111274313 B CN 111274313B CN 202010028960 A CN202010028960 A CN 202010028960A CN 111274313 B CN111274313 B CN 111274313B
Authority
CN
China
Prior art keywords
consensus
transaction
parallel chain
chain
voting
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
Application number
CN202010028960.4A
Other languages
English (en)
Other versions
CN111274313A (zh
Inventor
马登极
王志文
吴思进
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Fuzamei Technology Co Ltd
Original Assignee
Hangzhou Fuzamei Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Fuzamei Technology Co Ltd filed Critical Hangzhou Fuzamei Technology Co Ltd
Priority to CN202010028960.4A priority Critical patent/CN111274313B/zh
Publication of CN111274313A publication Critical patent/CN111274313A/zh
Priority to JP2021540570A priority patent/JP7142396B2/ja
Priority to PCT/CN2020/138897 priority patent/WO2021139534A1/zh
Application granted granted Critical
Publication of CN111274313B publication Critical patent/CN111274313B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Strategic Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明提供一种分段共识方法、设备和存储介质,涉及区块链等技术领域,该方法包括:接收包括第一高度区间的第一平行链的分段共识请求交易,将分段共识请求交易记录在主链上;接收各授权节点分别生成的投票交易,通过第一共识合约分别执行各投票交易:根据各授权节点的投票结果判断请求是否通过:是,则将第一平行链在第一高度区间开启或关闭平行链共识记录在主链上;以及,将各投票交易记录在主链上。本申请降低手续费,并增加平行链共识机制的灵活性。

Description

分段共识方法、设备和存储介质
技术领域
本申请涉及区块链技术领域,具体涉及一种分段共识方法、设备和存储介质。
背景技术
现有的主链-平行链机制中,平行链的授权节点需要对每个平行链区块生成共识交易,并将共识交易发送到主链进行共识,共识交易需要授权节点花费手续费,同时一旦平行链共识开启后就不能跳跃,必须从上一次共识高度继续共识,即若block(100_平)未能共识成功时,无法对block(101_平)进行共识,平行链共识机制不够灵活。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种手续费低、灵活性强的分段共识方法、设备和存储介质。
第一方面,本发明提供一种适用于主链节点的分段共识方法,主链节点和平行链节点均配置有第一共识合约,上述方法包括:
接收包括第一高度区间的第一平行链的分段共识请求交易,将分段共识请求交易记录在主链上,以供第一平行链的各授权节点在同步分段共识请求交易后,将分段共识请求交易记录在第一平行链上,对分段共识请求交易在第一高度区间开启或关闭第一平行链的平行链共识的请求进行投票,并根据投票结果生成投票交易;
接收各授权节点分别生成的投票交易,通过第一共识合约分别执行各投票交易:
根据各授权节点的投票结果判断请求是否通过:是,则将第一平行链在第一高度区间开启或关闭平行链共识记录在主链上;以及,
将各投票交易记录在主链上,以供各授权节点同步并通过第一共识合约执行:
根据各授权节点的投票结果判断请求是否通过:是,则将在第一高度区间开启或关闭平行链共识记录在第一平行链上;以及,
将各投票交易记录在第一平行链上。
第二方面,本发明提供一种适用于平行链的授权节点的分段共识方法,主链节点和平行链节点均配置有第一共识合约,上述方法包括:
同步包括第一高度区间的第一平行链的分段共识请求交易,将分段共识请求交易记录在当前平行链上;其中,分段共识请求交易由主链节点接收并记录在主链上;
对分段共识请求交易在第一高度区间开启或关闭第一平行链的平行链共识的请求进行投票,并根据投票结果生成第一投票交易,以供主链节点:
接收第一投票交易和当前平行链的其它授权节点分别生成的第二投票交易;其中,第二投票交易由当前平行链的其它授权节点对分段共识请求交易在第一高度区间开启或关闭第一平行链的平行链共识的请求进行投票,并根据投票结果所生成;
通过第一共识合约分别执行第一投票交易和各第二投票交易:
根据第一投票交易的投票结果和各第二投票交易的投票结果判断请求是否通过:是,则将当前平行链在第一高度区间开启或关闭平行链共识记录在主链上;以及,
将第一投票交易和各第二投票交易记录在主链上;
同步第一投票交易和各第二投票交易,通过第一共识合约执行:
根据第一投票交易的投票结果和各第二投票交易的投票结果判断请求是否通过:是,则将在第一高度区间开启或关闭平行链共识记录在当前平行链上;以及,
将第一投票交易和各第二投票交易记录在当前平行链上。
第三方面,本发明还提供一种设备,包括一个或多个处理器和存储器,其中存储器包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本发明各实施例提供的分段共识方法。
第四方面,本发明还提供一种存储有计算机程序的存储介质,该计算机程序使计算机执行根据本发明各实施例提供的分段共识方法。
本发明诸多实施例提供的分段共识方法、设备和存储介质通过接收包括第一高度区间的第一平行链的分段共识请求交易,将分段共识请求交易记录在主链上;接收各授权节点分别生成的投票交易,通过第一共识合约分别执行各投票交易:根据各授权节点的投票结果判断请求是否通过:是,则将第一平行链在第一高度区间开启或关闭平行链共识记录在主链上;以及,将各投票交易记录在主链上的方法,降低手续费,并增加平行链共识机制的灵活性。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本发明一实施例提供的一种分段共识方法的流程图。
图2为本发明一实施例提供的另一种分段共识方法的流程图。
图3为本发明一实施例提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
在现有的主链-平行链的平行链共识机制中,平行链共识开启后就不能跳跃,必须从上一次共识高度继续共识,即平行链共识机制必须保持连续性,当主链节点收到block(101_平)的共识交易时,若主链上block(100_平)的共识交易还未能共识成功时,无法对block(101_平)的共识交易进行共识。在本申请中,主链-平行链的平行链共识机制无需保证连续性,例如,主链上block(100_平)的共识交易共识成功后,可以直接处理block(200_平)的共识交易,中间的block(101_平)~block(199_平)可以不必共识。
图1为本发明一实施例提供的一种分段共识方法的流程图。如图1所示,在本实施例中,本发明提供一种适用于主链节点的分段共识方法,主链节点和平行链节点均配置有第一共识合约,上述方法包括:
S12:接收包括第一高度区间的第一平行链的分段共识请求交易,将分段共识请求交易记录在主链上,以供第一平行链的各授权节点在同步分段共识请求交易后,将分段共识请求交易记录在第一平行链上,对分段共识请求交易在第一高度区间开启或关闭第一平行链的平行链共识的请求进行投票,并根据投票结果生成投票交易;
S14:接收各授权节点分别生成的投票交易,通过第一共识合约分别执行各投票交易:
根据各授权节点的投票结果判断请求是否通过:是,则执行步骤:将第一平行链在第一高度区间开启或关闭平行链共识记录在主链上;以及,
将各投票交易记录在主链上,以供各授权节点同步并通过第一共识合约执行:
根据各授权节点的投票结果判断请求是否通过:是,则将在第一高度区间开启或关闭平行链共识记录在第一平行链上;以及,
将各投票交易记录在第一平行链上。
具体地,以第一平行链中配置有4个授权节点a~d,用户甲申请在第一高度区间[1000,2000]开启第一平行链的平行链共识为例;
用户甲向用户端输入申请在[1000,2000]开启第一平行链的平行链共识的指令时,用户甲的用户端生成分段共识请求交易;
主链节点执行步骤S12中,接收包括[1000,2000]的的分段共识请求交易,将分段共识请求交易记录在主链上;
a在同步分段共识请求交易后,将分段共识请求交易记录在第一平行链上,对分段共识请求交易在[1000,2000]开启第一平行链的平行链共识的请求进行投票,并根据投票结果生成投票交易tx(vote_a);同理,b生成tx(vote_b),c生成tx(vote_c),d生成tx(vote_d);
主链节点步骤S14,接收tx(vote_a)、tx(vote_b)、tx(vote_c)、tx(vote_d),通过第一共识合约分别执行tx(vote_a)、tx(vote_b)、tx(vote_c)、tx(vote_d):根据a~d的投票结果判断请求是否通过:是,则将第一平行链在[1000,2000]开启平行链共识记录在主链上;以及,将tx(vote_a)、tx(vote_b)、tx(vote_c)、tx(vote_d)记录在主链上;
a从主链同步tx(vote_a)、tx(vote_b)、tx(vote_c)、tx(vote_d)并通过第一共识合约执行:
a根据a~d的投票结果判断请求是否通过:是,则将在[1000,2000]开启平行链共识记录在第一平行链上;以及,a将tx(vote_a)、tx(vote_b)、tx(vote_c)、tx(vote_d)记录在第一平行链上。同理,b~d将在[1000,2000]开启平行链共识记录在第一平行链上;以及,将tx(vote_a)、tx(vote_b)、tx(vote_c)、tx(vote_d)记录在第一平行链上。
上述实施例以第一平行链中配置有4个授权节点a~d,用户甲申请在第一高度区间[1000,2000]开启第一平行链的平行链共识为例对本申请的分段共识机制做了示例性的阐述;
在更多实施例中,第一平行链中配置的授权节点的数量可以根据实际需求配置,例如,配置为7,可实现相同的技术效果。
在更多实施例中,第一高度区间可以根据实际需求进行配置,例如,配置为[1000,1500],可实现相同的技术效果。
在更多实施例中,还可以根据实际需求配置为在第一高度区间内关闭第一平行链的平行链共识,可实现相同的技术效果。
在更多实施例中,还可以根据实际需求配置平行链共识机制的连续性,例如,当在第一高度区间[1000,2000]开启第一平行链的平行链共识时,block(1000_主)~block(2000_主)对应产生的第一平行链的平行链区块为block(100_平1)~block(200_平1),则要求block(101_平1)~block(200_平1)的共识需要保证连续性,可实现相同的技术效果。
使用上述实施例的分段共识机制后,在第一平行链的平行链共识关闭时,平行链的授权节点无需对生成的平行链区块生成共识交易,降低花费发送共识交易的手续费;使用上述实施例的分段共识机制后,不连续的平行链区块可以跳跃共识,增加平行链共识机制的灵活性。
优选地,当分段共识请求交易为请求在第一高度区间开启第一平行链的平行链共识时,第一共识合约用于供主链节点接收第一平行链的第一平行链交易,识别第一平行链交易是否为跨链交易:
是,则判断第一平行链交易所对应的第一区块高度是否在第一高度区间内:
否,则第一平行链交易执行失败;
当分段共识请求交易为请求在第一高度区间关闭第一平行链的平行链共识时,第一共识合约用于供主链节点接收第一平行链的第一平行链交易,识别第一平行链交易是否为跨链交易:
是,则通过第一共识合约判断第一平行链交易所对应的第一区块高度是否在第一高度区间内:
是,则第一平行链交易执行失败。
当分段共识请求交易为请求在第一高度区间开启第一平行链的平行链共识,第一平行链交易为跨链交易,且第一平行链交易所对应的第一区块高度在第一高度区间内时,或,当分段共识请求交易为请求在第一高度区间关闭第一平行链的平行链共识,第一平行链交易为跨链交易,且第一平行链交易所对应的第一区块高度不在第一高度区间内时,第一平行链交易的执行方法与现有的主链-平行链机制相同。
优选地,当分段共识请求交易为请求在第一高度区间开启第一平行链的平行链共识时,第一共识合约用于供授权节点判断生成的第一平行链区块所对应的主链区块的第二区块高度是否在第一高度区间内:
是,则根据第一平行链区块生成第一共识交易并发送至主链节点;
否,则不生成第一共识交易;
当分段共识请求交易为请求在第一高度区间关闭第一平行链的平行链共识时,第一共识合约用于供授权节点判断生成的第一平行链区块所对应的主链区块的第二区块高度是否在第一高度区间内:
是,则不生成第一共识交易;
否,则根据第一平行链区块生成第一共识交易并发送至主链节点。
优选地,当分段共识请求交易为请求在第一高度区间开启第一平行链的平行链共识时,第一共识合约用于供授权节点判断生成的第二平行链区块所对应的主链区块的第三区块高度是否在第一高度区间内:
否,则判断第二平行链区块的区块高度与预配置的第一数值的余数是否为0:
是,则根据第二平行链区块生成第二共识交易并发送至主链节点;
否,则不生成第二共识交易;
当分段共识请求交易为请求在第一高度区间关闭第一平行链的平行链共识时,第一共识合约用于供授权节点判断生成的第二平行链区块所对应的主链区块的第三区块高度是否在第一高度区间内:
是,则判断第二平行链区块的区块高度与预配置的第一数值的余数是否为0:
是,则根据第二平行链区块生成第二共识交易并发送至主链节点;
否,则不生成第二共识交易。
上述实施例使得在平行链关闭平行链共识期间,平行链的授权节点会按上述实施例所配置的规则生成共识交易并发送至主链节点,使得主链感知平行链的授权节点仍正常运行。
图2为本发明一实施例提供的另一种分段共识方法的流程图。如图2所示,在本实施例中,本发明提供一种适用于平行链的授权节点的分段共识方法,主链节点和平行链节点均配置有第一共识合约,上述方法包括:
S22:同步包括第一高度区间的第一平行链的分段共识请求交易,将分段共识请求交易记录在当前平行链上;其中,分段共识请求交易由主链节点接收并记录在主链上;
S24:对分段共识请求交易在第一高度区间开启或关闭第一平行链的平行链共识的请求进行投票,并根据投票结果生成第一投票交易,以供主链节点:
接收第一投票交易和当前平行链的其它授权节点分别生成的第二投票交易;其中,第二投票交易由当前平行链的其它授权节点对分段共识请求交易在第一高度区间开启或关闭第一平行链的平行链共识的请求进行投票,并根据投票结果所生成;
通过第一共识合约分别执行第一投票交易和各第二投票交易:
根据第一投票交易的投票结果和各第二投票交易的投票结果判断请求是否通过:是,则将当前平行链在第一高度区间开启或关闭平行链共识记录在主链上;以及,
将第一投票交易和各第二投票交易记录在主链上;
S26:同步第一投票交易和各第二投票交易,通过第一共识合约执行:
根据第一投票交易的投票结果和各第二投票交易的投票结果判断请求是否通过:是,则将在第一高度区间开启或关闭平行链共识记录在当前平行链上;以及,
将第一投票交易和各第二投票交易记录在当前平行链上。
上述实施例的分段共识原理可参考图1所示的方法,此处不再赘述。
优选地,当分段共识请求交易为请求在第一高度区间开启第一平行链的平行链共识时,第一共识合约用于供主链节点接收第一平行链的第一平行链交易,识别第一平行链交易是否为跨链交易:
是,则判断第一平行链交易所对应的第一区块高度是否在第一高度区间内:
否,则第一平行链交易执行失败;
当分段共识请求交易为请求在第一高度区间关闭第一平行链的平行链共识时,第一共识合约用于供主链节点接收第一平行链的第一平行链交易,识别第一平行链交易是否为跨链交易:
是,则通过第一共识合约判断第一平行链交易所对应的第一区块高度是否在第一高度区间内:
是,则第一平行链交易执行失败。
上述实施例的分段共识原理可参考图1所示的一种优选实施方法的方法,此处不再赘述。
优选地,当分段共识请求交易为请求在第一高度区间开启第一平行链的平行链共识时,第一共识合约用于供授权节点判断生成的第一平行链区块所对应的主链区块的第二区块高度是否在第一高度区间内:
是,则根据第一平行链区块生成第一共识交易并发送至主链节点;
否,则不生成第一共识交易;
当分段共识请求交易为请求在第一高度区间关闭第一平行链的平行链共识时,第一共识合约用于供授权节点判断生成的第一平行链区块所对应的主链区块的第二区块高度是否在第一高度区间内:
是,则不生成第一共识交易;
否,则根据第一平行链区块生成第一共识交易并发送至主链节点。
上述实施例的分段共识原理可参考图1所示的一种优选实施方法的方法,此处不再赘述。
优选地,当分段共识请求交易为请求在第一高度区间开启第一平行链的平行链共识时,第一共识合约用于供授权节点判断生成的第二平行链区块所对应的主链区块的第三区块高度是否在第一高度区间内:
否,则判断第二平行链区块的区块高度与预配置的第一数值的余数是否为0:
是,则根据第二平行链区块生成第二共识交易并发送至主链节点;
否,则不生成第二共识交易;
当分段共识请求交易为请求在第一高度区间关闭第一平行链的平行链共识时,第一共识合约用于供授权节点判断生成的第二平行链区块所对应的主链区块的第三区块高度是否在第一高度区间内:
是,则判断第二平行链区块的区块高度与预配置的第一数值的余数是否为0:
是,则根据第二平行链区块生成第二共识交易并发送至主链节点;
否,则不生成第二共识交易。
上述实施例的分段共识原理可参考图1所示的一种优选实施方法的方法,此处不再赘述。
图3为本发明一实施例提供的一种设备的结构示意图。
如图3所示,作为另一方面,本申请还提供了一种设备300,包括一个或多个中央处理单元(CPU)301,其可以根据存储在只读存储器(ROM)302中的程序或者从存储部分308加载到随机访问存储器(RAM)303中的程序而执行各种适当的动作和处理。在RAM303中,还存储有设备300操作所需的各种程序和数据。CPU301、ROM302以及RAM303通过总线304彼此相连。输入/输出(I/O)接口305也连接至总线304。
以下部件连接至I/O接口305:包括键盘、鼠标等的输入部分306;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分307;包括硬盘等的存储部分308;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分309。通信部分309经由诸如因特网的网络执行通信处理。驱动器310也根据需要连接至I/O接口305。可拆卸介质311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器310上,以便于从其上读出的计算机程序根据需要被安装入存储部分308。
特别地,根据本公开的实施例,上述任一实施例描述的分段共识方法可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行分段共识方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分309从网络上被下载和安装,和/或从可拆卸介质311被安装。
作为又一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例的装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,该程序被一个或者一个以上的处理器用来执行描述于本申请的分段共识方法。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这根据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以通过执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以通过专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,各所述单元可以是设置在计算机或移动智能设备中的软件程序,也可以是单独配置的硬件装置。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离本申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (10)

1.一种分段共识方法,其特征在于,主链节点和平行链节点均配置有第一共识合约,所述方法适用于主链节点,所述方法包括:
接收包括第一高度区间的第一平行链的分段共识请求交易,将所述分段共识请求交易记录在主链上,以供所述第一平行链的各授权节点在同步所述分段共识请求交易后,将所述分段共识请求交易记录在所述第一平行链上,对所述分段共识请求交易在第一高度区间开启或关闭第一平行链的平行链共识的请求进行投票,并根据投票结果生成投票交易;
接收各所述授权节点分别生成的投票交易,通过所述第一共识合约分别执行各所述投票交易:
根据各所述授权节点的投票结果判断所述请求是否通过:是,则将所述第一平行链在所述第一高度区间开启或关闭平行链共识记录在主链上;以及,
将各所述投票交易记录在主链上,以供各所述授权节点同步并通过所述第一共识合约执行:
根据各所述授权节点的投票结果判断所述请求是否通过:是,则将在所述第一高度区间开启或关闭平行链共识记录在第一平行链上;以及,
将各所述投票交易记录在第一平行链上。
2.根据权利要求1所述的方法,其特征在于,当所述分段共识请求交易为请求在第一高度区间开启第一平行链的平行链共识时,所述第一共识合约用于供主链节点接收所述第一平行链的第一平行链交易,识别所述第一平行链交易是否为跨链交易:
是,则判断所述第一平行链交易所对应的第一区块高度是否在所述第一高度区间内:
否,则所述第一平行链交易执行失败;
当所述分段共识请求交易为请求在第一高度区间关闭第一平行链的平行链共识时,所述第一共识合约用于供主链节点接收所述第一平行链的第一平行链交易,识别所述第一平行链交易是否为跨链交易:
是,则通过所述第一共识合约判断所述第一平行链交易所对应的第一区块高度是否在所述第一高度区间内:
是,则所述第一平行链交易执行失败。
3.根据权利要求1所述的方法,其特征在于,当所述分段共识请求交易为请求在第一高度区间开启第一平行链的平行链共识时,所述第一共识合约用于供所述授权节点判断生成的第一平行链区块所对应的主链区块的第二区块高度是否在所述第一高度区间内:
是,则根据所述第一平行链区块生成第一共识交易并发送至主链节点;
否,则不生成所述第一共识交易;
当所述分段共识请求交易为请求在第一高度区间关闭第一平行链的平行链共识时,所述第一共识合约用于供所述授权节点判断生成的第一平行链区块所对应的主链区块的第二区块高度是否在所述第一高度区间内:
是,则不生成所述第一共识交易;
否,则根据所述第一平行链区块生成第一共识交易并发送至主链节点。
4.根据权利要求3所述的方法,其特征在于,当所述分段共识请求交易为请求在第一高度区间开启第一平行链的平行链共识时,所述第一共识合约用于供所述授权节点判断生成的第二平行链区块所对应的主链区块的第三区块高度是否在所述第一高度区间内:
否,则判断所述第二平行链区块的区块高度与预配置的第一数值的余数是否为0:
是,则根据所述第二平行链区块生成第二共识交易并发送至主链节点;
否,则不生成所述第二共识交易;
当所述分段共识请求交易为请求在第一高度区间关闭第一平行链的平行链共识时,所述第一共识合约用于供所述授权节点判断生成的第二平行链区块所对应的主链区块的第三区块高度是否在所述第一高度区间内:
是,则判断所述第二平行链区块的区块高度与预配置的第一数值的余数是否为0:
是,则根据所述第二平行链区块生成第二共识交易并发送至主链节点;
否,则不生成所述第二共识交易。
5.一种分段共识方法,其特征在于,主链节点和平行链节点均配置有第一共识合约,所述方法适用于平行链的授权节点,所述方法包括:
同步包括第一高度区间的第一平行链的分段共识请求交易,将所述分段共识请求交易记录在当前平行链上;其中,所述分段共识请求交易由主链节点接收并记录在主链上;
对所述分段共识请求交易在第一高度区间开启或关闭第一平行链的平行链共识的请求进行投票,并根据投票结果生成第一投票交易,以供所述主链节点:
接收所述第一投票交易和当前平行链的其它授权节点分别生成的第二投票交易;其中,所述第二投票交易由当前平行链的其它授权节点对所述分段共识请求交易在第一高度区间开启或关闭第一平行链的平行链共识的请求进行投票,并根据投票结果所生成;
通过所述第一共识合约分别执行所述第一投票交易和各所述第二投票交易:
根据所述第一投票交易的投票结果和各所述第二投票交易的投票结果判断所述请求是否通过:是,则将当前平行链在所述第一高度区间开启或关闭平行链共识记录在主链上;以及,
将所述第一投票交易和各所述第二投票交易记录在主链上;
同步所述第一投票交易和各所述第二投票交易,通过所述第一共识合约执行:
根据所述第一投票交易的投票结果和各所述第二投票交易的投票结果判断所述请求是否通过:是,则将在所述第一高度区间开启或关闭平行链共识记录在当前平行链上;以及,
将所述第一投票交易和各所述第二投票交易记录在当前平行链上。
6.根据权利要求5所述的方法,其特征在于,当所述分段共识请求交易为请求在第一高度区间开启第一平行链的平行链共识时,所述第一共识合约用于供主链节点接收所述第一平行链的第一平行链交易,识别所述第一平行链交易是否为跨链交易:
是,则判断所述第一平行链交易所对应的第一区块高度是否在所述第一高度区间内:
否,则所述第一平行链交易执行失败;
当所述分段共识请求交易为请求在第一高度区间关闭第一平行链的平行链共识时,所述第一共识合约用于供主链节点接收所述第一平行链的第一平行链交易,识别所述第一平行链交易是否为跨链交易:
是,则通过所述第一共识合约判断所述第一平行链交易所对应的第一区块高度是否在所述第一高度区间内:
是,则所述第一平行链交易执行失败。
7.根据权利要求5所述的方法,其特征在于,当所述分段共识请求交易为请求在第一高度区间开启第一平行链的平行链共识时,所述第一共识合约用于供所述授权节点判断生成的第一平行链区块所对应的主链区块的第二区块高度是否在所述第一高度区间内:
是,则根据所述第一平行链区块生成第一共识交易并发送至主链节点;
否,则不生成所述第一共识交易;
当所述分段共识请求交易为请求在第一高度区间关闭第一平行链的平行链共识时,所述第一共识合约用于供所述授权节点判断生成的第一平行链区块所对应的主链区块的第二区块高度是否在所述第一高度区间内:
是,则不生成所述第一共识交易;
否,则根据所述第一平行链区块生成第一共识交易并发送至主链节点。
8.根据权利要求7所述的方法,其特征在于,当所述分段共识请求交易为请求在第一高度区间开启第一平行链的平行链共识时,所述第一共识合约用于供所述授权节点判断生成的第二平行链区块所对应的主链区块的第三区块高度是否在所述第一高度区间内:
否,则判断所述第二平行链区块的区块高度与预配置的第一数值的余数是否为0:
是,则根据所述第二平行链区块生成第二共识交易并发送至主链节点;
否,则不生成所述第二共识交易;
当所述分段共识请求交易为请求在第一高度区间关闭第一平行链的平行链共识时,所述第一共识合约用于供所述授权节点判断生成的第二平行链区块所对应的主链区块的第三区块高度是否在所述第一高度区间内:
是,则判断所述第二平行链区块的区块高度与预配置的第一数值的余数是否为0:
是,则根据所述第二平行链区块生成第二共识交易并发送至主链节点;
否,则不生成所述第二共识交易。
9.一种设备,其特征在于,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1-8中任一项所述的方法。
10.一种存储有计算机程序的存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-8中任一项所述的方法。
CN202010028960.4A 2020-01-12 2020-01-12 分段共识方法、设备和存储介质 Active CN111274313B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202010028960.4A CN111274313B (zh) 2020-01-12 2020-01-12 分段共识方法、设备和存储介质
JP2021540570A JP7142396B2 (ja) 2020-01-12 2020-12-24 セグメントコンセンサス方法、デバイス及び記憶媒体
PCT/CN2020/138897 WO2021139534A1 (zh) 2020-01-12 2020-12-24 分段共识方法、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010028960.4A CN111274313B (zh) 2020-01-12 2020-01-12 分段共识方法、设备和存储介质

Publications (2)

Publication Number Publication Date
CN111274313A CN111274313A (zh) 2020-06-12
CN111274313B true CN111274313B (zh) 2023-05-30

Family

ID=71003015

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010028960.4A Active CN111274313B (zh) 2020-01-12 2020-01-12 分段共识方法、设备和存储介质

Country Status (3)

Country Link
JP (1) JP7142396B2 (zh)
CN (1) CN111274313B (zh)
WO (1) WO2021139534A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111274313B (zh) * 2020-01-12 2023-05-30 杭州复杂美科技有限公司 分段共识方法、设备和存储介质
CN112884587B (zh) * 2021-04-30 2021-08-03 支付宝(杭州)信息技术有限公司 区块链交易执行方法、区块链节点及控制装置
CN114493876A (zh) * 2022-01-28 2022-05-13 杭州复杂美科技有限公司 交易发送方法、计算机设备和存储介质
CN114827167B (zh) * 2022-03-03 2023-10-17 杭州复杂美科技有限公司 节点选取和交易发送方法、设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106682907A (zh) * 2016-12-10 2017-05-17 江苏恒为信息科技有限公司 区块链数据对比及共识方法
CN109242685A (zh) * 2018-08-29 2019-01-18 众安信息技术服务有限公司 基于区块链的共识和验证方法及装置
CN109410045A (zh) * 2018-08-30 2019-03-01 杭州复杂美科技有限公司 一种平行链共识方法、设备和存储介质
CN110570202A (zh) * 2019-09-02 2019-12-13 杭州趣链科技有限公司 一种基于分片技术的混合共识方法
CN110647582A (zh) * 2019-09-17 2020-01-03 腾讯科技(深圳)有限公司 区块链网络共识校验的方法、装置、存储介质和计算机设备

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10762479B2 (en) * 2017-04-05 2020-09-01 Samsung Sds Co., Ltd. Method and system for processing blockchain-based real-time transaction
CN112804349B (zh) * 2017-07-14 2023-07-04 创新先进技术有限公司 区块链共识网络中处理共识请求的方法、装置和电子设备
US11146380B2 (en) 2017-08-03 2021-10-12 Parity Technologies Ltd. Methods and systems for a heterogeneous multi-chain framework
CN109189853B (zh) 2018-08-08 2021-05-28 众安信息技术服务有限公司 一种区块链之间数据同步方法与装置
CN109584072B (zh) * 2018-11-28 2023-01-13 杭州复杂美科技有限公司 一种平行链共识的交易发送方法、设备和存储介质
CN110033243B (zh) 2019-03-06 2023-01-10 华南师范大学 基于区块链智能合约的主链存证方法、系统及存储介质
CN110175912B (zh) 2019-04-08 2023-05-05 西安链融科技有限公司 基于委员会的区块链跨链资产转移方法、区块链信息终端
CN110113409B (zh) * 2019-04-30 2021-07-06 杭州复杂美科技有限公司 平行链授权节点配置方法、设备和存储介质
CN110210917B (zh) 2019-06-03 2021-12-07 杭州云象网络技术有限公司 一种基于多链组态的电子发票系统构建方法
CN111274313B (zh) * 2020-01-12 2023-05-30 杭州复杂美科技有限公司 分段共识方法、设备和存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106682907A (zh) * 2016-12-10 2017-05-17 江苏恒为信息科技有限公司 区块链数据对比及共识方法
CN109242685A (zh) * 2018-08-29 2019-01-18 众安信息技术服务有限公司 基于区块链的共识和验证方法及装置
CN109410045A (zh) * 2018-08-30 2019-03-01 杭州复杂美科技有限公司 一种平行链共识方法、设备和存储介质
CN110570202A (zh) * 2019-09-02 2019-12-13 杭州趣链科技有限公司 一种基于分片技术的混合共识方法
CN110647582A (zh) * 2019-09-17 2020-01-03 腾讯科技(深圳)有限公司 区块链网络共识校验的方法、装置、存储介质和计算机设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周桐.《基于区块链技术的可信数据通证化方法的研究与应用》.《信息科技辑》.2019,全文. *

Also Published As

Publication number Publication date
CN111274313A (zh) 2020-06-12
JP7142396B2 (ja) 2022-09-27
WO2021139534A1 (zh) 2021-07-15
JP2022519804A (ja) 2022-03-25

Similar Documents

Publication Publication Date Title
CN111274313B (zh) 分段共识方法、设备和存储介质
CN109410045B (zh) 一种平行链共识方法、设备和存储介质
US20210232558A1 (en) Data isolation in a blockchain network
US20210272111A1 (en) Multi-Chain Concurrent Transaction Method
CN109377365B (zh) 一种资产转移方法、设备和存储介质
US8244516B2 (en) Formal verification of models using concurrent model-reduction and model-checking
CN111275437B (zh) 平行链共识方法、设备和存储介质
CN111242780A (zh) 共识交易发送方法、设备和存储介质
CN110968437A (zh) 一种基于Java智能合约的单个合约并行执行的方法、装置、设备及介质
CN113094434A (zh) 数据库同步方法、系统、装置、电子设备及介质
CN112583585B (zh) 交易执行方法、设备和存储介质
CN109951546A (zh) 基于智能合约的事务请求处理方法、装置、设备和介质
CN110659907A (zh) 用于执行智能合约的方法和装置
US8898126B1 (en) Method and apparatus for providing concurrent data insertion and updating
CN114240657A (zh) 数据处理方法、区块链、终端设备及存储介质
CN111523896B (zh) 防攻击方法、设备和存储介质
CN110782310B (zh) 从第三方平台异步获取用户属性信息的方法、装置和系统
CN110942300B (zh) 转账证明提交方法、设备和存储介质
CN107277108B (zh) 一种区块链的节点处的消息处理方法、装置及系统
CN114780932B (zh) 管理三化平台的跨区块链数据交互验证方法、系统及设备
CN110689442A (zh) 一种核保方法及系统
CN111538663B (zh) 测试用例的生成方法、装置、计算设备以及介质
US11546171B2 (en) Systems and methods for synchronizing anonymized linked data across multiple queues for secure multiparty computation
CN113365101B (zh) 对视频进行多任务处理的方法及相关设备
CN113689296A (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