WO2020042937A1 - Maintenance method for blockchain parachain, and blockchain parachain - Google Patents

Maintenance method for blockchain parachain, and blockchain parachain Download PDF

Info

Publication number
WO2020042937A1
WO2020042937A1 PCT/CN2019/101059 CN2019101059W WO2020042937A1 WO 2020042937 A1 WO2020042937 A1 WO 2020042937A1 CN 2019101059 W CN2019101059 W CN 2019101059W WO 2020042937 A1 WO2020042937 A1 WO 2020042937A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
chain
access
parachain
identifier
Prior art date
Application number
PCT/CN2019/101059
Other languages
French (fr)
Chinese (zh)
Inventor
白杰
吴先锋
李冬云
Original Assignee
白杰
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
Priority claimed from CN201910145999.1A external-priority patent/CN110866751B/en
Application filed by 白杰 filed Critical 白杰
Priority to JP2021516946A priority Critical patent/JP2021527373A/en
Priority to FI20206356A priority patent/FI20206356A1/en
Publication of WO2020042937A1 publication Critical patent/WO2020042937A1/en

Links

Images

Classifications

    • 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

Definitions

  • the method further includes:
  • the first mn blocks in the access chain block chain are consensus blocks, the n is a preset value, and the consensus block is an area in the access chain block chain that has been reached by the access chain node consensus Block, n is a positive integer greater than 0;
  • the parachain maintainer node Periodically select the parachain maintainer node from the parachain nodes.
  • the parachain maintainer node is used to generate parachain blocks.
  • the maintainer node in the parallel chain generates a parallel chain block that conforms to the public chain specification form, and includes the block data of the block to be synchronized in the access chain block chain in the parallel chain block.
  • the parachain nodes themselves are public chain nodes
  • the parachain is a sub-chain of the public chain.
  • the sub-chain is consistent with the public chain on the node and network system, so the blockchain in the sub-chain can be directly accessed by the public chain. Therefore, when performing cross-chain transactions related to the access chain, the public chain can read the block data of the access chain from the parallel chain block in the manner of reading the sub-chain block data, thereby enabling cross-chain transaction.
  • a blockchain network refers to a point-to-point network formed by nodes maintaining a blockchain.
  • the blockchain network can perform distributed storage, public consensus, digital encryption, transaction accounting, and verification on the maintained blockchain.
  • a block includes multiple block data, and multiple blocks form a blockchain.
  • Blockchain or block data in a blockchain block is data recorded by a node that maintains the blockchain according to the transaction itself and the results generated when a transaction occurs in the blockchain network.
  • the block is also called a data block, such as a parachain data block, a public chain data block, and so on.
  • Block data includes multiple types, which are used to indicate the specific content, results, and status of transactions, such as transaction information, status information, receipt information, and data information.
  • the block header 321 also includes an access chain block identifier corresponding to block 30 and an access chain block identifier corresponding to block 31.
  • the access chain block identifier is a combination of a block sequence number and a block hash value. Therefore, the access chain block identifiers corresponding to the two blocks are: "500 + A-Block500-hash", and "501 + A-Block501-hash”.
  • the block header 321 also includes the access chain block identifier corresponding to block 32: "250 + B-Block250-hash”.
  • n 6
  • the maintainer node determines that the current number of blocks in the access chain block chain is 10005, and can determine that the first 9999 blocks in the access chain block chain are consensus blocks.

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present application provides a maintenance method for a blockchain parachain, and the blockchain parachain. The method comprises: determining a block to be synchronized in an access chain blockchain; generating a parachain block that meets a specification form of a public chain, the parachain block comprising block data of the block to be synchronized; and adding the parachain block to a parachain blockchain, so that the public chain reads the block data of the block to be synchronized. In the present application, the parachain generates the parachain block that meets the specification form of the public chain, and the block data of the block to be synchronized in the access chain blockchain is comprised in the parachain block. Because a parachain node per se is a public chain node, the parachain is a sub-chain of the public chain. The sub-chain, as a part of the public chain, is consistent with the public chain on the node and a network system, and hence, a blockchain in the sub-chain can be directly accessed by the public chain. Therefore, during cross-chain transaction, the public chain can read block data of the access chain from the parachain according to a mode of reading the block data of the sub-chain, so as to implement cross-chain transaction.

Description

