WO2020042932A1 - Procédé et système de stockage d'informations de chaîne de blocs sur la base d'une chaîne publique - Google Patents

Procédé et système de stockage d'informations de chaîne de blocs sur la base d'une chaîne publique Download PDF

Info

Publication number
WO2020042932A1
WO2020042932A1 PCT/CN2019/101050 CN2019101050W WO2020042932A1 WO 2020042932 A1 WO2020042932 A1 WO 2020042932A1 CN 2019101050 W CN2019101050 W CN 2019101050W WO 2020042932 A1 WO2020042932 A1 WO 2020042932A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
chain
information
blockchain
public chain
Prior art date
Application number
PCT/CN2019/101050
Other languages
English (en)
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 CN201811496920.1A external-priority patent/CN110866825B/zh
Application filed by 白杰 filed Critical 白杰
Publication of WO2020042932A1 publication Critical patent/WO2020042932A1/fr

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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Definitions

  • the present application relates to the field of network transaction technology, and in particular, to a method and system for storing blockchain information based on a public chain.
  • Blockchain technology is a decentralized system idea that can create a relatively objective anti-repudiation digital environment through public consensus.
  • Blockchain technology can ensure that network information cannot be changed once it is released. For example, if a transaction occurs in the blockchain network, nodes in the blockchain network will record the content of the transaction in the generated block, and Block data is broadcast throughout the network, and other nodes in the network store the block data synchronously or asynchronously to form an unchangeable blockchain.
  • the transaction has a broad meaning and does not refer to "commodity sale” or “item exchange” in the traditional sense, but refers to the content or operation result of a certain type or data on the blockchain network, for example, on the network
  • a query request a for the performance of a certain type of communication equipment is initiated, and the query request a is a transaction for the blockchain node B that undertakes the query service.
  • the node B sends the performance table b of the communication device of the model obtained to the node A to the node A.
  • Information A, a and information B, b as transaction information will be written into the data block of the blockchain.
  • 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. For example, a transaction initiated by node A in network N1 to node B in network N2. Because network N1 and network N2 are both blockchain networks, transactions will generate two types of block data, which are stored in network N1 and network N2, respectively. In order to obtain complete accounting information, the two parties of the transaction need to synchronize the blockchain information, that is, the network N1 must obtain the blockchain information stored in the network N2 and store it in the nodes of the network N1.
  • one cross-chain transaction needs to store two blockchain information on the network N1. If multiple blockchain networks are connected to network N1, in order to store cross-chain transactions between multiple blockchain networks and network N1, a large amount of storage space in network N1 will be occupied. In addition, because the blockchain network uses distributed storage, the blockchain information synchronized on network N1 also needs to be broadcast on network N1. If the connected blockchain network initiates a cross-over to network N1 within a period of time Chain transactions will cause multi-node large-scale high-concurrency operations on network N1, occupying network resources, and then reducing the node's verification and storage efficiency of block data.
  • the present application provides a method and system for storing blockchain information based on a public chain to solve the problems that traditional blockchain information storage methods occupy a large amount of storage space during cross-chain transactions and have low storage efficiency.
  • the present application provides a method for storing blockchain information based on a public chain, including:
  • the submitting node periodically obtains the blockchain information to be synchronized from the access chain node;
  • the submission node initiates a synchronous transaction with blockchain information to the public chain to trigger the maintainer node in the public chain to execute the submission contract;
  • the maintainer node verifies the synchronous transaction by submitting the execution result of the contract, and extracts the data in the blockchain information to generate summary information;
  • the summary information includes the address of the access chain node and the transaction data identifier;
  • the maintainer node broadcasts the summary information in the public chain network
  • Multiple storage nodes in the public chain store the received summary information in a distributed manner.
  • the submitting node is a parallel chain node that bridges the public chain and the access chain;
  • the submitting node is designated in the public chain network and other nodes than the maintainer node;
  • the submitting node is a node designated in the access chain network.
  • the step of the submitting node periodically obtaining the blockchain information to be synchronized from the access chain node includes:
  • the access chain node records the increase in cross-chain transactions included in the blockchain information
  • the step of the submitting node periodically obtaining the blockchain information to be synchronized from the access chain node includes:
  • the access chain node records the block increase in the blockchain information
  • the blockchain information is sent to the submitting node.
  • the method further includes:
  • the submission node generates submission notification information and sends the submission notification information to other nodes to prevent other nodes from initiating a synchronous transaction with the public chain on the same blockchain information;
  • the maintainer node refuses to receive the synchronous transaction containing the same blockchain information.
  • the protector node verifies the synchronous transaction by submitting the execution result of the contract, and extracts the data in the blockchain information.
  • the steps of generating summary information include:
  • the maintainer node extracts the blockchain information and determines the attributes of the corresponding access chain according to the blockchain information;
  • the data in the blockchain information is extracted according to the attributes of the access chain, and summary information is generated according to the abstract extraction template.
  • the step of the maintainer node broadcasting the summary information in the public chain network includes:
  • the maintainer node receives summary information corresponding to multiple transactions
  • the maintainer node creates block data according to the summary information, and the block data contains summary information corresponding to multiple transactions;
  • the storage nodes in the public chain verify the block data, and after the verification is passed, the block chain information containing the summary information is generated.
  • the present application also provides a public chain-based blockchain information storage method, including:
  • the submitting node periodically obtains the blockchain information from the access chain node
  • the submitting node extracts the blockchain information to generate summary information, and the summary information includes the access chain address of the blockchain information source and the transaction data identifier;
  • the submitting node initiates a synchronous transaction with summary information to the public chain to trigger the maintainer node in the public chain to execute the submission contract;
  • the maintainer node in the public chain verifies the synchronous transaction by submitting the execution result of the contract, and obtains the summary information
  • the maintainer node broadcasts the summary information in the public chain network
  • Multiple storage nodes in the public chain store the received summary information in a distributed manner.
  • the present application also provides a public chain-based blockchain information storage system, including a public chain and an access chain that accesses a public chain network, and the public chain and the access chain are P2P networks; Some nodes in the chain are configured as maintainer nodes and storage nodes; some nodes in the public chain and / or access chain are configured as submitting nodes;
  • the submitting node is further configured: the submitting node periodically obtains the blockchain information to be synchronized from the access chain node; the submitting node initiates a synchronization transaction with the blockchain information to the public chain to trigger a maintainer in the public chain The node executes the submission contract;
  • the maintainer node is further configured to execute a submitted contract, verify the synchronous transaction by submitting the execution result of the contract, extract the data in the blockchain information, and generate summary information; the summary information includes the access chain node address and transaction data Identifier; and, broadcasting summary information within the public chain network;
  • the storage node is further configured to: store the received digest information in a distributed manner.
  • the present application also provides a public chain-based blockchain information storage system, including a public chain and an access chain that accesses a public chain network.
  • the public chain and the access chain are P2P networks; the public chain Some nodes in the configuration are maintained nodes and storage nodes; some nodes in the public chain and / or access chain are configured as submitting nodes;
  • the submitting node is further configured to: periodically obtain the blockchain information from the access chain node; extract the blockchain information to generate summary information, and the summary information includes the access chain address of the blockchain information source, and transaction data Identifier; and initiate a synchronous transaction with summary information to the public chain to trigger the maintainer node in the public chain to execute the submission contract;
  • the maintainer node is further configured to: execute the submitted contract, verify the synchronous transaction through the execution result of the submitted contract, and obtain summary information; and broadcast the summary information in the public chain network
  • the storage node is further configured to: store the received digest information in a distributed manner.
  • a public chain-based blockchain information storage method and system provided by the present application.
  • the submitting node first periodically obtains the blocks to be synchronized from the access chain node. Chain information, and the submitting node initiates a synchronous transaction with blockchain information to the public chain to trigger the maintainer node in the public chain to execute the submission contract and generate summary information.
  • the maintainer node broadcasts the summary information in the public chain network to enable multiple storage nodes in the public chain to store the summary information.
  • the summary information can be extracted from the blockchain information to be synchronized through the submitting node and / or the maintainer node, and the summary information is stored in the storage node of the public chain to reduce the volume of synchronization data and share the public chain nodes.
  • Data processing load thereby solving the problems of traditional blockchain information storage methods occupying a large amount of storage space during cross-chain transactions and low storage efficiency.
  • FIG. 1 is a schematic flowchart of a method for storing blockchain information based on a public chain in this application;
  • FIG. 2 is a schematic flowchart of sending blockchain information by an access chain node in this application
  • FIG. 3 is a schematic flowchart of sending blockchain information by another access chain node in this application.
  • FIG. 4 is a schematic flowchart of extracting abstract information according to an abstract format table
  • FIG. 5 is a schematic flowchart of broadcasting summary information by a maintainer node of the present application.
  • FIG. 6 is a schematic structural diagram of a public chain-based blockchain information storage system
  • FIG. 7 is a schematic flowchart of another blockchain information storage method based on a public chain of the present application.
  • a blockchain network refers to a peer-to-peer (P2P) network with a decentralized application architecture.
  • the blockchain network can perform distributed storage, public consensus, and digital encryption. , Transaction accounting, and verification. That is, a trading platform that covers distributed technology, cryptography, P2P network architecture, and various consensus algorithms that may be applied.
  • Blockchain or blockchain information refers to the accounting information generated based on transaction information when a transaction occurs in the blockchain network, that is, multiple specific transactions form a block, and multiple blocks form a block chain.
  • Blockchain networks include nodes that establish peer-to-peer network connections with each other.
  • Each node is configured with a corresponding consensus mechanism, such as a smart contract, and has sufficient computing power to perform transaction verification and accounting procedures.
  • the nodes also have an interface specification that conforms to a certain unified standard to achieve access to more nodes or other types of blockchain networks through the interface specification.
  • the public chain is a basic network platform that is arranged on the entire network and consists of multiple public chain nodes, each of which has a uniform interface specification. Through the interface on the node, multiple blockchain networks can be accessed, that is, the access chain.
  • multiple blockchain networks can be accessed, that is, the access chain.
  • this application is collectively referred to as sub-chains; and existing blockchain networks such as Bitcoin, Ethereum, etc., or industry chains developed by certain industries and Alliance chains, even private chains built to meet certain service needs.
  • These existing blockchains, industry chains, alliance chains, and private chains generally cannot directly trade with each other or even with the public chain network. Therefore, in this application, the public chain and other networks can be connected through parallel chains.
  • both the access chain and the public chain include multiple nodes.
  • its nodes are collectively referred to as an access chain node.
  • the public chain according to its functions, it is divided into: access nodes, that is, nodes connecting the public chain and the access chain (or parallel chain); maintainer nodes, that is, participating in the transaction broadcasting and smart contract execution in the public chain, and Nodes that perform data processing and blockchain generation; storage nodes, that is, nodes with storage space in the public chain.
  • a node device can simultaneously play multiple node roles.
  • the submitting node refers to the node that sends the blockchain information to be synchronized to the public chain.
  • the blockchain information that needs to be stored in the public chain for this application is generated by cross-chain transactions in which the public chain participates.
  • the cross-chain transactions in which the public chain participates may include transactions that occur between the access chain and the public chain, such as query transactions, access transactions, and synchronous transactions. Therefore, for this type of transaction, the blockchain information corresponding to the transaction needs to be stored in both the public chain and the access chain.
  • Public chain participation in cross-chain transactions also includes transactions that are relayed or forwarded by the public chain, that is, the blockchain network connected to the public chain has one access chain as the initiator of the transaction (transaction initiation chain) ), A transaction chain is used as the target of the transaction (transaction target chain).
  • the transaction initiation chain needs to query the device performance in a certain network device by paying a type of Zhengtong.
  • the transaction initiation chain network cannot directly conduct transactions with the transaction target chain, and the transaction information needs to be transmitted through the public chain.
  • the essential process is that the transaction target chain first transacts with the public chain so that the public chain can pass the transaction content, and the public chain then transacts with the transaction target chain to pass the transaction content to the transaction target chain. That is, in the entire transaction process, the public chain has participated in the two processes of receiving transactions and transmitting transactions. Such transactions also need to store corresponding blockchain information in the public chain network.
  • the public chain can also be used to store summary information of corresponding cross-chain transactions, that is, transaction summary. Record the relevant content of cross-chain transactions through formatted transaction data.
  • the stored summary information can only record part of the content that can be traced back to specific transaction blockchain information.
  • the summary information should include at least the address of the access chain in order to confirm access chain. It should also include at least an identifier describing the transaction information, such as the number of blocks in the transaction information and the position of the transaction information in the block.
  • the transaction identifier in the summary information may be further converted into a string form with a smaller storage capacity, and the meaning of the referred transaction information is represented by a corresponding specific numerical value.
  • a feasible solution for storing the summary information is: the format of the summary information is: H + A + S + I + T.
  • H represents the head, which is used to indicate the type of the digest, which can be 2 characters, that is, 255 possibilities;
  • A is used to identify the index value of the access chain information, because the access chain will have a corresponding in the public chain Record of voting and registration, so there is no need to record detailed information, only an index value is needed;
  • S block sequence number, not a fixed length;
  • I represents the transaction serial number;
  • T represents the tail, and the end of the summary can be indicated by one character.
  • A, S, I can be stored using TLV, that is, TAG + LENGTH + VALUE, which has sufficient flexibility and corresponding expansibility. Therefore, compared to the entire block, the storage space it takes up is greatly reduced, thereby avoiding a large amount of storage space on the public chain.
  • the public chain can also record third-party blockchain information through a specific compression algorithm when recording certain information.
  • the block data formed and stored in the public chain can include the following: block identifiers (such as serial numbers, timestamps, block hash values, and previous block hash values), block ownership (that is, block producers) ), Other information of the block (such as random value, difficulty value and additional information, etc.), block weight, information summary (such as transaction tree, status tree, receipt tree, data tree, etc.), transaction costs, rewards, size, etc.
  • a public chain-based blockchain information storage method includes the following steps:
  • S11 The submitting node periodically obtains the blockchain information to be synchronized from the access chain node.
  • the blockchain information to be synchronized refers to the blockchain data generated due to a transaction between the access chain and the public chain. That is, in practical applications, a node in the access chain initiates a cross-chain transaction to the public chain, or a node in the public chain initiates a cross-chain transaction to the access chain.
  • the node that is the initiator of the transaction will write the transaction information into a block, and broadcast the block in the blockchain network where it is located, thereby enabling other nodes in the blockchain network After receiving the block, the block is verified synchronously or asynchronously and stored to form a blockchain.
  • the blockchain information is first formed in the access chain, so the public chain can obtain the formed area from the access chain.
  • Blockchain information is used to complete the synchronization of blockchain information. It can also be broadcasted, verified, and stored from the public chain network according to cross-chain transactions to form a blockchain that contains the same transaction content. Because the access chain is also a blockchain network, the blockchain containing cross-chain transaction information is irreversible regardless of whether it is stored in the access chain or the public chain node, that is, it has an anti-repudiation effect. Therefore, in order to reduce the area Blockchain data occupies space. You can choose to synchronize the blockchain information to store the blockchain information in the public chain.
  • the access chain can obtain the blockchain information to be synchronized from the public chain, that is, in this application, the information storage method can be applied not only to nodes in the public chain network, but also to the access chain network. Node. It should be noted that, because the access chain can be a third-party blockchain network that accesses the public chain network, it may be difficult for nodes in the access chain network to obtain the blockchain information to be synchronized from the public chain. Therefore, in this application, the access chain can further pass the blockchain information in the public chain by means of a parallel chain bridge.
  • the submitting node is a node that plays a role of submitting blockchain information in a public chain network or an access chain network.
  • the submitting node can participate in the blockchain verification and storage process in the access chain network, and a complete blockchain is also formed in the submitting node. Further, this application can also determine the submitting node in the following ways:
  • the submitting node is a parallel chain node that bridges the public chain and the access chain.
  • the operation of sending blockchain information to the public chain can be completed by a parachain node.
  • the parachain is a block chain capable of bridging the public chain and the access chain.
  • the parachain can be formed by the access chain or some nodes on the public chain during the process of the access link entering the public chain.
  • the parachain nodes are configured to have all the functions of the access chain and store all the information on the access chain. In practical applications, when the public chain and the access chain establish a connection relationship, the parachain nodes play a bridging role.
  • the bridging function described in this application means that the parallel chain can establish data communication between the public chain and the access chain, and can pass transactions initiated by either party to the other party.
  • the bridging effect of the parallel chain can be directly used to ensure that the obtained blockchain data can be read directly.
  • the submitting node is designated in the public chain network, and other nodes than the maintainer node.
  • the second solution to obtain the blockchain data to be synchronized through the submitting nodes, you need to specify which nodes in the public chain network are to be the submitting nodes. In actual applications, you can specify a corresponding submitting node for an access chain. Correspond to multiple access chains for multiple submitting nodes to fully invoke the node's computing power.
  • the submitting node should select nodes other than the maintainer node in the public chain to avoid occupying the computing power of the public chain maintainer node. In practical applications, when the public chain and the access chain maintain a unified interface specification, the second scheme is most suitable for adoption.
  • the submitting node is a node designated in the access chain network.
  • all nodes participating in the generation of blockchain information in the access chain can be used as submitting nodes. That is, during the transaction process, the nodes in the access chain verify and store the transactions to form blockchain information.
  • the submitting node directly calls the blockchain information from its own storage space to send to the public chain network.
  • the blockchain information is synchronized to the public chain to avoid the problem of missing information.
  • the submitting node periodically obtains the blockchain information to be synchronized from the access chain node, which can be a public chain issue instruction to actively obtain from the access chain, or an access chain issue instruction like a public chain. Active send. Further, in order to determine when to synchronize the blockchain information, that is, under what conditions the submitting node obtains the blockchain information to be synchronized from the access chain node, as shown in FIG. 2, the submitting node periodically The step of obtaining the blockchain information to be synchronized from the access chain node further includes:
  • the access chain node records the increase in cross-chain transactions included in the blockchain information
  • the access chain node After the last acquisition of blockchain information is recorded by the access chain node, the amount of cross-chain transactions on the blockchain increases, and the increase in cross-chain transactions reaches a preset transaction. After the number is submitted, the currently stored blockchain information is sent to the submitting node. For example, in the blockchain information generated by the access chain, the cross-chain transaction volume included in the previous submission was 1360, and the preset transaction submission number was set to 60, then the access chain node analyzed the blockchain information by The transaction information in the real-time record the number of cross-chain transactions included in the current blockchain information. If the cross-chain transaction volume in the current blockchain information reaches 1420, it is determined that the increase in cross-chain transactions is 60, which has reached the preset The number of transaction submissions, the access chain node sends the current blockchain information to the submission node.
  • the increase of the cross-chain transaction recorded by the access chain node may be reported to the submitting node in real time, and then the submitting node judges whether the increase of the cross-chain transaction reaches the preset transaction submission amount.
  • the access chain node can also judge whether the transaction in the blockchain data is a cross-chain transaction, so as to record only the increase amount of the cross-chain transaction.
  • the step of the submitting node periodically acquiring the blockchain information to be synchronized from the access chain node further includes:
  • the access chain node can record the block serial number on the blockchain to determine the increased number of blocks compared to the previous acquisition of blockchain information. And, when the block increase amount reaches the preset block submission number, the blockchain information is sent to the submitting node. For example, when the access chain node synchronized the blockchain information to the public chain the previous time, the blockchain contains a total of 100 blocks, and the preset number of block submissions is 10. , The number of blocks included, when the number of blocks in the blockchain reaches 110, the block increase is determined to the preset block submission number, and then the blockchain information is sent to the submitting node. By judging the increase of the blocks in the blockchain data, the integrity of the data transmission can be guaranteed, and the access chain nodes do not need to extract the blockchain information again, saving the computing power of the access chain nodes.
  • the generation of a blockchain depends on the verification of transactions or blocks by multiple nodes.
  • multiple nodes in different network environment locations cause nodes to not receive broadcasted transaction information or blocks at the same time, thereby making the blockchain closer to the newly generated block, the higher the error rate. Therefore, in this embodiment, the block number uploaded by the blockchain information can be set a certain number in advance. For example, when the number of blocks is increased to 110, the blockchain information including the 109th block is sent to the submitting node to ensure the accuracy of the blockchain information.
  • the synchronization time of the blockchain information can also be set, that is, the step of the submitting node periodically obtaining the blockchain information to be synchronized from the access chain node includes: access chain node records The time from the last submission of the blockchain information; if the time reaches the preset submission time, the blockchain information is sent to the submitting node.
  • an access chain node sends blockchain information to a submitting node every 30 minutes.
  • S12 The submitting node initiates a synchronous transaction with blockchain information to the public chain to trigger the maintainer node in the public chain to execute the submitting contract.
  • the submitting node after receiving the blockchain information, the submitting node can initiate a synchronous transaction to the public chain.
  • the synchronous transaction is a transaction with blockchain information to be synchronized.
  • the synchronous transaction can be set as a specially agreed transaction, for example, initiated by a designated submission node, or with a specific Transaction identification information can trigger transactions that submit contracts.
  • the submitting node initiates a synchronous transaction to the public chain in the form of a cross-chain transaction on the blockchain network. That is, the submitting node generates block data based on the synchronous transaction and submits the block data to the zone in the blockchain network where the submitting node is located. Block data is broadcast. Since the submitting node in this application may be a node from a different network, if the submitting node is from a public chain network, the block data corresponding to the synchronous transaction is broadcast directly on the public chain. The corresponding submitting node and the synchronous transaction initiated to the public chain become the internal transaction of the public chain. Obviously, this method can use the synchronous transaction as the internal transaction of the public chain.
  • the broadcast, verification and storage of block data are the most convenient, but need Occupy at least one node in the public chain as the initiator of the synchronous transaction. Therefore, in order to save the computing power of nodes in the public chain, the submitting node should choose other nodes than the maintainer node in the public chain.
  • the access chain node that is the submitting node needs to initiate a cross-chain transaction to the public chain. That is, the block data generated by the transaction node must be broadcast once in the access chain network to form a block chain.
  • the nodes connected between the access chain and the public chain then pass the generated block data to the public chain network, so that it can be broadcast again in the public chain network, so that the maintainer nodes in the public chain can receive the area. Block data and perform subsequent synchronous transactions.
  • This method can save the computing power on the nodes in the public chain network to the greatest extent.
  • the public chain network also stores the blockchain generated by the synchronous exchange, it will take up a little more storage space on the public chain network. Further, in order to reduce the occupation of the storage space of the public chain network, when performing a synchronous transaction, broadcasting, verification and storage can be performed only in the access chain, and the blockchain generated by the synchronous transaction is not stored in the public chain.
  • the method of initiating a transaction is the same as the above two cases.
  • a method in which the submitting node is a public chain node is preferentially selected.
  • the method further includes:
  • the submission node generates submission notification information, and sends the submission notification information to other nodes to prevent other nodes from initiating a synchronous transaction with the public chain on the same blockchain information. That is, in this embodiment, after obtaining the blockchain information of the access chain node, the submitting node generates a submission notification message, and this submission information may be sent to the access chain and / or each submitting node in a broadcast form.
  • the submission information can be provided with prompt text corresponding to the synchronized blockchain information in actual applications, or directly with control instructions. In order to enable other nodes to judge the currently synchronized blockchain information, and prohibit the initiation of synchronization transactions to the public chain on the same blockchain information, to avoid the high concurrent processing of data caused by repeated synchronization.
  • the maintainer node in the public chain after receiving the synchronous transaction and refusing to receive the synchronous transaction containing the same blockchain information.
  • the maintainer node may refuse to receive a transaction initiated by submitting a contract within a period of time after receiving the synchronous transaction.
  • the manner in which the submitting node generates the submission notification information is preferred to avoid the highly concurrent operation of the data.
  • other nodes may not need to obtain or analyze the blockchain information, which can save the computing power of other nodes, and avoid frequent transactions between the access chain and the public chain; another
  • the public chain maintainer node since other nodes no longer initiate synchronous transactions after receiving the submission notification information, the public chain maintainer node does not need to analyze and judge most of the synchronous transactions, which further saves the maintainer node's computing power.
  • the maintainer node verifies the synchronous transaction by submitting the execution result of the contract, and extracts the data in the blockchain information to generate summary information; the summary information includes the address of the access chain node and the transaction data identifier.
  • the maintainer node After receiving the synchronous transaction, the maintainer node first verifies the synchronous transaction.
  • the content of the verification performed by the maintainer node may include two aspects.
  • the public chain maintainer node verifies the block data generated by the synchronous transaction.
  • the verification of the block data includes Decrypt the HASH value of the block data to obtain the corresponding transaction content information, that is, the synchronized blockchain information content;
  • the public chain maintainer node also includes verification of the validity of the synchronous transaction, that is, determining whether the synchronous transaction is from It depends on whether the legal access chain nodes and the synchronized blockchain information have been synchronized.
  • the maintainer node may verify the synchronous transaction according to the execution result of the submitted contract. That is, only synchronous transactions can trigger the execution of the submitted contract, thereby ensuring that the maintainer node can identify synchronous transactions in order to distinguish other types of transactions and perform synchronous operations in subsequent steps.
  • the maintainer node After the maintainer node verifies the synchronous transaction, it is necessary to extract the data related to the cross-chain transaction in the blockchain information.
  • the initiating chain address of cross-chain transactions that is, the access chain address that generates blockchain data; and the location data of cross-chain transactions reflected in the blockchain information.
  • the summary information can be used as a kind of record text, and the generation method of the summary information should also tend to be as simple as possible, such as generating record text data or replacing specific transaction information by numbers, etc. to avoid excessive Consumes the computing power of the maintainer nodes in the public chain.
  • the summary information can remove the corresponding blockchain data format, and it is not necessary to synchronize most of the data such as the corresponding hash value, encryption algorithm, block serial number before and after, specific transaction content information, and only retains the information that can be traced back to the original blockchain information. Descriptive information. Therefore, the volume of the generated summary information is much smaller than the data volume recorded in the original blockchain information, which can greatly save the storage space of the public chain network.
  • the maintainer node verifies the synchronous transaction by submitting the execution result of the contract, and extracts the data in the blockchain information.
  • the steps of generating summary information include:
  • the maintainer node extracts the blockchain information, and determines the attributes of the corresponding access chain according to the blockchain information;
  • S132 Obtain a summary format table, where the summary format table includes multiple access chain attributes and a summary extraction template corresponding to each access chain attribute;
  • S133 Extract data in the blockchain information according to the attributes of the access chain, and generate summary information according to the abstract extraction template.
  • the maintainer node may first extract the blockchain information from the received synchronous transaction, and determine the attributes of the access chain from the blockchain information.
  • the attributes of the access chain include not only the access chain network from which the access chain originates, that is, the address information of the access chain network, but also the properties of the access chain relative to the public chain network, such as whether the access chain is A sub-chain network with the same interface specifications as the public chain, or whether the access chain is a third-party blockchain network that accesses the public chain, or whether there is a parallel chain between the access chain and the public chain network.
  • the attributes of the access chain may also include the functions of the access chain, or specific application scenarios, such as different application scenarios such as finance, trading, banking, and trade.
  • the summary format table may include attributes of all access chains accessing the public chain network, and each type of access chain attribute corresponds to a summary extraction template. Or a part of the access chain attributes correspond to one digest extraction template, and another part of the digest attributes corresponds to another digest extraction template.
  • the corresponding summary extraction template includes extracting the value information of the access chain and the position information of the transaction in the blockchain data; while for the access chain it is The third-party blockchain network that requires a parallel chain to access the public chain.
  • the corresponding abstract extraction template includes the value information of the extracted access chain, the position information of the transaction in the blockchain data, and the corresponding parallel chain (or parallel (Chain node) address information, so that when back to the original blockchain information through the summary information, it can be bridged by parallel chains in order to obtain the corresponding original blockchain information smoothly.
  • the abstract extraction template may be stored in the memory of the maintainer node of the public chain in order to directly obtain the corresponding template and speed up the acquisition speed of the template.
  • the abstract extraction template can also be stored in the storage node in the public chain.
  • this embodiment may extract data in the blockchain information according to the attributes of the access chain, and generate abstract information according to the abstract extraction template. Therefore, different forms of summary information are generated according to different types of access chain attributes. It should be noted that the generated summary information can be directly stored in the public chain network as a line or a string of characters.
  • S14 The maintainer node broadcasts the summary information in the public chain network.
  • the maintainer node in the public chain After the maintainer node in the public chain generates the summary information, it can first store it in the maintainer node, and then broadcast the generated summary information, so that the nodes with storage function in the public chain network can receive the summary information.
  • the maintainer node may broadcast an execution instruction containing summary information in the public chain network, and control all storage nodes in the public chain network to receive the execution instruction.
  • the maintainer node may also first send the summary information to the neighboring storage node, so that the storage node receiving the summary information stores it first, and then continues to broadcast the summary information to the neighboring nodes that have stored the summary information.
  • the summary information is transmitted in order to complete the entire network broadcast. It should be noted that in actual applications, one cross-chain transaction can generate one summary information, and one summary information can correspond to multiple cross-chain transactions, thereby further saving the computing power of the maintainer node.
  • the step of the maintainer node broadcasting the summary information in the public chain network includes:
  • S141 The maintainer node receives summary information corresponding to multiple transactions
  • S142 The maintainer node creates block data according to the summary information, where the block data includes summary information corresponding to multiple transactions;
  • S143 The storage node in the public chain verifies the block data, and after the verification is passed, the block chain information including the summary information is generated.
  • the stored summary information can be written into the blockchain along with the blockchain generation process in the public chain network, thereby forming unchangeable public chain blockchain information. Therefore, in actual application, after broadcasting the summary information, the maintainer node receiving the summary information can create block data based on the summary information to form a blockchain after verification, and the storage node stores the corresponding blockchain. . In practical applications, through the distributed storage method in the public chain network, on the one hand, it can adapt to the corresponding storage node storage method, and on the other hand, it can form unchangeable blockchain information in the public chain network, so that some nodes cannot modify the summary Information to ensure the authenticity of synchronized information.
  • S15 Multiple storage nodes in the public chain store the received summary information in a distributed manner.
  • multiple storage nodes can synchronize and store summary information to avoid node changes, such as failure of some node devices, affecting data storage. At the same time, since multiple storage nodes need to store the digest information, the immutability of the digest information is further guaranteed.
  • the public chain maintainer node with sufficient storage space can assume the work content of the storage node. That is, some nodes in the public chain act as both public chain maintainer nodes and storage nodes, so that multiple public chain maintainer nodes can directly write the digest information into the blockchain after verifying the broadcast summary information.
  • this application also provides a blockchain-based information storage system based on a public chain, including a public chain and an access chain accessing a public chain network.
  • the public chain and access chain are P2P networks; some nodes in the public chain are configured as maintainer nodes and storage nodes; and some nodes in the public chain and / or access chain are configured as submit nodes ;
  • the submitting node is further configured: the submitting node periodically obtains the blockchain information to be synchronized from the access chain node; the submitting node initiates a synchronization transaction with the blockchain information to the public chain to trigger a maintainer in the public chain The node executes the submission contract;
  • the maintainer node is further configured to execute a submitted contract, verify the synchronous transaction by submitting the execution result of the contract, extract the data in the blockchain information, and generate summary information; the summary information includes the address of the access chain node and the transaction data Identifier; and, broadcasting summary information within the public chain network;
  • the storage node is further configured to: store the received digest information in a distributed manner.
  • the storage method first periodically obtains the blockchain information to be synchronized from the access chain node by the submitting node, and then the submitting node initiates a zone to the public chain.
  • the maintainer node broadcasts the summary information in the public chain network to enable multiple storage nodes in the public chain to store the summary information.
  • the maintainer node extracts the summary information from the blockchain information to be synchronized, and stores the summary information in the storage node of the public chain, reducing the volume of synchronized data, and sharing the data processing load of the public chain nodes, thereby It solves the problems that the traditional blockchain information storage method occupies a large amount of storage space during cross-chain transactions and the storage efficiency is low.
  • a method for storing blockchain information based on a public chain is also provided. As shown in FIG. 7, the method includes the following steps:
  • the submitting node extracts the blockchain information to generate summary information, where the summary information includes the access chain address of the source of the blockchain information and the transaction data identifier;
  • S23 The submitting node initiates a synchronous transaction with summary information to the public chain to trigger the maintainer node in the public chain to execute the submission contract;
  • S24 The maintainer node in the public chain verifies the synchronous transaction by submitting the execution result of the contract, and obtains the summary information
  • S25 The maintainer node broadcasts the summary information in the public chain network
  • the difference between this embodiment and the foregoing embodiment is that, in this embodiment, extracting the summary information from the blockchain information to be synchronized is completed by the submitting node. That is, after the submitting node periodically obtains the blockchain information from the access chain node, the submitting node performs data extraction on each obtained blockchain information, thereby generating summary information.
  • the maintainer node in the public chain only receives synchronous transactions and broadcasts the summary information in the public chain network by executing the submission contract.
  • the submitting node may have a corresponding abstract extraction template built-in, so that when the submitting node extracts data, it may extract data and generate summary information according to the abstract extraction template.
  • the submitting node extracts the data in the blockchain information and generates summary information.
  • the workload of the maintainer node of the public chain can be reduced and the data processing of the maintainer node in the public chain the amount. It enables the maintainer node in the public chain to execute only the submitted contract and broadcast the summary information, which improves the storage efficiency of the summary information.
  • the present application also provides a public chain-based blockchain information storage system, including a public chain and an access chain accessing a public chain network.
  • the public chain and access chain are P2P networks; some nodes in the public chain are configured as maintainer nodes and storage nodes; and some nodes in the public chain and / or access chain are configured as submit nodes ;
  • the submitting node is further configured to: periodically obtain the blockchain information from the access chain node; extract the blockchain information to generate summary information, and the summary information includes the access chain address of the blockchain information source, and transaction data Identifier; and initiate a synchronous transaction with summary information to the public chain to trigger the maintainer node in the public chain to execute the submission contract;
  • the maintainer node is further configured to: execute the submitted contract, verify the synchronous transaction through the execution result of the submitted contract, and obtain summary information; and broadcast the summary information in the public chain network
  • the storage node is further configured to: store the received digest information in a distributed manner.
  • the information storage method provided in this embodiment first obtains blockchain information from an access chain node periodically by a submitting node.
  • the submitting node then extracts the blockchain information to generate summary information, and initiates a synchronous transaction with the summary information to the public chain to trigger the maintainer node in the public chain to perform the submission contract.
  • the maintainer node verifies the synchronous transaction by submitting the execution result of the contract, and obtains summary information.
  • the summary information is then broadcast in the public chain network so that the storage nodes in the public chain store the received summary information in a distributed manner.
  • the method extracts the summary information from the blockchain information to be synchronized by the submitting node, and sends the summary information to the maintainer node in the form of a synchronous transaction to be stored in the storage node, which can reduce the volume of synchronized data and further share the public
  • the data processing load of the chain nodes thereby solving the problems of the traditional blockchain information storage method occupying a large amount of storage space during cross-chain transactions and low storage efficiency.

Landscapes

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

Abstract

La présente invention concerne un procédé et un système de stockage d'informations de chaîne de blocs sur la base d'une chaîne publique. Dans des applications pratiques, le procédé comprend les étapes suivantes : un nœud de soumission acquiert périodiquement des informations de chaîne de blocs à synchroniser à partir d'un nœud de chaîne d'accès et déclenche ensuite une transaction de synchronisation transportant les informations de chaîne de blocs vers une chaîne publique, de façon à déclencher un nœud de maintien dans la chaîne publique pour exécuter un contrat de soumission et générer des informations récapitulatives ; et le nœud de maintien diffuse les informations récapitulatives dans un réseau de chaîne publique de façon à permettre à de multiples nœuds de stockage dans la chaîne publique de stocker les informations récapitulatives. Selon le présent procédé, des informations récapitulatives peuvent être extraites des informations de chaîne de blocs à synchroniser au moyen du nœud de soumission et/ ou du nœud de maintien et les informations récapitulatives sont stockées dans un nœud de stockage de la chaîne publique, ce qui réduit le volume de données de synchronisation et partage la charge de traitement de données de nœuds de chaîne publique, ce qui permet de résoudre les problèmes des procédés de stockage d'informations de chaîne de blocs classiques où une grande quantité d'espace de stockage est occupé pendant des transactions entre des chaînes et la faible efficacité de stockage.
PCT/CN2019/101050 2018-08-28 2019-08-16 Procédé et système de stockage d'informations de chaîne de blocs sur la base d'une chaîne publique WO2020042932A1 (fr)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201810986825.3 2018-08-28
CN201810986825 2018-08-28
CN201811496920.1 2018-12-07
CN201811496920.1A CN110866825B (zh) 2018-08-28 2018-12-07 基于公链的区块链信息存储方法及***

Publications (1)

Publication Number Publication Date
WO2020042932A1 true WO2020042932A1 (fr) 2020-03-05

Family

ID=69644986

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/101050 WO2020042932A1 (fr) 2018-08-28 2019-08-16 Procédé et système de stockage d'informations de chaîne de blocs sur la base d'une chaîne publique

Country Status (1)

Country Link
WO (1) WO2020042932A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114531247A (zh) * 2022-04-22 2022-05-24 北京中宇万通科技股份有限公司 数据共享方法、装置、设备、存储介质及程序产品

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106372533A (zh) * 2016-09-14 2017-02-01 ***股份有限公司 基于区块链技术的内容存储方法
CN107332826A (zh) * 2017-06-09 2017-11-07 中国联合网络通信集团有限公司 区块链代理节点的通信方法及装置
US20170366357A1 (en) * 2016-06-16 2017-12-21 The Bank Of New York Mellon Distributed, centrally authored block chain network
CN108347486A (zh) * 2018-02-12 2018-07-31 众安信息技术服务有限公司 基于区块链的跨链通信方法、装置以及***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170366357A1 (en) * 2016-06-16 2017-12-21 The Bank Of New York Mellon Distributed, centrally authored block chain network
CN106372533A (zh) * 2016-09-14 2017-02-01 ***股份有限公司 基于区块链技术的内容存储方法
CN107332826A (zh) * 2017-06-09 2017-11-07 中国联合网络通信集团有限公司 区块链代理节点的通信方法及装置
CN108347486A (zh) * 2018-02-12 2018-07-31 众安信息技术服务有限公司 基于区块链的跨链通信方法、装置以及***

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 ON TECHNOLOGY AND NETWORK SECURITY, vol. 37, no. 496, 10 August 2018 (2018-08-10) *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114531247A (zh) * 2022-04-22 2022-05-24 北京中宇万通科技股份有限公司 数据共享方法、装置、设备、存储介质及程序产品

Similar Documents

Publication Publication Date Title
CN110866825B (zh) 基于公链的区块链信息存储方法及***
WO2020258848A1 (fr) Procédé et appareil de transmission de ressources entre chaînes
CN111144883B (zh) 一种区块链网络的处理性能分析方法及装置
CN109639521B (zh) 区块链性能的测试方法、装置、设备及存储介质
US11444783B2 (en) Methods and apparatuses for processing transactions based on blockchain integrated station
CN111612614A (zh) 一种基于公链的子链业务***
CN110990408A (zh) 基于区块链的业务信息协同方法、业务***及联盟链
US20230315891A1 (en) Transaction data processing method and apparatus, computer device and storage medium
CN109447603B (zh) 一种基于区块链的海洋数据资源共享方法
CN110839056B (zh) 基于区块链的数据处理方法、装置及节点网络
CN111241589A (zh) 一种数据库***、节点和方法
WO2020108289A1 (fr) Système de base de données, nœud et procédé
US11783339B2 (en) Methods and apparatuses for transferring transaction based on blockchain integrated station
US20210344753A1 (en) Methods and apparatuses for synchronizing data based on blockchain integrated station
WO2023045617A1 (fr) Procédé et appareil de traitement de données de transaction, dispositif et support
CN111400112A (zh) 分布式集群的存储***的写入方法、装置及可读存储介质
CN111241590A (zh) 一种数据库***、节点和方法
CN111711526A (zh) 一种区块链节点的共识方法及***
US20230370285A1 (en) Block-chain-based data processing method, computer device, computer-readable storage medium
JP2023508210A (ja) ブロックチェーンに基づくデータ処理方法、装置、デバイス及びコンピュータプログラム
WO2020042932A1 (fr) Procédé et système de stockage d'informations de chaîne de blocs sur la base d'une chaîne publique
CN113111125B (zh) 一种基于区块链的业务存证方法
US20230325833A1 (en) Blockchain-based data processing method and apparatus, device, storage medium, and program product
CN110708383B (zh) 区块链节点的网络连接方法及相关设备
WO2020258849A1 (fr) Procédé et appareil pour envoyer un message authentifiable en chaîne croisée

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: 19856308

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19856308

Country of ref document: EP

Kind code of ref document: A1