区块链平行链的维护方法及区块链平行链Maintenance method of block chain parallel chain and block chain parallel chain
本申请要求在2018年8月28日提交中国专利局、申请号为201810986825.3、发明名称为“区块链标准应用模型及其应用方法”以及在2019年2月27日提交中国专利局、申请号为201910145999.1、发明名称为“区块链平行链的维护方法及区块链平行链”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application requires the submission of the China Patent Office on August 28, 2018, application number 201810986825.3, the invention name as "Blockchain Standard Application Model and Application Method", and the submission of the China Patent Office on February 27, 2019, application number The priority of the Chinese patent application is 201910145999.1, the invention name is "Maintenance Method of Blockchain Parallel Chain and Blockchain Parallel Chain", the entire contents of which are incorporated herein by reference.
技术领域Technical field
本申请涉及区块链技术领域,特别涉及一种区块链平行链的维护方法及区块链平行链。The present application relates to the field of blockchain technology, and in particular, to a method for maintaining a blockchain parallel chain and a blockchain parallel chain.
背景技术Background technique
区块链提供了一种去除中心化的***思想,这种思想最根本的原理是通过公众共识的方式,创建一个相对客观的抗抵赖数字环境。区块链技术可以使网络信息一旦发布即不可改变,例如,区块链网络中发生一笔交易,区块链网络中的节点会在生成的区块中记录该交易,再将该区块添加至区块链中,并全网广播,形成不可更改的区块链。因此,区块链本质上是一个分布式的公共账本,这个公共账本由多个数据区块组成,并由各个节点共同维护。维护同一区块链的节点组成一个物理链,例如公链、私链、联盟链等等,这些节点共同组成了承载区块链的点对点网络。Blockchain provides a decentralized system idea. The most fundamental principle of this idea is to create a relatively objective anti-repudiation digital environment through public consensus. Blockchain technology can make network information immutable once it is released. For example, a transaction occurs in the blockchain network. Nodes in the blockchain network will record the transaction in the generated block, and then add the block. Go to the blockchain and broadcast it throughout the network to form an unchangeable blockchain. Therefore, the blockchain is essentially a distributed public ledger. This public ledger consists of multiple data blocks and is jointly maintained by each node. The nodes that maintain the same blockchain form a physical chain, such as public, private, and alliance chains. These nodes together form a point-to-point network that carries the blockchain.
区块链交易一般发生在同一个区块链网络范围内的两个节点之间。但随着区块链技术的应用,有时交易需要跨越两个或两个以上的区块链网络,形成跨链交易。为了实现跨链交易,不同的区块链网络可以通过接入同一个公链,来实现彼此之间的跨链交易。例如,区块链网络N1和区块链网络N2都接入了公链N3。区块链网络N1中的节点A,向区块链网络N2中的节点B发起的交易时,公链N3居中调控,负责两个区块链网络之间信息的传递,完成跨链交易。但是无论是不同接入链之间的跨链交易,还是公链与接入链之间的跨链交易,公链都需要获取接入链区块链中记录有具体交易的区块数据,才能实现跨链交易。Blockchain transactions generally occur between two nodes within the same blockchain network. However, with the application of blockchain technology, sometimes transactions need to cross two or more blockchain networks to form cross-chain transactions. In order to achieve cross-chain transactions, different blockchain networks can access the same public chain to achieve cross-chain transactions between each other. For example, both the blockchain network N1 and the blockchain network N2 are connected to the public chain N3. When the node A in the blockchain network N1 makes a transaction to the node B in the blockchain network N2, the public chain N3 is centrally regulated, responsible for transmitting information between the two blockchain networks and completing cross-chain transactions. However, whether it is a cross-chain transaction between different access chains, or a cross-chain transaction between a public chain and an access chain, the public chain needs to obtain block data that records specific transactions in the access chain blockchain. Achieve cross-chain transactions.
其中,在通过平行链接入公链的接入方式中,平行链作为接入链和公链的共有节点组成的区块链网络,同时存储有接入链的区块链和公链的区块链。但不同区块链网络之间存在的差异,例如共识机制的不同、通信机制不同等等,导致公链无法获取接入链区块链中的区块数据。因此,不同区块链网络之间的跨链交易无法实现。Among them, in the access method of accessing the public chain through parallel links, the parallel chain serves as a blockchain network composed of the common nodes of the access chain and the public chain, and stores both the access chain's blockchain and the public chain's blocks chain. However, there are differences between different blockchain networks, such as different consensus mechanisms, different communication mechanisms, and so on. As a result, the public chain cannot obtain the block data in the access chain blockchain. Therefore, cross-chain transactions between different blockchain networks cannot be achieved.
发明内容Summary of the Invention
本申请提供一种区块链平行链的维护方法及区块链平行链,可用于解决在现有技术中公链无法获取接入链区块链中的区块数据,导致不同区块链网络之间的跨链交易无法实现的问题。This application provides a method for maintaining a blockchain parallel chain and a blockchain parallel chain, which can be used to solve the problem that the public chain cannot obtain the block data in the access chain blockchain in the prior art, which leads to the failure of different blockchain networks. The problem of unachievable cross-chain transactions.
第一方面,本申请提供一种区块链平行链的维护方法,所述方法包括:In a first aspect, the present application provides a method for maintaining a blockchain parallel chain, which method includes:
确定接入链区块链中的待同步区块;Determine the blocks to be synchronized in the access chain block chain;
生成符合公链规范形式的平行链区块,平行链区块包括所述待同步区块的区块数据;Generating a parallel chain block that conforms to a public chain specification form, and the parallel chain block includes block data of the block to be synchronized;
将所述平行链区块添加至平行链区块链中,以供公链从所述平行链区块链中读取所述待同步区块的区块数据。The parachain block is added to the parachain block chain for a public chain to read the block data of the block to be synchronized from the parachain block chain.
可选地,所述生成符合公链规范形式的平行链区块,包括:Optionally, the generating a parallel chain block in a form conforming to a public chain specification includes:
生成索引标识和接入链区块标识,索引标识用于指示待同步区块中的区块数据,接入链区块标识用于指示接入链区块链中的待同步区块;Generate an index identifier and an access chain block identifier, the index identifier is used to indicate the block data in the block to be synchronized, and the access chain block identifier is used to indicate the block to be synchronized in the access chain block chain;
生成符合公链规范形式的区块头,区块头包括所述索引标识、所述接入链区块标识和平行链区块标识,平行链区块标识用于指示平行链区块链中的平行链区块;Generate a block header that conforms to the public chain specification form. The block header includes the index identifier, the access chain block identifier, and the parallel chain block identifier. The parallel chain block identifier is used to indicate the parallel chain in the parallel chain blockchain. Block
将所述待同步区块的区块数据复制到所述区块头之后的位置,生成所述平行链区块。Copy the block data of the block to be synchronized to a position behind the block header to generate the parallel chain block.
可选地,所述生成符合公链规范形式的平行链区块,包括:Optionally, the generating a parallel chain block in a form conforming to a public chain specification includes:
生成索引标识和接入链区块标识,索引标识用于指示待同步区块的区块数据,所述接入链区块标识用于指示接入链区块链中的待同步区块;Generating an index identifier and an access chain block identifier, the index identifier is used to indicate the block data of the block to be synchronized, and the access chain block identifier is used to indicate the block to be synchronized in the access chain block chain;
生成符合公链规范形式的区块头,区块头包括平行链区块标识,平行链区块标识用于指示平行链区块链中的平行链区块;Generate a block header that conforms to the public chain specification form, the block header includes a parallel chain block identifier, and the parallel chain block identifier is used to indicate the parallel chain block in the parallel chain block chain;
将接入链区块标识添加到所述区块头之后的位置;Adding an access chain block identifier to a position after the block header;
按照所述区块数据的类型,将索引标识添加到所述接入链区块标识之后的位置,所述区块数据的类型包括交易信息、状态信息、收据信息和数据信息;Adding an index identifier to a position after the access chain block identifier according to the type of the block data, and the type of the block data includes transaction information, status information, receipt information, and data information;
将所述区块数据转化为符合公链规范形式的数据,并添加至索引标识之后的位置,生成所述平行链区块。The block data is converted into data conforming to a public chain specification form, and is added to a position after the index identification to generate the parallel chain block.
可选地,所述生成符合公链规范形式的平行链区块之后,还包括:Optionally, after generating the parallel chain block that conforms to the public chain specification form, the method further includes:
向公链发送所述区块数据对应的摘要信息,以使得公链根据所述摘要信息,从平行链区块链中读取所述待同步区块的区块数据,摘要信息包括所述区块数据对应的接入链区块标识、平行链区块标识和索引标识。Send the summary information corresponding to the block data to the public chain, so that the public chain reads the block data of the block to be synchronized from the parallel chain block chain according to the summary information, and the summary information includes the area The access chain block identifier, parallel chain block identifier, and index identifier corresponding to the block data.
可选地,所述确定接入链区块链中的待同步区块,包括:Optionally, the determining a block to be synchronized in the access chain block chain includes:
确定接入链区块链中当前的区块数量为m;Determine the current number of blocks in the access chain block chain as m;
确定接入链区块链中前m-n个区块为共识区块,所述n为预先设定的数值,所述共识区块为接入链区块链中已经得到接入链节点共识的区块,n为大于0的正整数;It is determined that the first mn blocks in the access chain block chain are consensus blocks, the n is a preset value, and the consensus block is an area in the access chain block chain that has been reached by the access chain node consensus Block, n is a positive integer greater than 0;
根据所述平行链区块链中的接入链区块标识,确定所述共识区块中区块数据未被同步的区块为待同步区块。According to the access chain block identifier in the parallel chain block chain, it is determined that a block whose block data is not synchronized in the consensus block is a block to be synchronized.
可选地,所述待同步区块的数量为k,k为大于或等于2的正整数;Optionally, the number of the blocks to be synchronized is k, and k is a positive integer greater than or equal to 2;
所述生成符合公链规范形式的平行链区块,包括:The generating a parallel chain block that conforms to a public chain specification form includes:
每隔预设时长,生成一个符合公链规范形式的平行链区块,所述预设时长为接入链生成区块所需时长的k倍的时长。Every preset time period, a parallel chain block conforming to the public chain specification form is generated, and the preset time length is k times the time length required for the access chain to generate a block.
可选地,所述方法还包括:Optionally, the method further includes:
周期性地从平行链的节点中选取平行链维护者节点,平行链维护者节点用于生成平行链区块。Periodically select the parachain maintainer node from the parachain nodes. The parachain maintainer node is used to generate parachain blocks.
第二方面,本申请提供一种区块链平行链,所述平行链由公链和接入链的共有节 点组成,所述平行链包括周期性地从所述平行链的节点中选取的平行链维护者节点;In a second aspect, the present application provides a parallel chain of a block chain, which is composed of common nodes of a public chain and an access chain, and the parallel chain includes parallel nodes periodically selected from the nodes of the parallel chain. Chain maintainer node;
所述平行链维护者节点,用于:确定接入链区块链中的待同步区块;生成符合公链规范形式的平行链区块,平行链区块包括所述待同步区块的区块数据;将所述平行链区块添加至平行链区块链中,以供公链从所述平行链区块链中读取所述待同步区块的区块数据。The parachain maintainer node is used to: determine the blocks to be synchronized in the access chain block chain; generate a parachain block that conforms to the public chain specification form, and the parachain block includes the area of the block to be synchronized Block data; adding the parachain block to the parachain block chain for a public chain to read the block data of the block to be synchronized from the parachain block chain.
在本申请中,平行链中的维护者节点生成符合公链规范形式的平行链区块,并将接入链区块链中待同步区块的区块数据包含在平行链区块中。因为平行链节点本身就是公链节点,所以平行链是公链的子链。子链作为公链中的一部分,在节点和网络体系上与公链是一致的,所以子链中的区块链能够被公链直接访问。因此,在进行与接入链相关的跨链交易时,公链可以按照读取子链区块数据的方式,从平行链区块中读取接入链的区块数据,从而能够实现跨链交易。In this application, the maintainer node in the parallel chain generates a parallel chain block that conforms to the public chain specification form, and includes the block data of the block to be synchronized in the access chain block chain in the parallel chain block. Because the parachain nodes themselves are public chain nodes, the parachain is a sub-chain of the public chain. As a part of the public chain, the sub-chain is consistent with the public chain on the node and network system, so the blockchain in the sub-chain can be directly accessed by the public chain. Therefore, when performing cross-chain transactions related to the access chain, the public chain can read the block data of the access chain from the parallel chain block in the manner of reading the sub-chain block data, thereby enabling cross-chain transaction.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to explain the technical solutions in the embodiments of the present application more clearly, the drawings used in the description of the embodiments are briefly introduced below. Obviously, the drawings in the following description are just some embodiments of the application. For those of ordinary skill in the art, other drawings can be obtained according to these drawings without paying creative labor.
图1是根据一示例性实施例示出的一种公链、平行链以及接入链之间网络架构的示意图;Fig. 1 is a schematic diagram showing a network architecture between a public chain, a parallel chain, and an access chain according to an exemplary embodiment;
图2是根据一示例性实施例示出的一种区块链平行链的维护方法的流程示意图;Fig. 2 is a schematic flowchart of a method for maintaining a blockchain parallel chain according to an exemplary embodiment;
图3是根据一示例性实施例示出的生成平行链区块的示意图;Fig. 3 is a schematic diagram showing generating a parachain block according to an exemplary embodiment;
图4是根据另一示例性实施例示出的生成平行链区块的示意图;Fig. 4 is a schematic diagram showing generating a parachain block according to another exemplary embodiment;
图5是根据一示例性实施例示出的获取接入链区块链中的待同步区块的方法流程图。Fig. 5 is a flow chart showing a method for acquiring a block to be synchronized in an access chain block chain according to an exemplary embodiment.
具体实施方式detailed description
下面将详细地对实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中描述的实施方式并不代表与本申请相一致的所有实施方式。它们仅是与权利要求书中所详述的、本申请的一些方面相一致方法的示例。The embodiments will be described in detail below, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with this application. They are merely examples of methods consistent with some aspects of the application, as detailed in the claims.
在本申请提供的技术方案中,区块链网络是指维护区块链的节点所形成的点对点的网络。该区块链网络能够对所维护的区块链进行分布式存储、公共共识、数字加密、交易记账以及验证等操作。一个区块包括多个区块数据,而多个区块形成一条区块链。区块链或区块链区块中的区块数据是在区块链网络中发生交易时,维护该区块链的节点根据交易本身以及产生的结果所记录的数据。其中,区块又称为数据区块,例如平行链数据区块、公链数据区块等等。区块数据包括多种类型,用于指示交易具体的内容、结果和状态等等,如交易信息、状态信息、收据信息和数据信息。交易信息用于指示交易的具体内容。例如用户甲向用户乙转账了300人民币,则区块链的节点会生成一条交易信息。该交易信息记录了甲向乙转账300人民币这一交易内容。状态信息用于指示交易的状态。例如用户甲向用户乙转账300人民币。在甲向乙转账300人民 币的过程中,为了表示转账正在进行,区块链的节点生成一条状态信息,用于记录该转账交易正在进行中。收据信息用于指示交易的结果。例如用户甲向用户乙转账了300人民币,则用户甲的账户减少了300人民币。相应地,区块链的节点会生成一条收据信息,用于记录用户甲的账户转出300人民币后的账户余额。数据信息用于指示区块链网络所存储的数据。区块链网络具备分布式存储的功能。维护区块链的节点能够对用户所要存储的数据进行分布式存储。存储数据时,区块链的节点会生成数据信息,用于记录存储的数据。需要说明的是,上述对交易信息、状态信息、收据信息和数据信息的解释仅是对区块数据类型的示例性和解释性说明,并不用于限定本申请。除上述四种类型外,区块数据还包括其它类型的信息。本申请对此不一一列举。In the technical solution provided in this application, a blockchain network refers to a point-to-point network formed by nodes maintaining a blockchain. The blockchain network can perform distributed storage, public consensus, digital encryption, transaction accounting, and verification on the maintained blockchain. A block includes multiple block data, and multiple blocks form a blockchain. Blockchain or block data in a blockchain block is data recorded by a node that maintains the blockchain according to the transaction itself and the results generated when a transaction occurs in the blockchain network. Among them, the block is also called a data block, such as a parachain data block, a public chain data block, and so on. Block data includes multiple types, which are used to indicate the specific content, results, and status of transactions, such as transaction information, status information, receipt information, and data information. The transaction information is used to indicate the specific content of the transaction. For example, if user A transfers RMB 300 to user B, the blockchain node will generate a transaction message. The transaction information recorded the transaction content of A transferring RMB 300 to B. Status information is used to indicate the status of the transaction. For example, user A transfers 300 yuan to user B. In the process of transferring 300 yuan from A to B, in order to indicate that the transfer is in progress, the nodes of the blockchain generate a status message for recording that the transfer transaction is in progress. The receipt information is used to indicate the result of the transaction. For example, if User A transfers RMB 300 to User B, User A's account is reduced by RMB 300. Correspondingly, the nodes of the blockchain will generate a receipt information for recording the account balance after user A's account is transferred out of 300 RMB. The data information is used to indicate the data stored in the blockchain network. The blockchain network has the function of distributed storage. The nodes that maintain the blockchain can perform distributed storage of the data that users want to store. When storing data, the nodes of the blockchain will generate data information for recording the stored data. It should be noted that the above explanations of the transaction information, status information, receipt information, and data information are merely exemplary and explanatory descriptions of the types of block data, and are not intended to limit the present application. In addition to the above four types, the block data also includes other types of information. This application does not list them one by one.
区块链网络中的各个节点可以是物理节点,如终端、服务器,也可以是虚拟节点。同一区块链网络中的节点基于同一共识机制,共同沟通维护区块链网络的运行。Each node in the blockchain network can be a physical node, such as a terminal, a server, or a virtual node. The nodes in the same blockchain network communicate and maintain the operation of the blockchain network based on the same consensus mechanism.
在本申请中所提及的公链、接入链和平行链,均是指符合区块链技术的不同区块链网络。本申请提供的技术方案中,公链作为基础网络平台,由多个公链节点组成,可以接受多个区块链网络的接入。接入公链的区块链网络称为接入链,如现有的区块链网络比特币、以太坊等,或者,某些行业开发的行业链和联盟链,甚至是为了达到某种服务需求而搭建的私有链。这些现有区块链、行业链、联盟链以及私有链,一般不能直接与公链连接。因此,本申请中可通过平行链来连接公链与接入链。The public chain, access chain, and parachain mentioned in this application refer to different blockchain networks that conform to the blockchain technology. In the technical solution provided in this application, the public chain is used as a basic network platform and is composed of multiple public chain nodes, which can accept access to multiple blockchain networks. The blockchain network that accesses the public chain is called an access chain, such as the existing blockchain network Bitcoin, Ethereum, etc., or industry chains and alliance chains developed by some industries, or even to achieve a certain service Private chains built on demand. These existing blockchains, industry chains, alliance chains, and private chains cannot generally be directly connected to the public chain. Therefore, in this application, the public chain and the access chain can be connected by parallel chains.
在本申请中,平行链由公链和接入链的共有节点组成。因为平行链的节点是公链和接入链的共有节点,所以平行链同时具有公链和接入链的功能,并存储有双方的区块链。示例性地,如图1所示,其示出了公链、接入链以及平行链之间的网络架构的示意图。平行链节点101作为公链11和接入链12的共有节点,既能够与公链节点111连接通信,又能够与接入链节点121连接通信。In this application, the parachain is composed of the common nodes of the public chain and the access chain. Because the nodes of the parachain are common nodes of the public chain and the access chain, the parachain has both the functions of the public chain and the access chain, and stores the blockchains of both parties. Exemplarily, as shown in FIG. 1, it shows a schematic diagram of a network architecture between a public chain, an access chain, and a parallel chain. As a common node of the public chain 11 and the access chain 12, the parallel chain node 101 can both communicate with the public chain node 111 and communicate with the access chain node 121.
在本申请中,公链所涉及的跨链交易可以包括:接入链与公链之间发生的交易,例如查询交易、接入交易和同步交易等。对于这种跨链交易,因为公链直接与接入链进行交易,所以公链需要获取接入链区块链中的区块数据。公链所涉及的跨链交易还可以包括由公链负责中继或转发的交易。在这种跨链交易中,一个接入链作为交易的发起方,另一个接入链作为交易的目标方。示例性地,接入链A要支付自身的证通a,来兑换另一个接入链B的证通b。对于该跨链交易,接入链A不能直接与接入链B之间进行交易,需要通过公链C传递与交易相关的信息和数据。为了保证跨链交易能够顺利完成,公链C需要确定接入链A和接入链B能否完成各自在跨链交易中需要完成的交易内容,如接入链A能否支付交易所需的证通a。因此,公链需要获取交易双方的区块链中的区块数据。由此可知,无论是不同接入链之间的跨链交易,还是公链与接入链之间的跨链交易,公链都需要获取接入链区块链中记录的区块数据,才能完成跨链交易。In this application, the cross-chain transactions involved in the public chain may include: transactions that occur between the access chain and the public chain, such as query transactions, access transactions, and synchronous transactions. For this cross-chain transaction, because the public chain directly trades with the access chain, the public chain needs to obtain the block data in the access chain blockchain. The cross-chain transactions involved in the public chain can also include transactions in which the public chain is responsible for relaying or forwarding. In this cross-chain transaction, one access chain acts as the initiator of the transaction and the other access chain acts as the target of the transaction. Exemplarily, the access chain A has to pay its own securities pass a to redeem the securities pass b of another access chain B. For this cross-chain transaction, the access chain A cannot directly conduct transactions with the access chain B, and the information and data related to the transaction need to be transmitted through the public chain C. In order to ensure the successful completion of cross-chain transactions, public chain C needs to determine whether access chain A and access chain B can complete the respective transaction content that needs to be completed in the cross-chain transaction, such as whether access chain A can pay for the transaction Zhengtong a. Therefore, the public chain needs to obtain the block data in the blockchain of both parties to the transaction. It can be seen that whether it is a cross-chain transaction between different access chains or a cross-chain transaction between a public chain and an access chain, the public chain needs to obtain the block data recorded in the access chain blockchain in order to Complete cross-chain transactions.
由以上内容可知,为了完成跨链交易,公链需要获取跨链交易中接入链区块链中记录的区块数据。但是,公链和接入链是两种不同的区块链网络,由于两者之间存在不同共识机制、不同通信机制等等差异,即使平行链存储有两者的区块链,公链也无法直接从平行链中获取接入链区块链中的区块数据。因此,本申请提供一种区块链平 行链的维护方法,通过对平行链的维护,使得公链能够从平行链中获取接入链区块链中的区块数据。As can be seen from the above, in order to complete cross-chain transactions, the public chain needs to obtain the block data recorded in the access chain blockchain in cross-chain transactions. However, the public chain and the access chain are two different blockchain networks. Due to the different consensus mechanisms, different communication mechanisms, and other differences between the two, even if the parallel chain stores both blockchains, the public chain also It is not possible to obtain the block data in the access chain blockchain directly from the parachain. Therefore, this application provides a method for maintaining a blockchain parallel chain. By maintaining the parallel chain, the public chain can obtain the block data in the access chain blockchain from the parallel chain.
参见图2,其示例性地示出了本申请一种区块链平行链的维护方法的流程示意图。该方法包括以下步骤。Referring to FIG. 2, a schematic flowchart of a method for maintaining a blockchain parallel chain according to the present application is exemplarily shown. The method includes the following steps.
步骤S20,确定接入链区块链中的待同步区块。Step S20: Determine a block to be synchronized in the access chain block chain.
在本申请中,是通过对平行链的维护,即对平行链区块链的维护,使得公链能够从平行链区块链中获取接入链区块链中的区块数据。因此,平行链需要先确定负责维护平行链的平行链维护者节点。平行链维护者节点用于维护平行链相关的事务,例如生成区块、记录跨链交易等等。在本申请实施例中,有两种方式在平行链的节点中确定平行链维护者节点。In this application, the maintenance of the parallel chain, that is, the maintenance of the parallel chain block chain, enables the public chain to obtain the block data in the access chain block chain from the parallel chain block chain. Therefore, the parachain needs to first determine the parachain maintainer node responsible for maintaining the parachain. The parachain maintainer node is used to maintain parachain-related transactions, such as generating blocks, recording cross-chain transactions, and so on. In the embodiment of the present application, there are two ways to determine the parallel chain maintainer node among the parallel chain nodes.
在一种可能的实施方式中,平行链的节点均为平行链维护者节点。平行链将所有节点都设置为平行链维护者节点,能够确保平行链的节点都能够参与到平行链的维护中,使得每一个平行链的节点都有获取收益的权利。In a possible implementation manner, the nodes of the parachain are all parachain maintainer nodes. Parallax sets all nodes as parachain maintainer nodes, which can ensure that the parachain nodes can participate in the maintenance of the parachain, so that each parachain node has the right to obtain revenue.
在另一种可能的实施方式中,周期性地从平行链的节点中选取平行链维护者节点。选取出的平行链维护者节点在下一周期中维护平行链。当前周期的平行链维护者节点选取下一周期的平行链维护者节点,并且当前周期的平行链维护者节点不再担任下一周期的平行链维护者节点。因此,充当维护者的节点处于动态变化中,并不是由固定的节点充当平行链维护者节点,降低了平行链被攻破的可能性,能够提高平行链的安全性。此外,选取平行链中的部分节点为平行维护者节点,避免了平行链维护的全网操作,因此能够提高平行链运行的效率。上述周期的时长大于选取平行链维护者节点所需的时长,以及小于攻破平行链维护者节点所需的时长。通过对周期时长的限制,即确保在周期内能够完成选取,又降低了平行链维护者节点被攻破的可能性。对于选取的方式,当前周期的平行链维护者节点可以随机选取,也可以根据各平行链节点的运算效率进行选取,还可以根据各平行链节点的安全性能进行选取,等等。对于选取的方式,本申请实施例不做具体限定。In another possible implementation manner, a parachain maintainer node is periodically selected from the parachain nodes. The selected parachain maintainer node maintains the parachain in the next cycle. The parallel chain maintainer node of the current cycle selects the parallel chain maintainer node of the next cycle, and the parallel chain maintainer node of the current cycle no longer serves as the parallel chain maintainer node of the next cycle. Therefore, the node acting as the maintainer is in a dynamic change, and the fixed node is not acting as the maintainer node of the parachain, which reduces the possibility of the parachain being breached and can improve the security of the parachain. In addition, selecting some nodes in the parallel chain as parallel maintainer nodes avoids the entire network operation of parallel chain maintenance, so it can improve the efficiency of parallel chain operation. The duration of the above cycle is greater than the time required to select a parachain maintainer node, and less than the time required to break a parachain maintainer node. By limiting the cycle time, it is ensured that the selection can be completed within the cycle, and the possibility of the parachain maintainer node being broken is reduced. As for the selection method, the parallel chain maintainer nodes of the current cycle can be randomly selected, or can be selected according to the computing efficiency of each parallel chain node, and can also be selected according to the security performance of each parallel chain node, and so on. The manner of selection is not specifically limited in the embodiments of the present application.
在选取出平行链维护者节点后,由当前周期的平行链维护者节点确定接入链区块链中的待同步区块。为了让公链能够从平行链区块链中获取接入链区块链中的区块数据,平行链需要将接入链区块链中的区块数据同步至自身的平行链区块中,即在平行链维护者节点生成的平行链区块中添加接入链的区块数据。待同步区块是指区块数据尚未同步至平行链区块的接入链区块。After the parallel chain maintainer node is selected, the current chain of parallel chain maintainer nodes determines the blocks to be synchronized in the access chain block chain. In order for the public chain to obtain the block data in the access chain block chain from the parallel chain block chain, the parallel chain needs to synchronize the block data in the access chain block chain to its own parallel chain block. That is, the block data of the access chain is added to the parallel chain block generated by the parallel chain maintainer node. The block to be synchronized refers to the access chain block whose block data has not been synchronized to the parallel chain block.
由于平行链存储有接入链区块链,而且平行链节点本身也是接入链节点,因此平行链维护者节点可以直接获取接入链区块链中的区块和区块数据。在确定待同步区块时,平行链维护者节点从接入链区块链的区块数据中,确定尚未同步到平行链区块链的区块数据,进而将这些区块数据所属的接入链区块作为待同步区块。Since the parachain stores the access chain blockchain, and the parachain node itself is also an access chain node, the parachain maintainer node can directly obtain the blocks and block data in the access chain blockchain. When determining the blocks to be synchronized, the parachain maintainer node determines from the block data of the access chain block chain the block data that has not been synchronized to the parachain block chain, and then adds the access to which these block data belong. The chain block is used as the block to be synchronized.
步骤S21,生成符合公链规范形式的平行链区块。Step S21: Generate a parachain block that conforms to the public chain specification form.
平行链维护者节点生成符合公链规范形式的平行链区块。在生成平行链区块时,平行链维护者节点将待同步区块中的区块数据添加在所生成的平行链区块中。对于生成平行链区块,本申请实施例提供两种方式。The parachain maintainer node generates parachain blocks that conform to the public chain specification form. When generating a parallel chain block, the parallel chain maintainer node adds the block data in the block to be synchronized to the generated parallel chain block. For generating a parallel chain block, the embodiment of the present application provides two ways.
第一种,直接将待同步区块中的区块数据作为平行链区块中的部分内容。具体地,平行链维护者节点首先生成索引标识和接入链区块标识。索引标识用于指示待同步区块中的区块数据。待同步区块中可以包括多个区块数据。对于待同步区块中的各个区块数据,平行链维护者节点都会生成一个索引标识。一个区块数据的索引标识指示了该区块数据。公链或平行链可以根据该索引标识确定对应的区块数据。例如,一个区块数据是一笔交易的交易信息,平行链维护者节点对该交易信息进行哈希运算,得到与该交易信息对应的哈希值。该哈希值即为索引标识。接入链区块标识用于指示接入链区块链中的待同步区块。平行链维护者节点每次生成平行链区块时,可以同步多个待同步区块。对于每一个待同步区块,平行链维护者节点都生成一个对应的接入链区块标识。例如,接入链区块标识可以是待同步区块在接入链区块链中的区块序号,或者,是区块序号和区块哈希值的结合。The first is to directly use the block data in the block to be synchronized as part of the content in the parallel chain block. Specifically, the parachain maintainer node first generates an index identifier and an access chain block identifier. The index identifier is used to indicate the block data in the block to be synchronized. The blocks to be synchronized may include multiple block data. For each block data in the block to be synchronized, the parachain maintainer node will generate an index identifier. The index identifier of a block data indicates the block data. The public or parallel chain can determine the corresponding block data according to the index identifier. For example, a block of data is the transaction information of a transaction, and the parallel chain maintainer node performs a hash operation on the transaction information to obtain a hash value corresponding to the transaction information. The hash value is the index ID. The access chain block identifier is used to indicate the blocks to be synchronized in the access chain block chain. Each time a parachain maintainer node generates a parachain block, it can synchronize multiple blocks to be synchronized. For each block to be synchronized, the parallel chain maintainer node generates a corresponding access chain block identifier. For example, the access chain block identifier may be the block number of the block to be synchronized in the access chain block chain, or a combination of the block number and the block hash value.
然后,平行链维护者节点生成符合公链规范形式的区块头。该区块头是平行链维护者节点所要生成的平行链区块的区块头。该区块头中包括待同步区块中各个区块数据的索引标识、各个待同步区块对应的接入链区块标识和平行链区块标识。与接入链区块标识相似,平行链区块标识可以是平行链区块的区块序号,或者,是区块序号和区块哈希值的结合。在生成区块头后,平行链维护者节点将待同步区块中的区块数据直接复制到区块头之后的位置,生成平行链区块。Then, the parachain maintainer node generates a block header that conforms to the public chain specification form. This block header is the block header of the parachain block to be generated by the parachain maintainer node. The block header includes an index identifier of each block data in the block to be synchronized, an access chain block identifier and a parallel chain block identifier corresponding to each block to be synchronized. Similar to the access chain block identifier, the parallel chain block identifier may be the block serial number of the parallel chain block, or a combination of the block serial number and the block hash value. After the block header is generated, the parachain maintainer node directly copies the block data in the block to be synchronized to a position behind the block header to generate a parachain block.
示例性地,如图3所示,待同步区块为接入链区块链A中的第500个和第501个区块:区块30和区块31。两个待同步区块中各自包括了2个区块数据:T1、T2,以及T3、T4。平行链维护者节点生成平行链区块链B中的第250个区块:区块32。在生成区块32时,平行链维护者节点需要将区块30和区块31的区块数据同步到区块32中。在区块32中,区块头321中包括4个区块数据各自的索引标识。4个索引标识为4个哈希值,分别为:T1-hash、T2-hash、T3-hash和T4-hash。区块头321中还包括区块30对应的接入链区块标识和区块31对应的接入链区块标识。在本示例中,接入链区块标识为区块序号和区块哈希值的结合。因此,两个区块对应的接入链区块标识为:“500+A-Block500-hash”,以及“501+A-Block501-hash”。区块头321中还包括区块32对应的接入链区块标识:“250+B-Block250-hash”。在生成区块头321后,平行链维护者节点直接将区块30和区块31中的区块数据复制到区块头321之后的位置,最终生成平行链区块32。Exemplarily, as shown in FIG. 3, the blocks to be synchronized are the 500th and 501st blocks in the access chain block chain A: block 30 and block 31. Each of the two blocks to be synchronized includes two block data: T1, T2, and T3, T4. The parachain maintainer node generates the 250th block in the parachain blockchain B: block 32. When generating block 32, the parachain maintainer node needs to synchronize the block data of block 30 and block 31 to block 32. In block 32, the block header 321 includes the respective index identifiers of the four block data. The four indexes are identified as four hashes, which are: T1-hash, T2-hash, T3-hash, and T4-hash. The block header 321 also includes an access chain block identifier corresponding to block 30 and an access chain block identifier corresponding to block 31. In this example, the access chain block identifier is a combination of a block sequence number and a block hash value. Therefore, the access chain block identifiers corresponding to the two blocks are: "500 + A-Block500-hash", and "501 + A-Block501-hash". The block header 321 also includes the access chain block identifier corresponding to block 32: "250 + B-Block250-hash". After the block header 321 is generated, the parachain maintainer node directly copies the block data in blocks 30 and 31 to a position after the block header 321, and finally generates a parachain block 32.
第二种,平行链维护者节点对待同步区块进行解构重组,生成公链可以直接读取数据的区块。具体地,平行链维护者节点同样地先生成索引标识和接入链区块标识。但是,在生成的区块头时,平行链维护者节点只添加平行链区块标识,而将接入链区块标识添加至区块头之后的位置。此外,对于索引标识,平行链维护者节点按照各个区块数据的类型,将对应的索引标识添加到接入链区块标识之后的位置。例如,在接入链区块标识之后的位置,平行链维护者节点先添加各个交易信息的索引标识;其次,添加各个状态信息的索引标识;再次,添加各个收据信息的索引标识;最终,添加各个数据信息的索引标识。平行链维护者节点在添加完索引标识后,将区块数据转化为符合公链规范形式的数据,并添加到索引标识之后的位置,生成平行链区块。Second, the parachain maintainer node deconstructs and synchronizes the synchronized blocks to generate blocks that the public chain can directly read data from. Specifically, the parallel chain maintainer node similarly first generates an index identifier and an access chain block identifier. However, when generating the block header, the parachain maintainer node only adds the parachain block identifier, and adds the access chain block identifier to a position after the block header. In addition, for the index identifier, the parallel chain maintainer node adds the corresponding index identifier to the position after the access chain block identifier according to the type of each block data. For example, after the access chain block identification, the parachain maintainer node first adds the index identification of each transaction information; second, adds the index identification of each status information; again, adds the index identification of each receipt information; finally, adds Index ID of each data message. After adding the index identifier, the parachain maintainer node converts the block data into data conforming to the public chain specification form, and adds it to the position after the index identifier to generate a parachain block.
示例性地,如图4所示,待同步区块为接入链区块链A中的第500个和第501个 区块:区块40和区块41。每个待同步区块中各自包括了4种类型的区块数据,分别是:交易信息E1和E2、状态信息F1和F2、收据信息G1和G2、以及数据信息H1和H2。平行链维护者节点生成平行链区块链B中的第250个区块:区块42。在生成区块42时,平行链维护者节点需要将区块40和区块41的区块数据同步到区块42中。在区块42中依次包括:区块头421、接入链区块标识422:“500+A-Block500-hash”和“501+A-Block501-hash”、交易信息E1和E2的索引标识423:E1-hash和E2-hash,状态信息F1和F2的索引标识424:F1-hash和F2-hash,收据信息G1和G2的索引标识425:G1-hash和G2-hash,数据信息H1和H2的索引标识426:H1-hash和H2-hash,以及转化为符合公链规范形式的8个区块数据:交易信息e1和e2、状态信息f1和f2、收据信息g1和g2、以及数据信息h1和h2。区块头421中包括区块42对应的平行链区块标识:“250+B-Block250-hash”。Exemplarily, as shown in FIG. 4, the blocks to be synchronized are the 500th and 501st blocks in the access chain block chain A: block 40 and block 41. Each type of block to be synchronized includes four types of block data: transaction information E1 and E2, status information F1 and F2, receipt information G1 and G2, and data information H1 and H2. The parachain maintainer node generates the 250th block in the parachain blockchain B: block 42. When generating block 42, the parachain maintainer node needs to synchronize the block data of block 40 and block 41 into block 42. Block 42 includes, in order: block header 421, access chain block identifier 422: "500 + A-Block500-hash" and "501 + A-Block501-hash", and index identifiers 423 of transaction information E1 and E2: E1-hash and E2-hash, the index identifier 424 of the status information F1 and F2: F1-hash and F2-hash, the index identifier of the receipt information G1 and G2 425: G1-hash and G2-hash, the data information H1 and H2 Index identifier 426: H1-hash and H2-hash, and 8 blocks of data converted into a form conforming to the specifications of the public chain: transaction information e1 and e2, status information f1 and f2, receipt information g1 and g2, and data information h1 and h2. The block header 421 includes a parallel chain block identifier corresponding to the block 42: "250 + B-Block250-hash".
通过上述两种方式,可以将待同步区块中的区块数据同步至公链能够访问的平行链区块链中。无论是第一种方式还是第二种方式,公链读取区块数据时,都是通过平行链区块标识确定区块数据所在的平行链区块,再通过接入链区块标识验证区块数据在接入链中所属的接入链区块,最终通过索引标识确定并读取区块数据。但是,对于第一种方式生成的平行链区块,在读取时,由于区块数据是直接从接入链区块中复制来的,因此公链需要按照接入链的数据读取规则读取区块数据。对于第二种方式生成的平行链区块,在读取时,由于区块数据已经转化为符合公链规范形式的数据,因此公链可以直接读取区块数据。Through the above two methods, the block data in the block to be synchronized can be synchronized to the parallel chain blockchain that the public chain can access. Regardless of the first method or the second method, when the public chain reads the block data, the parallel chain block where the block data is located is determined by the parallel chain block identification, and then the access chain block identification verification area is used. The access chain block to which the block data belongs in the access chain is finally determined and read by the index identifier. However, for the parallel chain block generated by the first method, when reading, the block data is directly copied from the access chain block, so the public chain needs to read according to the data read rules of the access chain. Get block data. For the parallel chain block generated by the second method, since the block data has been converted into data conforming to the public chain specification form, the public chain can directly read the block data.
对于第一种方式,平行链维护者节点能够较快地生成平行链区块,效率较高。但是,公链读取区块数据的速度较慢,降低了跨链交易的效率。对于第二种方式,平行链维护者节点生成平行链区块的效率较低。但是,公链读取区块数据的速度较块,能够提高跨链交易的效率。For the first method, the parachain maintainer node can generate parachain blocks faster and with higher efficiency. However, the public chain's speed of reading block data is slow, which reduces the efficiency of cross-chain transactions. For the second method, the parachain maintainer node is inefficient in generating parachain blocks. However, the public chain can read block data at a faster rate, which can improve the efficiency of cross-chain transactions.
需要说明的是,除了与待同步区块相关的各种标识和区块数据外,平行链区块还可以包括与平行链自身相关的信息和数据。例如,与跨链交易相关的交易信息、部署在平行链上的智能合约等等。It should be noted that in addition to various identifiers and block data related to the blocks to be synchronized, the parachain block may also include information and data related to the parachain itself. For example, transaction information related to cross-chain transactions, smart contracts deployed on parallel chains, and so on.
在一种可能的实施方式中,平行链维护者节点一次只生成一个平行链区块。一个平行链区块中可以同步k个待同步区块。k为大于或等于2的正整数。因此,每次生成平行链区块时,平行链维护者节点最多同步2个待同步区块。若k的取值大于2,则每次生成平行链区块时,平行链维护者节点需要同步的区块数据过多,导致生成平行链区块的效率降低。而且,当一个平行链区块包括过多接入链区块的区块数据时,公链在读取某一区块数据时,需要耗费过多的时间在该平行链区块中查找,会影响跨链交易的效率。具体地,平行链维护者节点可以每隔预设时长,生成一个符合公链规范形式的平行链区块。预设时长为接入链生成区块所需时长的k倍。例如,接入链生成区块所需时长为10分钟。那么,若设置平行链区块中包括3个待同步区块的区块数据,则平行链维护者节点每隔30分钟生成一个平行链区块。平行链维护者节点可以通过控制平行链区块的生成频率,来控制每次同步的区块数量。In a possible implementation manner, the parachain maintainer node generates only one parachain block at a time. K parallel blocks can be synchronized in a parallel chain block. k is a positive integer greater than or equal to two. Therefore, each time a parachain block is generated, the parachain maintainer node synchronizes a maximum of 2 blocks to be synchronized. If the value of k is greater than 2, each time a parachain block is generated, there is too much block data that the parachain maintainer node needs to synchronize, resulting in a decrease in the efficiency of generating parachain blocks. Moreover, when a parachain block includes block data of too many access chain blocks, when the public chain reads a block of data, it takes too much time to find in the parachain block, which will Affects the efficiency of cross-chain transactions. Specifically, the parachain maintainer node may generate a parachain block that conforms to the public chain specification form every preset time period. The preset duration is k times the length of time required for the access chain to generate blocks. For example, it takes 10 minutes for the access chain to generate a block. Then, if the block data of the parallel chain block including 3 blocks to be synchronized is set, the parallel chain maintainer node generates a parallel chain block every 30 minutes. The parachain maintainer node can control the number of blocks synchronized at a time by controlling the generation frequency of parachain blocks.
步骤S22,将平行链区块添加至平行链区块链中。Step S22: Add the parallel chain block to the parallel chain block chain.
生成平行链区块后,平行链维护者节点将该平行链区块添加至平行链区块链,并 在平行链中进行同步,以取得其它平行链节点的共识。After the parachain block is generated, the parachain maintainer node adds the parachain block to the parachain block chain and synchronizes in the parachain to obtain the consensus of other parachain nodes.
在进行跨链交易时,公链需要获取接入链的一个或多个区块数据。对于任一区块数据,公链都需要根据一组摘要信息读取该区块数据。一组摘要信息中包括用于确定区块数据所在的平行链区块的平行链区块标识、用于验证区块数据所属的接入链区块的接入链区块标识,以及该区块数据的索引标识。因此,在读取一个区块数据前,公链需要先获取区块数据对应的一组摘要信息。对此,由于公链可以直接访问平行链区块链,因此公链可以周期性地去获取平行链区块链中存储的各个区块数据对应的摘要信息。在另一些实施例中,平行链维护者节点生成一个平行链区块后,将该平行链区块中的各个数据对应的摘要信息发送给公链。When conducting cross-chain transactions, the public chain needs to obtain one or more block data of the access chain. For any block data, the public chain needs to read the block data according to a set of summary information. The set of summary information includes the parallel chain block identifier used to determine the parallel chain block where the block data is located, the access chain block identifier used to verify the access chain block to which the block data belongs, and the block The index ID of the data. Therefore, before reading a block of data, the public chain needs to obtain a set of summary information corresponding to the block data. In this regard, since the public chain can directly access the parallel chain blockchain, the public chain can periodically obtain summary information corresponding to each block data stored in the parallel chain blockchain. In other embodiments, after the parachain maintainer node generates a parachain block, it sends summary information corresponding to each data in the parachain block to the public chain.
进一步地,如图5所示,上述步骤S20,平行链维护者节点确定接入链区块链中的待同步区块,包括如下子步骤:Further, as shown in FIG. 5, in the above step S20, the parachain maintainer node determines the blocks to be synchronized in the access chain block chain, including the following sub-steps:
S201,确定接入链区块链中当前的区块数量为m。S201. Determine the current number of blocks in the access chain block chain as m.
S202,确定接入链区块链中前m-n个区块为共识区块。S202. Determine the first m-n blocks in the access chain block chain as consensus blocks.
S203,根据平行链区块链中的接入链区块标识,确定共识区块中区块数据未被同步的区块为待同步区块。S203. According to the access chain block identifier in the parallel chain block chain, it is determined that a block whose block data is not synchronized in the consensus block is a block to be synchronized.
首先,平行链维护者节点作为接入链中的节点,确定接入链区块链中当前的区块数量为m。例如,接入链正在生成自身区块链中的第10005个区块,则确定m的值为10005。First, the parallel chain maintainer node, as a node in the access chain, determines that the current number of blocks in the access chain blockchain is m. For example, if the access chain is generating the 10005th block in its own blockchain, it is determined that the value of m is 10005.
由于区块链网络中拥有记账权利的维护者节点通常不止一个,因此对于同一位个数上的区块,可能不同的维护者节点会生成不同的区块。那么,因为同一位个数上的区块不同,所以同一区块链网络中会出现不同的区块链。此时,区块链网络利用自身的共识机制,让所有的节点取得共识,只认同上述不同区块链中的一个,保证所维护的区块链的唯一性。共识区块就是指接入链区块链中已经得到所有接入链节点共识的区块。一旦区块取得所有的节点的共识,那么,该区块就不会被重写或改变。Because there are usually more than one maintainer node in the blockchain network with accounting rights, for the same number of blocks, different maintainer nodes may generate different blocks. Then, because the blocks on the same number are different, different blockchains will appear in the same blockchain network. At this time, the blockchain network uses its own consensus mechanism to allow all nodes to reach consensus and only recognize one of the different blockchains mentioned above to ensure the uniqueness of the blockchain being maintained. Consensus block refers to the block in the access chain block chain that has been agreed by all access chain nodes. Once the block has reached the consensus of all nodes, then the block will not be rewritten or changed.
平行链维护者节点需要保证同步的区块数据是准确地、不会改变地,因此,同步的区块数据是共识区块的区块数据。由于接入链区块链中的区块在不断增加,并且区块链在节点中取得共识需要一定的时间。因此,平行链维护者节点获取到的接入链区块链中,可能包括尚未取得节点共识的区块。但是,平行链维护者节点可以确定接入链区块链中前m-n个区块为共识区块。n为根据实际经验预先设定的数值,且为大于0的正整数。对于不同的接入链,由于节点数量不同、生成区块的时长不同、以及共识机制不同,n的具体数值也不同。例如,在以太坊的区块链中,n的值为10;在比特币的区块链中,n的值为6。The parachain maintainer node needs to ensure that the synchronized block data is accurate and will not change. Therefore, the synchronized block data is the block data of the consensus block. As the number of blocks in the access chain blockchain continues to increase, and it takes time for the blockchain to reach consensus among the nodes. Therefore, the access chain block chain obtained by the parachain maintainer node may include blocks that have not yet reached the node consensus. However, the parachain maintainer node can determine that the first m-n blocks in the access chain blockchain are consensus blocks. n is a value preset in accordance with actual experience, and is a positive integer greater than 0. For different access chains, the specific value of n is also different due to the different number of nodes, the length of time to generate blocks, and the different consensus mechanisms. For example, in the Ethereum blockchain, the value of n is 10; in the Bitcoin blockchain, the value of n is 6.
示例性地,n的值为6。维护者节点确定接入链区块链中当前的区块数量为10005,则能够确定接入链区块链中的前9999个区块为共识区块。Exemplarily, the value of n is 6. The maintainer node determines that the current number of blocks in the access chain block chain is 10005, and can determine that the first 9999 blocks in the access chain block chain are consensus blocks.
在确定接入链中的共识区块后,平行链维护者节点根据平行链区块链中各个区块所包括的接入链区块标识,确定区块数据尚未被同步的共识区块。例如,接入链区块链中的前9999个区块为共识区块。平行链已经同步了前9997个接入链区块。那么,各个平行链区块中包括指示该前9997个接入链区块的接入链区块标识。平行链维护者节点可以确定第9998个和第9999个接入链区块没有对应的接入链区块标识,则平行 链维护者节点将这两个区块作为待同步区块。After determining the consensus block in the access chain, the parachain maintainer node determines the consensus block whose block data has not been synchronized according to the access chain block identifier included in each block in the parallel chain block chain. For example, the first 9999 blocks in the access chain blockchain are consensus blocks. Parachain has synchronized the first 9997 access chain blocks. Then, each of the parallel chain blocks includes an access chain block identifier indicating the first 9997 access chain blocks. The parachain maintainer node can determine that the 9998th and 9999th access chain blocks do not have corresponding access chain block identifiers, then the parachain maintainer node regards these two blocks as blocks to be synchronized.
在本申请中,平行链中的维护者节点生成符合公链规范形式的平行链区块,并将接入链区块链中待同步区块的区块数据包含在平行链区块中。因为平行链节点本身就是公链节点,所以平行链是公链的子链。子链作为公链中的一部分,在节点和网络体系上与公链是一致的,所以子链中的区块链能够被公链直接访问。因此,在进行与接入链相关的跨链交易时,公链可以按照读取子链区块数据的方式,从平行链区块中读取接入链的区块数据,从而能够实现跨链交易。In this application, the maintainer node in the parallel chain generates a parallel chain block that conforms to the public chain specification form, and includes the block data of the block to be synchronized in the access chain block chain in the parallel chain block. Because the parachain nodes themselves are public chain nodes, the parachain is a sub-chain of the public chain. As a part of the public chain, the sub-chain is consistent with the public chain on the node and network system, so the blockchain in the sub-chain can be directly accessed by the public chain. Therefore, when performing cross-chain transactions related to the access chain, the public chain can read the block data of the access chain from the parallel chain block in the manner of reading the sub-chain block data, thereby enabling cross-chain transaction.
本申请还提供一种区块链平行链,该平行链由公链和接入链的共有节点组成,并包括周期性地从平行链的节点中选取的平行链维护者节点。该平行链可以用于实现上述方法示例The application also provides a parallel chain of a block chain, which is composed of common nodes of the public chain and the access chain, and includes a parallel chain maintainer node selected periodically from the nodes of the parallel chain. This parachain can be used to implement the above method example
上述平行链维护者节点,用于:确定接入链区块链中的待同步区块;生成符合公链规范形式的平行链区块,平行链区块包括待同步区块中的区块数据;将平行链区块添加至平行链区块链中,以供公链从平行链区块链中读取待同步区块的区块数据。The aforesaid parachain maintainer node is used to: determine the blocks to be synchronized in the access chain block chain; generate parachain blocks that conform to the public chain specification form, and the parachain blocks include the block data in the blocks to be synchronized ; Add the parachain block to the parachain block chain, so that the public chain can read the block data of the block to be synchronized from the parachain block chain.
在一种可能的实施方式中,平行链维护者节点,具体用于:In a possible implementation manner, the parachain maintainer node is specifically used to:
生成索引标识和接入链区块标识,索引标识用于指示待同步区块中的区块数据,接入链区块标识用于指示接入链区块链中的待同步区块;生成符合公链规范形式的区块头,区块头包括索引标识、接入链区块标识和平行链区块标识,平行链区块标识用于指示平行链区块链中的平行链区块;将待同步区块的区块数据复制到区块头之后的位置,生成平行链区块。Generate an index identifier and an access chain block identifier. The index identifier is used to indicate the block data in the block to be synchronized. The access chain block identifier is used to indicate the block to be synchronized in the access chain block chain. Block header in the form of a public chain specification. The block header includes an index identifier, an access chain block identifier, and a parallel chain block identifier. The parallel chain block identifier is used to indicate the parallel chain block in the parallel chain block; it will be synchronized The block data of the block is copied to the position behind the block header to generate a parachain block.
在另一种可能的实施方式中,平行链维护者节点,具体用于:生成索引标识和接入链区块标识,索引标识用于指示待同步区块中的区块数据,接入链区块标识用于指示接入链区块链中的待同步区块;生成符合公链规范形式的区块头,区块头包括平行链区块标识,平行链区块标识用于指示平行链区块链中的平行链区块;将接入链区块标识添加到区块头之后的位置;按照区块数据的类型,将索引标识添加到接入链区块标识之后的位置,区块数据的类型包括交易信息、状态信息、收据信息和数据信息;将区块数据转化为符合公链规范形式的数据,并添加至索引标识之后的位置,生成平行链区块。In another possible implementation manner, the parallel chain maintainer node is specifically configured to generate an index identifier and an access chain block identifier, the index identifier is used to indicate block data in the block to be synchronized, and the access chain area The block identifier is used to indicate the blocks to be synchronized in the access chain block chain; a block header conforming to the public chain specification form is generated, and the block header includes the parallel chain block identifier, and the parallel chain block identifier is used to indicate the parallel chain block chain In the parallel chain block; the access chain block identifier is added to the position after the block header; according to the type of block data, the index identifier is added to the position after the access chain block identifier, and the type of block data includes Transaction information, status information, receipt information, and data information; block data is converted into data that conforms to the public chain specification form, and added to the position after the index identification to generate a parallel chain block.
在本申请提供的区块链平行链中,平行链中的维护者节点生成符合公链规范形式的平行链区块,并将接入链区块链中待同步区块的区块数据包含在平行链区块中。因为平行链节点本身就是公链节点,所以平行链是公链的子链。子链作为公链中的一部分,在节点和网络体系上与公链是一致的,所以子链中的区块链能够被公链直接访问。因此,在进行与接入链相关的跨链交易时,公链可以按照读取子链区块数据的方式,从平行链区块中读取接入链的区块数据,从而能够实现跨链交易。In the blockchain parallel chain provided in this application, the maintainer node in the parallel chain generates a parallel chain block that conforms to the public chain specification form, and includes the block data of the block to be synchronized in the access chain blockchain in the Parachain blocks. Because the parachain nodes themselves are public chain nodes, the parachain is a sub-chain of the public chain. As a part of the public chain, the sub-chain is consistent with the public chain on the node and network system, so the blockchain in the sub-chain can be directly accessed by the public chain. Therefore, when performing cross-chain transactions related to the access chain, the public chain can read the block data of the access chain from the parallel chain block in the manner of reading the sub-chain block data, thereby enabling cross-chain transaction.
本领域的技术人员可以清楚地了解到本申请实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计 算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。Those skilled in the art can clearly understand that the technology in the embodiments of the present application can be implemented by means of software plus a necessary universal hardware platform. Based on such an understanding, the technical solutions in the embodiments of the present application can be embodied in the form of software products that are essentially or contribute to the existing technology. The computer software product can be stored in a storage medium, such as ROM / RAM. , Magnetic disks, optical disks, etc., including a number of instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform the methods described in various embodiments or certain parts of the application.
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由权利要求指出。Those skilled in the art will readily contemplate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this disclosure that conform to the general principles of this disclosure and include the common general knowledge or conventional technical means in the technical field not disclosed by this disclosure. . It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the application being indicated by the following claims.
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的内容,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。It should be understood that the present application is not limited to what has been described above and shown in the drawings, and various modifications and changes may be made without departing from the scope thereof. The scope of the application is limited only by the accompanying claims.
此外,在本申请的描述中,除非另有说明,“多个”是指两个或多于两个。另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。Furthermore, in the description of this application, unless stated otherwise, "plurality" means two or more. In addition, in order to facilitate a clear description of the technical solutions of the embodiments of the present application, in the embodiments of the present application, words such as “first” and “second” are used to distinguish between the same or similar items having substantially the same functions and functions. Those skilled in the art can understand that the words "first", "second" and the like do not limit the number and execution order, and the words "first" and "second" are not necessarily different.

Claims (10)

  1. 一种区块链平行链的维护方法,其特征在于,所述方法包括:A method for maintaining a blockchain parallel chain, characterized in that the method includes:
    确定接入链区块链中的待同步区块;Determine the blocks to be synchronized in the access chain block chain;
    生成符合公链规范形式的平行链区块,平行链区块包括所述待同步区块的区块数据;Generating a parallel chain block that conforms to a public chain specification form, and the parallel chain block includes block data of the block to be synchronized;
    将所述平行链区块添加至平行链区块链中,以供公链从所述平行链区块链中读取所述待同步区块的区块数据。The parachain block is added to the parachain block chain for a public chain to read the block data of the block to be synchronized from the parachain block chain.
  2. 根据权利要求1所述的方法,其特征在于,所述生成符合公链规范形式的平行链区块,包括:The method according to claim 1, wherein said generating a parallel chain block in a form conforming to a public chain specification comprises:
    生成索引标识和接入链区块标识,索引标识用于指示待同步区块中的区块数据,接入链区块标识用于指示接入链区块链中的待同步区块;Generate an index identifier and an access chain block identifier, the index identifier is used to indicate the block data in the block to be synchronized, and the access chain block identifier is used to indicate the block to be synchronized in the access chain block chain;
    生成符合公链规范形式的区块头,区块头包括所述索引标识、所述接入链区块标识和平行链区块标识,平行链区块标识用于指示平行链区块链中的平行链区块;Generate a block header that conforms to the public chain specification form. The block header includes the index identifier, the access chain block identifier, and the parallel chain block identifier. The parallel chain block identifier is used to indicate the parallel chain in the parallel chain blockchain. Block
    将所述待同步区块的区块数据复制到所述区块头之后的位置,生成所述平行链区块。Copy the block data of the block to be synchronized to a position behind the block header to generate the parallel chain block.
  3. 根据权利要求1所述的方法,其特征在于,所述生成符合公链规范形式的平行链区块,包括:The method according to claim 1, wherein said generating a parallel chain block in a form conforming to a public chain specification comprises:
    生成索引标识和接入链区块标识,索引标识用于指示待同步区块的区块数据,所述接入链区块标识用于指示接入链区块链中的待同步区块;Generating an index identifier and an access chain block identifier, the index identifier is used to indicate the block data of the block to be synchronized, and the access chain block identifier is used to indicate the block to be synchronized in the access chain block chain;
    生成符合公链规范形式的区块头,区块头包括平行链区块标识,平行链区块标识用于指示平行链区块链中的平行链区块;Generate a block header that conforms to the public chain specification form, the block header includes a parallel chain block identifier, and the parallel chain block identifier is used to indicate the parallel chain block in the parallel chain block chain;
    将接入链区块标识添加到所述区块头之后的位置;Adding an access chain block identifier to a position after the block header;
    按照所述区块数据的类型,将索引标识添加到所述接入链区块标识之后的位置,所述区块数据的类型包括交易信息、状态信息、收据信息和数据信息;Adding an index identifier to a position after the access chain block identifier according to the type of the block data, and the type of the block data includes transaction information, status information, receipt information, and data information;
    将所述区块数据转化为符合公链规范形式的数据,并添加至索引标识之后的位置,生成所述平行链区块。The block data is converted into data conforming to a public chain specification form, and is added to a position after the index identification to generate the parallel chain block.
  4. 根据权利要求2或3任一项所述的方法,其特征在于,所述生成符合公链规范形式的平行链区块之后,还包括:The method according to any one of claims 2 or 3, wherein after the generating a parallel chain block conforming to a public chain specification form, further comprising:
    向公链发送所述区块数据对应的摘要信息,以使得公链根据所述摘要信息,从平行链区块链中读取所述待同步区块的区块数据,摘要信息包括所述区块数据对应的接入链区块标识、平行链区块标识和索引标识。Send the summary information corresponding to the block data to the public chain, so that the public chain reads the block data of the block to be synchronized from the parallel chain block chain according to the summary information, and the summary information includes the area The access chain block identifier, parallel chain block identifier, and index identifier corresponding to the block data.
  5. 根据权利要求2或3任一项所述的方法,其特征在于,所述确定接入链区块链中的待同步区块,包括:The method according to any one of claims 2 or 3, wherein the determining a block to be synchronized in an access chain block chain comprises:
    确定接入链区块链中当前的区块数量为m;Determine the current number of blocks in the access chain block chain as m;
    确定接入链区块链中前m-n个区块为共识区块,所述n为预先设定的数值,所述 共识区块为接入链区块链中已经得到接入链节点共识的区块,n为大于0的正整数;It is determined that the first mn blocks in the access chain block chain are consensus blocks, the n is a preset value, and the consensus block is an area in the access chain block chain that has been reached by the access chain node consensus Block, n is a positive integer greater than 0;
    根据所述平行链区块链中的接入链区块标识,确定所述共识区块中区块数据未被同步的区块为待同步区块。According to the access chain block identifier in the parallel chain block chain, it is determined that a block whose block data is not synchronized in the consensus block is a block to be synchronized.
  6. 根据权利要求1所述的方法,其特征在于,所述待同步区块的数量为k,k为大于或等于2的正整数;The method according to claim 1, wherein the number of blocks to be synchronized is k, and k is a positive integer greater than or equal to two;
    所述生成符合公链规范形式的平行链区块,包括:The generating a parallel chain block that conforms to a public chain specification form includes:
    每隔预设时长,生成一个符合公链规范形式的平行链区块,所述预设时长为接入链生成区块所需时长的k倍的时长。Every preset time period, a parallel chain block conforming to the public chain specification form is generated, and the preset time length is k times the time length required for the access chain to generate a block.
  7. 根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 1 to 3, wherein the method further comprises:
    周期性地从平行链的节点中选取平行链维护者节点,平行链维护者节点用于生成平行链区块。Periodically select the parachain maintainer node from the parachain nodes. The parachain maintainer node is used to generate parachain blocks.
  8. 一种区块链平行链,所述平行链由公链和接入链的共有节点组成,其特征在于,所述平行链包括周期性地从所述平行链的节点中选取的平行链维护者节点;A blockchain parallel chain, the parallel chain is composed of common nodes of a public chain and an access chain, and is characterized in that the parallel chain includes a parallel chain maintainer selected periodically from the nodes of the parallel chain node;
    所述平行链维护者节点,用于:确定接入链区块链中的待同步区块;生成符合公链规范形式的平行链区块,平行链区块包括所述待同步区块的区块数据;将所述平行链区块添加至平行链区块链中,以供公链从所述平行链区块链中读取所述待同步区块的区块数据。The parachain maintainer node is used to: determine the blocks to be synchronized in the access chain block chain; generate a parachain block that conforms to the public chain specification form, and the parachain block includes the area of the block to be synchronized Block data; adding the parachain block to the parachain block chain for a public chain to read the block data of the block to be synchronized from the parachain block chain.
  9. 根据权利要求8所述的区块链平行链,所述平行链维护者节点,具体用于:The parallel chain of the blockchain according to claim 8, wherein the parallel chain maintainer node is specifically configured to:
    生成索引标识和接入链区块标识,索引标识用于指示待同步区块中的区块数据,接入链区块标识用于指示接入链区块链中的待同步区块;Generate an index identifier and an access chain block identifier, the index identifier is used to indicate the block data in the block to be synchronized, and the access chain block identifier is used to indicate the block to be synchronized in the access chain block chain;
    生成符合公链规范形式的区块头,区块头包括所述索引标识、所述接入链区块标识和平行链区块标识,平行链区块标识用于指示平行链区块链中的平行链区块;Generate a block header that conforms to the public chain specification form. The block header includes the index identifier, the access chain block identifier, and the parallel chain block identifier. The parallel chain block identifier is used to indicate the parallel chain in the parallel chain blockchain. Block
    将所述待同步区块的区块数据复制到所述区块头之后的位置,生成所述平行链区块。Copy the block data of the block to be synchronized to a position behind the block header to generate the parallel chain block.
  10. 根据权利要求8所述的区块链平行链,所述平行链维护者节点,具体用于:The parallel chain of the blockchain according to claim 8, wherein the parallel chain maintainer node is specifically configured to:
    生成索引标识和接入链区块标识,索引标识用于指示待同步区块的区块数据,所述接入链区块标识用于指示接入链区块链中的待同步区块;Generating an index identifier and an access chain block identifier, the index identifier is used to indicate the block data of the block to be synchronized, and the access chain block identifier is used to indicate the block to be synchronized in the access chain block chain;
    生成符合公链规范形式的区块头,区块头包括平行链区块标识,平行链区块标识用于指示平行链区块链中的平行链区块;Generate a block header that conforms to the public chain specification form, the block header includes a parallel chain block identifier, and the parallel chain block identifier is used to indicate the parallel chain block in the parallel chain block chain;
    将接入链区块标识添加到所述区块头之后的位置;Adding an access chain block identifier to a position after the block header;
    按照所述区块数据的类型,将索引标识添加到所述接入链区块标识之后的位置,所述区块数据的类型包括交易信息、状态信息、收据信息和数据信息;Adding an index identifier to a position after the access chain block identifier according to the type of the block data, and the type of the block data includes transaction information, status information, receipt information, and data information;
    将所述区块数据转化为符合公链规范形式的数据,并添加至索引标识之后的位置,生成所述平行链区块。The block data is converted into data conforming to a public chain specification form, and is added to a position after the index identification to generate the parallel chain block.
PCT/CN2019/101059 2018-08-28 2019-08-16 Maintenance method for blockchain parachain, and blockchain parachain WO2020042937A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021516946A JP2021527373A (en) 2018-08-28 2019-08-16 How to maintain blockchain parachain and blockchain parachain
FI20206356A FI20206356A1 (en) 2018-08-28 2019-08-16 Method for maintaining blockchain parallel chain and blockchain parallel chain

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201810986825.3 2018-08-28
CN201810986825 2018-08-28
CN201910145999.1 2019-02-27
CN201910145999.1A CN110866751B (en) 2018-08-28 2019-02-27 Block chain parallel chain maintenance method and block chain parallel chain system

Publications (1)

Publication Number Publication Date
WO2020042937A1 true WO2020042937A1 (en) 2020-03-05

Family

ID=69643162

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/101059 WO2020042937A1 (en) 2018-08-28 2019-08-16 Maintenance method for blockchain parachain, and blockchain parachain

Country Status (1)

Country Link
WO (1) WO2020042937A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111932254A (en) * 2020-08-11 2020-11-13 杭州萌格信息科技有限公司 Application method of block chain multi-chain parallel structure
JP2021108464A (en) * 2020-04-07 2021-07-29 バイドゥ インターナショナル テクノロジー (シンセン) カンパニー リミテッド Transaction processing method, apparatus, equipment and system for multi-chain system, and media
CN113206851A (en) * 2021-05-06 2021-08-03 杭州复杂美科技有限公司 Parallel chain consensus method, computer device, and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107220130A (en) * 2017-05-12 2017-09-29 北京众享比特科技有限公司 A kind of information common recognition method realized at the node of block chain, apparatus and system
CN107742210A (en) * 2017-10-13 2018-02-27 布比(北京)网络技术有限公司 Across the chain fund transfer system and method for a kind of different blocks interchain
CN107888562A (en) * 2017-10-13 2018-04-06 布比(北京)网络技术有限公司 Interconnect serobila architecture
CN107909369A (en) * 2017-10-13 2018-04-13 布比(北京)网络技术有限公司 Based on the common recognition method, apparatus merchandised across chain and storage medium
US20180130034A1 (en) * 2016-11-07 2018-05-10 LedgerDomain, LLC Extended blockchains for event tracking and management

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180130034A1 (en) * 2016-11-07 2018-05-10 LedgerDomain, LLC Extended blockchains for event tracking and management
CN107220130A (en) * 2017-05-12 2017-09-29 北京众享比特科技有限公司 A kind of information common recognition method realized at the node of block chain, apparatus and system
CN107742210A (en) * 2017-10-13 2018-02-27 布比(北京)网络技术有限公司 Across the chain fund transfer system and method for a kind of different blocks interchain
CN107888562A (en) * 2017-10-13 2018-04-06 布比(北京)网络技术有限公司 Interconnect serobila architecture
CN107909369A (en) * 2017-10-13 2018-04-13 布比(北京)网络技术有限公司 Based on the common recognition method, apparatus merchandised across chain and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BAI, JIE ET AL.: "The Standard of Blockchain Applications Model Pubheation and Deployment Technologies Research", INFORMATION TECHOLOGY AND NETWORK SECURITY, vol. 37, no. 8, 10 August 2018 (2018-08-10) *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021108464A (en) * 2020-04-07 2021-07-29 バイドゥ インターナショナル テクノロジー (シンセン) カンパニー リミテッド Transaction processing method, apparatus, equipment and system for multi-chain system, and media
JP7026836B2 (en) 2020-04-07 2022-02-28 バイドゥ インターナショナル テクノロジー (シンセン) カンパニー リミテッド Transaction processing methods, devices, equipment, systems and media for multi-chain systems
CN111932254A (en) * 2020-08-11 2020-11-13 杭州萌格信息科技有限公司 Application method of block chain multi-chain parallel structure
CN111932254B (en) * 2020-08-11 2024-03-22 杭州萌格信息科技有限公司 Application method of block chain multi-chain parallel structure
CN113206851A (en) * 2021-05-06 2021-08-03 杭州复杂美科技有限公司 Parallel chain consensus method, computer device, and storage medium

Similar Documents

Publication Publication Date Title
CN110866751B (en) Block chain parallel chain maintenance method and block chain parallel chain system
US11995618B2 (en) Blockchain network interaction controller
TWI724391B (en) Node management method and device based on blockchain
EP3812992B1 (en) Block chain transaction method and apparatus
CN110958117B (en) Block chain interoperability with support for zero knowledge proof
TWI694390B (en) Blockchain-based transaction processing method and device, and electronic equipment
WO2020042937A1 (en) Maintenance method for blockchain parachain, and blockchain parachain
KR101727525B1 (en) Block chain based distributed storage method and device thereof
CN107169865B (en) Asset data processing system based on block chain technology
WO2020088109A1 (en) Blockchain-based private transactions and usage method and apparatus therefor
TW201943250A (en) Cross-blockchain authentication method and apparatus, and electronic device
JP7319961B2 (en) Computer-implemented systems and methods related to binary blockchains forming a pair of coupled blockchains
TW202008272A (en) Block-chain transaction method and device, and electronic device
WO2020173500A1 (en) Public chain-based sub-chain business system
WO2020238238A1 (en) Blockchain account creation method and device, and blockchain transaction verification method and device
WO2020088074A1 (en) Privacy transaction method and apparatus based on blockchain, and application method and apparatus therefor
CN113364735A (en) Data cross-link access control method, system, equipment and terminal under multi-link scene
CN108256354B (en) Test data-based storage method and storage medium
KR20190108263A (en) Hybrid block chain system and method for transferring of a control transaction using the system
CN114726517A (en) Method, system and consensus node for generating random number seeds on block chain
CN114039733B (en) Certificate storage service transfer method, device and equipment for alliance chains
Grybniak et al. Waterfall: a scalable distributed ledger technology
KR102229923B1 (en) Agreed data transmit method and apparatus for transmitting the agreed data in network
JP2023513951A (en) Adapting connections in hierarchical networks
JP2023513950A (en) layered network

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19854155

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021516946

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19854155

Country of ref document: EP

Kind code of ref document: A1