WO2020042932A1 - Public chain-based blockchain information storage method and system - Google Patents

Public chain-based blockchain information storage method and system 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
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 CN201811496920.1A external-priority patent/CN110866825B/en
Application filed by 白杰 filed Critical 白杰
Publication of WO2020042932A1 publication Critical patent/WO2020042932A1/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
    • 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.

Abstract

Provided by the present application are a public chain-based blockchain information storage method and system. In practical applications, the method comprises: a submission node periodically acquires blockchain information to be synchronized from an access chain node and then initiates a synchronization transaction carrying the blockchain information to a public chain, so as to trigger a maintainer node in the public chain to execute a submission contract and generate summary information; and the maintainer node broadcasts the summary information in a public chain network so as to enable multiple storage nodes in the public chain to store the summary information. In the present method, summary information may be extracted from the blockchain information to be synchronized by means of the submission node and/or the maintainer node, and the summary information is stored in a storage node of the public chain, which reduces the volume of synchronization data and shares the data processing load of public chain nodes, thereby solving the problems of traditional blockchain information storage methods of a large amount of storage space being occupied during cross-chain transactions and the storage efficiency being low.

Description

基于公链的区块链信息存储方法及系统Method and system for storing blockchain information based on public chain
本申请要求在2018年8月28日提交中国专利局、申请号为201810986825.3、发明名称为“区块链标准应用模型及其应用方法”,以及,在2018年12月7日提交中国专利局、申请号为201811496920.1、发明名称为“基于公链的区块链信息存储方法及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application requires the submission of the China Patent Office on August 28, 2018, application number 201810986825.3, and the invention name as "Blockchain Standard Application Model and Application Method", and on December 7, 2018, the China Patent Office, The priority of a Chinese patent application with an application number of 201811496920.1 and an invention name of "public chain-based blockchain information storage method and system" is incorporated herein by reference in its entirety.
技术领域Technical field
本申请涉及网络交易技术领域,尤其涉及一种基于公链的区块链信息存储方法及系统。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.
背景技术Background technique
区块链技术是一种去中心化的系统思想,能通过公众共识的方式,创建一个相对客观的抗抵赖数字环境。区块链技术可以保证网络信息一经发布即不可更改,例如,区块链网络中发生一笔交易,区块链网络中的节点会在生成的区块中记载该笔交易的内容,并将区块数据进行全网广播,网络中的其他节点以同步或异步的方式存储该区块数据,形成不可更改的区块链。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.
其中,所述交易具有广义性,不是指传统意义上的“商品买卖”、“物品交换”,而是指区块链网络上的某种或某个数据操作内容或操作结果,例如,在网络上某个区块链节点A发起一个某型号通信设备性能的查询请求a,所述查询请求a对于承担查询服务的区块链节点B来说就是一笔交易。同理。节点B将查询得到的该型号通信设备的性能表b发送给节点A也是一笔交易。信息A、a和信息B、b作为交易信息会被写入区块链的数据区块中。Among them, 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 On a certain blockchain node A, 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. Similarly. It is also a transaction that 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.
区块链交易一般发生在同一个区块链网络范围内的两个节点之间。但随着区块链技术的应用,有时交易需要跨越两个或两个以上区块链网络,形成跨链交易。例如,网络N1中的节点A,向网络N2中的节点B发起的交易。由于网络N1和网络N2都是区块链网络,因此交易会产生两个类型的区块数据,分别存储在网络N1和网络N2中。为了获得完整的记账信息,交易的双方要同步区块链信息,即网络N1要获取网络N2中存储的区块链信息,并存储在网络N1的节点中。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.
可见,一次跨链交易需要在网络N1存储两个区块链信息。如果网络N1上接入了多个区块链网络,为了存储多个区块链网络与网络N1发生的跨链交易,会占用网络N1中的大量存储空间。并且,由于区块链网络采用分布式存储方式,对于网络N1同步的区块链信息还需要在网络N1中进行广播,如果接入的区块链网络在一个时间段内均向网络N1发起跨链交易,会造成网络N1出现多节点大规模高并发运算,占用网络资源,进而降低节点对区块数据的验证和存储效率。It can be seen that 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.
发明内容Summary of the Invention
本申请提供了一种基于公链的区块链信息存储方法及系统,以解决传统区块链信息存储方法在跨链交易时大量占用存储空间,以及存储效率低的问题。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.
第一方面,本申请提供一种基于公链的区块链信息存储方法,包括:In a first aspect, 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.
可选的,所述方法中,提交节点是桥接公链与接入链的平行链节点;Optionally, in the method, the submitting node is a parallel chain node that bridges the public chain and the access chain;
或者,所述提交节点是在公链网络中指定的,维护者节点以外的其他节点;Alternatively, the submitting node is designated in the public chain network and other nodes than the maintainer node;
或者,所述提交节点是在接入链网络中指定的节点。Alternatively, the submitting node is a node designated in the access chain network.
可选的,提交节点周期性从接入链节点获取待同步的区块链信息的步骤包括:Optionally, 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;
如果跨链交易增加量达到预设交易提交数量,向提交节点发送区块链信息。If the increase in cross-chain transactions reaches the preset number of transaction submissions, send blockchain information to the submitting node.
可选的,提交节点周期性从接入链节点获取待同步的区块链信息的步骤包括:Optionally, 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;
如果区块增加量达到预设区块提交数量,向提交节点发送区块链信息。If the block increase amount reaches the preset block submission number, the blockchain information is sent to the submitting node.
可选的,提交节点向公链发起带有区块链信息的同步交易,触发公链中维护者节点执行提交合约的步骤后,所述方法还包括:Optionally, after the submitting node initiates a synchronous transaction with blockchain information to the public chain and triggers the maintainer node in the public chain to perform the steps of submitting the contract, 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;
或者,维护者节点在接收到同步交易后,拒绝接收包含同样区块链信息的同步交易。Or, after receiving the synchronous transaction, the maintainer node refuses to receive the synchronous transaction containing the same blockchain information.
可选的,护者节点通过提交合约的执行结果验证同步交易,以及提取区块链信息中的数据,生成摘要信息的步骤包括:Optionally, 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;
获取摘要格式表,所述摘要格式表中包括多种接入链属性以及与每种接入链属性对应的摘要提取模板;Obtaining a summary format table, which includes multiple access chain attributes and a summary extraction template corresponding to each type of access chain attribute;
根据接入链属性提取所述区块链信息中的数据,按照摘要提取模板生成摘要信息。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.
可选的,维护者节点在公链网络内广播摘要信息的步骤包括:Optionally, 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.
第二方面,本申请还提供一种基于公链的区块链信息存储方法,包括:In a second aspect, 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.
第三方面,本申请还提供一种基于公链的区块链信息存储系统,包括公链以及接入公链网络的接入链,所述公链和接入链为P2P网络;所述公链中的部分节点配置为维护者节点和存储节点;所述公链和/或接入链中的部分节点被配置为提交节点;In a third aspect, 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.
第四方面,本申请还一种基于公链的区块链信息存储系统,包括公链以及接入公链网络的接入链,所述公链和接入链为P2P网络;所述公链中的部分节点配置为维护者节点和存储节点;所述公链和/或接入链中的部分节点被配置为提交节点;In a fourth aspect, 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.
由以上技术方案可知,本申请提供的一种基于公链的区块链信息存储方法及系统,所述方法在实际应用中,先由提交节点周期性从接入链节点获取待同步的区块链信息,再由提交节点向公链发起带有区块链信息的同步交易,以触发公链中维护者节点执行提交合约,生成摘要信息。维护者节点在公链网络内广播摘要信息以使公链中多个存储节点存储摘要信息。所述方法中,可以通过提交节点和/或维护者节点从待同步的区块链信息中提取摘要信息,并将摘要信息存储在公链的存储节点中,减少同步数据体积,分担公链节点的数据处理负荷,从而解决传统区块链信息存储方法在跨链交易时大量占用存储空间,以及存储效率低的问题。As can be known from the above technical solutions, a public chain-based blockchain information storage method and system provided by the present application. In practical applications, 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. In the method, 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.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to explain the technical solution of the present application more clearly, the drawings needed to be used in the embodiments will be briefly introduced below. Obviously, for those skilled in the art, without any creative effort, Other drawings can be obtained from these drawings.
图1为本申请一种基于公链的区块链信息存储方法流程示意图;FIG. 1 is a schematic flowchart of a method for storing blockchain information based on a public chain in this application;
图2为本申请一种接入链节点发送区块链信息的流程示意图;FIG. 2 is a schematic flowchart of sending blockchain information by an access chain node in this application;
图3为本申请另一种接入链节点发送区块链信息的流程示意图;FIG. 3 is a schematic flowchart of sending blockchain information by another access chain node in this application;
图4为本申请根据摘要格式表提取摘要信息的流程示意图;FIG. 4 is a schematic flowchart of extracting abstract information according to an abstract format table;
图5为本申请维护者节点广播摘要信息的流程示意图;5 is a schematic flowchart of broadcasting summary information by a maintainer node of the present application;
图6为本申请一种基于公链的区块链信息存储系统的结构示意图;6 is a schematic structural diagram of a public chain-based blockchain information storage system;
图7为本申请另一种基于公链的区块链信息存储方法流程示意图。FIG. 7 is a schematic flowchart of another blockchain information storage method based on a public chain of the present application.
具体实施方式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 examples do not represent all implementations consistent with this application. These are merely examples of systems and methods consistent with some aspects of the application as detailed in the claims.
需要说明的是,在本申请提供的技术方案中,区块链网络是指具有去中心化应用架构的点对点(P2P)网络,所述区块链网络能够进行分布式存储、公共共识、数字加密、交易记账以及验证。即涵盖了分布式技术、密码学、P2P网络架构以及各种可能被应用的共识算法的交易平台。区块链或区块链信息是指在区块链网络中发生交易时,根据交易信息生成的记账信息,即多笔具体的交易组成一个区块,多个区块形成一条区块链。区块链网络中,包括相互建立点对点网络连接的节点,每一个节点都配置有相应的共识机制,如智能合约,并且具有足够的运算能力,以进行交易验证和记账程序。节点上还具有符合某种统一标准的接口规范,以实现通过接口规范接入更多的节点或者其他类型的区块链网络。It should be noted that, in the technical solution provided in this 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.
本申请中,公链是布置在全网的基础网络平台,由多个公链节点组成,其每个节点带有统一的接口规范。通过节点上的接口,可以接入多个区块链网络,即接入链。如基于公链接口规范搭建的行业链、联盟链以及私有链,本申请统称为子链;以及如现有的区块链网络比特币、以太坊等,或者,某些行业开发的行业链和联盟链,甚至是为了达到某种服务需求而搭建的私有链。这些现有区块链、行业链、联盟链以及私有链,一般不能直接相互交易甚至不能与公链网络之间相互交易,因此,本申请中可通过平行链来连接公链与其他网络。In this application, 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. For example, industry chains, alliance chains, and private chains built based on public link specifications, 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.
本申请提供的技术方案中,接入链和公链都包含多个节点。对于接入链,其节点统称为接入链节点。对于公链,按照其所具有的功能划分为:接入节点,即连接公链和接入链(或平行链)的节点;维护者节点,即参与公链中交易广播和智能合约执行,以进行数据处理和区块链生成的节点;存储节点,即公链中具有存储空间的节点。本申请在实际应用中,一个节点设备可以同时作为多个节点角色。本申请中,提交节点是指将待同步区块链信息发送给公链的节点。In the technical solution provided in this application, both the access chain and the public chain include multiple nodes. For an access chain, its nodes are collectively referred to as an access chain node. For 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. In an actual application of this application, a node device can simultaneously play multiple node roles. In this application, 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. In practical applications, 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). For example, the transaction initiation chain needs to query the device performance in a certain network device by paying a type of Zhengtong. For this kind of transaction, 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. Therefore, 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.
由以上内容可知,为了获得完整的不可更改账本数据,公链除了存储自己的区块链信息外,还可以用于存储相应跨链交易的摘要信息,即交易摘要。通过格式化的交易数据记录跨链交易的相关内容。所存储的摘要信息可以仅记载部分能够回溯到具体交易区块链信息的内容。例如,由于跨链交易也在参与交易的接入链中进行了存储,因此,要回溯到包含具体交易信息的区块链信息,摘要信息中应至少包含接入链的地址,以便确认接入链。还应至少包括描述交易信息的标识符,如,交易信息在第几个区块中,交易信息在区块中的位置等。From the above, in order to obtain complete unalterable ledger data, in addition to storing its own blockchain information, 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. For example, because cross-chain transactions are also stored in the access chain participating in the transaction, to trace back to the blockchain information containing specific transaction 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.
在本申请提供的技术方案中,还可以进一步将摘要信息中的交易标识符转化为占用存储量更小的字符串形式,并且通过相应具体的数值代表指代的交易信息的含义。例如,存储摘要信息的一种可行的方案是:摘要信息格式为:H+A+S+I+T。其中,H代表头部,用于表明该摘要的类型,可以是2位字符,即255种可能性;A用于标识接入链信息的索引值,因为接入链在公链中都会有对应的投票和登记记录,所以无需记录详细信息,只需要一个索引值即可;S:区块序列号,不固定长度;I代表交易序号;T代表尾部,可以通过一个字符表明摘要结束。上述摘要信息格式中,A,S,I可使用TLV的方式进行存储,即:TAG+LENGTH+VALUE的方式,既有足够的灵活性,也有相应的扩展性。因此,相对于整个区块来说,其需要占用的存储空间大大减小,从而避免大量占用公链的存储空间。In the technical solution provided in the present application, 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. For example, a feasible solution for storing the summary information is: the format of the summary information is: H + A + S + I + T. Among them, 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. In the above summary information format, 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.
另外,为了减少对公链节点上存储空间的占用,公链在记录某些信息时,还可以通过特定的压缩算法记录第三方区块链信息。示例地,在公链中形成和存储的区块数据可以包括以下内容:区块标识(如序号、时间戳、区块hash值以及前区块hash值)、区块归属(即区块生成者)、区块其他信息(如随机值、难度值以及附加信息等)、区块权重、信息摘要(如交易树、状态树、收据树以及数据树等)、交易费用、奖励、大小等。In addition, in order to reduce the occupation of storage space on public chain nodes, the public chain can also record third-party blockchain information through a specific compression algorithm when recording certain information. By way of example, 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.
在本申请一个可行的实施例中,如图1所示,本申请提供的一种基于公链的区块链信息存储方法,包括以下步骤:In a feasible embodiment of the present application, as shown in FIG. 1, a public chain-based blockchain information storage method provided by the present application includes the following steps:
S11:提交节点周期性从接入链节点获取待同步的区块链信息。S11: The submitting node periodically obtains the blockchain information to be synchronized from the access chain node.
本申请提供的技术方案中,待同步的区块链信息是指由于接入链与公链之间具有交易而产生的区块链数据。即,在实际应用中,接入链中的节点会向公链发起一个跨链交易,或者公链中的节点向接入链发起一个跨链交易。在发起跨链交易时,作为交易发起方的节点会将交易信息写入一个区块,并将该区块在所处的区块链网络中进行广播,进而使区块链网络中的其他节点在接收到该区块后,同步或异步地对区块进行验证,存储以形成区块链。In the technical solution provided in this application, 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. When initiating a cross-chain transaction, 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.
可见,在本申请提供的技术方案中,如果是接入链节点向公链发起跨链交易,则先在接入链中形成区块链信息,因此公链可以从接入链获取形成的区块链信息,以完成区块链信息的同步,也可以根据跨链交易再从公链网络中进行广播、验证和存储,以形成包含同样交易内容的区块链。由于接入链也是区块链网络,因此包含跨链交易信息的区块链无论存储在接入链还是公链节点中,其都具有不可更改性,即具有抗抵赖效果,因此,为了减少区块链数据占用空间,可以选择同步区块链信息的方式在公链中存储区块链信息。It can be seen that in the technical solution provided in this application, if the access chain node initiates a cross-chain transaction to the public chain, 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.
而如果跨链交易是由公链向接入链发起的,则区块链信息在公链中生成。同样,接入 链可以从公链中获得待同步的区块链信息,即在本申请中,所述信息存储方法不仅可以应用于公链网络中的节点,而且可以应用于接入链网络中的节点。需要说明的是,由于接入链可以是接入公链网络的第三方区块链网络,因此接入链网络中的节点可能难以从公链获取待同步的区块链信息。因此,在本申请中,可以进一步通过平行链桥接的方式使接入链能够通过公链中的区块链信息。If cross-chain transactions are initiated by the public chain to the access chain, the blockchain information is generated in the public chain. Similarly, 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.
在本申请提供的技术方案中,所述提交节点是公链网络或接入链网络中作为区块链信息提交角色的节点。在实际应用中,提交节点可以参与接入链网络中的区块链验证和存储过程,并且在提交节点中也形成一个完整的区块链。进一步地,本申请还可以通过以下方式确定提交节点:In the technical solution provided in this application, the submitting node is a node that plays a role of submitting blockchain information in a public chain network or an access chain network. In practical applications, 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:
第一种方案中,提交节点是桥接公链与接入链的平行链节点。本实施例中,向公链发送区块链信息的操作可以由平行链节点来完成。所述平行链是一种能够将公链和接入链进行桥接的区块链,平行链可以在接入链接入公链的过程中,由接入链或公链上的部分节点构成。平行链节点被配置具有接入链的全部功能,并存储接入链上的全部信息。在实际应用中,当公链与接入链建立连接关系后,平行链节点即起到桥接的作用。本申请中所述桥接作用是指,平行链能够在公链和接入链之间建立数据通信,以及能够将任一方发起的交易传递给对方。通过平行链中的节点作为提交节点,可以直接利用平行链的桥接作用,保证获取的区块链数据可以直接被读取。In the first scheme, the submitting node is a parallel chain node that bridges the public chain and the access chain. In this embodiment, 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. By using the nodes in the parallel chain as submitting nodes, the bridging effect of the parallel chain can be directly used to ensure that the obtained blockchain data can be read directly.
第二种方案中,所述提交节点是在公链网络中指定的,维护者节点以外的其他节点。对于第二种方案,通过提交节点获取待同步区块链数据,需要先在公链网络中指定哪些节点作为提交节点,实际应用中,可以对一个接入链指定一个对应的提交节点,也可以为多个提交节点对应多个接入链,以充分调用节点的运算能力。本实施例中,提交节点应选取公链中维护者节点以外的其他节点,以避免占用公链维护者节点的运算能力。在实际应用时,在公链与接入链保持统一的接口规范时,最适宜采用所述第二种方案。In the second scheme, the submitting node is designated in the public chain network, and other nodes than the maintainer node. For 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. In this embodiment, 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.
第三种方案中,所述提交节点是在接入链网络中指定的节点。对于第三种方案,接入链中所有参与区块链信息生成的节点,都可以作为提交节点。即接入链中节点在进行交易过程中,交易进行验证、存储,形成区块链信息。当达到提交条件时,提交节点直接从自己的存储空间中调用区块链信息,以发送给公链网络。将接入链节点作为提交节点,能够在接入链中生成了包含跨链交易的区块链信息后,即向公链同步区块链信息,避免出现信息遗漏的问题。In a third solution, the submitting node is a node designated in the access chain network. For the third scheme, 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. When the submission conditions are met, the submitting node directly calls the blockchain information from its own storage space to send to the public chain network. Using the access chain node as the submitting node, after the blockchain information including cross-chain transactions is generated in the access chain, the blockchain information is synchronized to the public chain to avoid the problem of missing information.
本申请提供的技术方案中,提交节点周期性从接入链节点获取待同步的区块链信息可以是公链发布指令主动从接入链中获取,也可以是接入链发布指令像公链主动发送。进一步地,为了确定何时进行区块链信息的同步操作,即提交节点在怎样的条件下从接入链节点获取待同步的区块链信息,如图2所示,所述提交节点周期性从接入链节点获取待同步的区块链信息的步骤还包括:In the technical solution provided in this application, 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:
S111:接入链节点记录区块链信息中包含的跨链交易增加量;S111: The access chain node records the increase in cross-chain transactions included in the blockchain information;
S112:如果跨链交易增加量达到预设交易提交数量,向提交节点发送区块链信息。S112: If the increase in cross-chain transactions reaches the preset transaction submission number, send blockchain information to the submitting node.
即在本实施例中,可通过接入链节点记录在上一次获取区块链信息后,所述区块链上的跨链交易增加量,并在跨链交易的增加量达到预设的交易提交数量后,向提交节点发送当前所存储的区块链信息。例如,接入链生成的区块链信息中,前一次提交时包含的跨链 交易量为1360个,并且设定预设交易提交数量为60个,则接入链节点通过分析区块链信息中的交易信息,实时记录当前区块链信息中包含的跨链交易数量,如果当前区块链信息中的跨链交易量达到1420时,确定跨链交易增加量为60个,达到了预设交易提交数量,则接入链节点向提交节点发送当前区块链信息。That is, in this embodiment, 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.
本实施例中,还可以通过接入链节点将其记录的跨链交易的增加量实时上报给提交节点,再由提交节点判断跨链交易增加量是否达到了预设交易提交数量。需要说明的是,由于在接入链网络中,只要发生交易即可生成相应的区块链,因此接入链节点中存储的区块链信息中,会同时包含接入链以内的交易和跨链交易。而对于公链而言,接入链以内的交易由于没有公链参与,因此不需要对这部分区块链信息进行同步。使得在本实施例中,接入链节点还可以对区块链数据中的交易是否为跨链交易进行判断,从而只记录跨链交易的增加量。In this embodiment, 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. It should be noted that, in the access chain network, as long as a transaction occurs, the corresponding blockchain can be generated, so the blockchain information stored in the access chain node will include both transactions and cross-chain transactions within the access chain. Chain transaction. For the public chain, since the transactions within the access chain do not involve the public chain, there is no need to synchronize this part of the blockchain information. Therefore, in this embodiment, 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.
在本申请的另一个实施例中,如图3所示,提交节点周期性从接入链节点获取待同步的区块链信息的步骤还包括:In another embodiment of the present application, as shown in FIG. 3, the step of the submitting node periodically acquiring the blockchain information to be synchronized from the access chain node further includes:
S113:接入链节点记录区块链信息中区块增加量;S113: the access chain node records the block increase in the blockchain information;
S114:如果区块增加量达到预设区块提交数量,向提交节点发送区块链信息。S114: If the block increase amount reaches the preset block submission number, send the blockchain information to the submitting node.
在实际应用中,接入链节点可以对区块链上的区块序号进行记录,从而确定相对于前一次获取区块链信息,所增加的区块数量。并且,当区块增加量达到预设区块提交数量以后,向提交节点发送区块链信息。例如,接入链节点在前一次向公链同步区块链信息时,区块链中共包含100个区块,预设区块提交数量为10个,则接入链节点记录区块链信息中,包含的区块数量,当区块链中的区块数达到110个时,确定区块增加量到预设区块提交数量,则向提交节点发送区块链信息。通过对区块链数据中的区块的增加量进行判断,可以保证数据传输的完整性,并且无需接入链节点对区块链信息进行再次提取,节省接入链节点的运算能力。In practical applications, 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.
需要说明的是,由于在实际应用中,区块链的生成依赖于多个节点对交易或区块的验证。而多个节点在不同的网络环境位置中,造成节点不能同时接受到广播的交易信息或区块,进而使得区块链上,越接近刚刚生成的区块,错误率越高。因此,在本实施例中,可以设定区块链信息上传的区块序号提前一定数量。例如,当区块数量增加到110个时,向提交节点发送包含到第109个区块的区块链信息,以保证区块链信息的准确性。It should be noted that, in practical applications, the generation of a blockchain depends on the verification of transactions or blocks by multiple nodes. However, 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.
另外,在本申请提供的技术方案中,还可以设置区块链信息的同步时间,即,提交节点周期性从接入链节点获取待同步的区块链信息的步骤包括:接入链节点记录距离上一次区块链信息提交的时间;如果时间达到预设提交时间,向提交节点发送区块链信息。例如,接入链节点每隔30min向提交节点发送一次区块链信息。这种通过设置同步时间周期性获取区块链信息的方式程序设置最简单,也最容易部署到不同的接入链中。In addition, in the technical solution provided in this application, 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. For example, an access chain node sends blockchain information to a submitting node every 30 minutes. This method of periodically obtaining the blockchain information by setting the synchronization time is the simplest program setting and the easiest to deploy to different access chains.
S12:提交节点向公链发起带有区块链信息的同步交易,以触发公链中维护者节点执行提交合约。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.
本申请提供的技术方案中,提交节点在接收到区块链信息后,可以向公链发起同步交易。其中,同步交易是带有待同步区块链信息的交易,为了与其他交易进行区块区别,可以将同步交易设置为一个特殊约定的交易,例如,由指定的提交节点发起,或者带有特定的交易标识信息,能够触发提交合约的交易。In the technical solution provided in this application, after receiving the blockchain information, the submitting node can initiate a synchronous transaction to the public chain. Among them, the synchronous transaction is a transaction with blockchain information to be synchronized. In order to distinguish it from other transactions, 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.
实际应用中,提交节点向公链发起同步交易也采用区块链网络跨链交易的形式,即提交节点根据同步交易生成区块数据,并在提交节点所处的区块链网络中对该区块数据进行广播。由于本申请中提交节点可以是来源于不同网络中的节点,因此,如果提交节点来源于公链网络,则直接在公链中广播同步交易对应的区块数据。相应的提交节点与向公链发起的同步交易即成为公链内部的交易,显然,这种方式可将同步交易作为公链内部的交易,区块数据的广播、验证和存储最便捷,但需要占用至少一个公链中的节点作为同步交易的发起方。因此,为了节省公链中节点的运算能力,提交节点宜选择公链中维护者节点以外的其他节点。In practical applications, 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.
如果提交节点来源于接入链网络,则需要作为提交节点的接入链节点向公链发起一个跨链交易。即交易节点生成的区块数据要在接入链网络中先广播一次以形成区块链。再通过接入链与公链之间连接的节点将生成的区块数据再传递到公链网络,以便在公链网络中再一次进行广播,以致公链中的维护者节点可以接收到该区块数据并进行后续的同步交易。这种方式可以最大限度的节省公链网络中节点上的运算能力。但由于公链网络还要存储同步交易所产生的区块链,因此,会稍微多占用一些公链网络的存储空间。进一步地,为了减少公链网络存储空间的占用,可以在进行同步交易时,仅在接入链中进行广播、验证和存储,而在公链中不存储同步交易产生的区块链。If the submitting node originates from the access chain network, 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. However, because 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.
对于提交节点来源于平行链网络的情况,由于平行链本身即是公链或者接入链中的部分节点,因此其发起交易的方式与上述两种情况相同。本申请提供的技术方案中,如果从发起同步交易的角度看,优先选择提交节点是公链节点的方式。For the case where the submitting node originates from a parachain network, since the parachain itself is part of the public chain or the access chain, the method of initiating a transaction is the same as the above two cases. In the technical solution provided in the present application, from the perspective of initiating a synchronous transaction, a method in which the submitting node is a public chain node is preferentially selected.
实际应用中,为了适应不同规模的接入链和公链网络,接入链节点可以是多个,但为了避免提交节点出现高并发运算,本申请中仅需要一个提交节点获取相应的区块链信息即可。因此,在本申请的部分实施例中,提交节点向公链发起带有区块链信息的同步交易,以触发公链中维护者节点执行提交合约的步骤后,所述方法还包括:In practical applications, in order to adapt to different-scale access chains and public chain networks, there can be multiple access chain nodes, but in order to avoid high concurrent operations of submitting nodes, only one submitting node is required to obtain the corresponding blockchain in this application. Information. Therefore, in some embodiments of the present application, after the submitting node initiates a synchronous transaction with blockchain information to the public chain to trigger the maintainer node in the public chain to perform the steps of submitting a contract, 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. In addition, 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.
为了避免数据的高并发处理,还可以通过公链中的维护者节点在接收到同步交易后,拒绝接收包含同样区块链信息的同步交易的方式实现。实际应用中,维护者节点在接收到同步交易后可以在一段时间内,拒绝接收通过提交合约发起的交易。显然,在公链中接入多个接入链时,不能单纯的通过时间判断是否接收同步交易,还应该分析接收到的交易是否来源于同一个接入链,或者同步交易中是否包含相同的区块链信息。可见,通过同步交易拒绝接收包含同样区块链信息的同步交易,可以保证在后续摘要信息的提取和广播针对一个区块链信息执行一次即可完成同步,避免出现重复同步的问题。In order to avoid the high-concurrency processing of data, it can also be implemented by the maintainer node in the public chain after receiving the synchronous transaction and refusing to receive the synchronous transaction containing the same blockchain information. In practical applications, the maintainer node may refuse to receive a transaction initiated by submitting a contract within a period of time after receiving the synchronous transaction. Obviously, when accessing multiple access chains in the public chain, you cannot simply judge whether to receive synchronous transactions by time. You should also analyze whether the received transactions originate from the same access chain or whether the synchronous transactions contain the same Blockchain information. It can be seen that the rejection of synchronous transactions containing the same blockchain information through synchronous transactions can ensure that the subsequent abstract information extraction and broadcasting can be performed once for one blockchain information to complete the synchronization, avoiding the problem of repeated synchronization.
本申请提供的技术方案中,优选提交节点生成提交通知信息的方式,来避免数据的高并发运算。一方面,其他节点在接收到提交通知信息后,可以不用再获取或分析区块链信息,可以节省其他节点的运算能力,而且可以避免在接入链与公链之间频繁发生交易;另 一方面,由于其他节点接收到提交通知信息后不再发起同步交易,因此公链维护者节点不必对大部分同步交易进行分析判断,进一步节省维护者节点的运算能力。In the technical solution provided in the present application, the manner in which the submitting node generates the submission notification information is preferred to avoid the highly concurrent operation of the data. On the one hand, after receiving the submission notification information, 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 On the other hand, 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.
S13:维护者节点通过提交合约的执行结果验证同步交易,以及提取区块链信息中的数据,生成摘要信息;所述摘要信息包括接入链节点地址和交易数据标识符。S13: 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.
维护者节点在接收到同步交易后,先对同步交易进行验证。在本申请中,维护者节点进行的验证的内容,可以包括两个方面,一方面公链维护者节点对同步交易产生的区块数据进行验证,与一般交易相同,对区块数据进行验证包括对区块数据的HASH值进行解密,获取相应的交易内容信息,即同步的区块链信息内容;另一方面公链维护者节点对同步交易还包括合法性等验证,即确定同步交易是否来源于合法的接入链节点,以及同步的区块链信息是否已被同步。本申请中,维护者节点可以根据提交合约的执行结果来验证同步交易。即只有同步交易才能够触发提交合约的执行,进而保证维护者节点能够识别出同步交易,以便区分其他类型的交易,在后续步骤执行同步操作。After receiving the synchronous transaction, the maintainer node first verifies the synchronous transaction. In this application, the content of the verification performed by the maintainer node may include two aspects. On the one hand, the public chain maintainer node verifies the block data generated by the synchronous transaction. As with ordinary transactions, 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; on the other hand, 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. In this application, 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.
在维护者节点验证同步交易以后,需要在区块链信息中提取与跨链交易有关的数据。例如,跨链交易的发起链地址,即产生区块链数据的接入链地址;以及跨链交易体现在区块链信息中的位置数据等。并根据提取的数据生成摘要信息。本申请提供的技术方案中,摘要信息可以作为一种记录文本,摘要信息的生成方式也应趋向于尽量简单的方式,如生成记录文本数据,或者通过数字代替具体的交易信息等,避免过多的消耗公链中维护者节点的运算能力。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. For example, 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. And generate summary information based on the extracted data. In the technical solution provided in this application, 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.
可见,摘要信息可以去除相应的区块链数据格式,不必同步相应的hash值、加密算法以及前后区块序号、具体的交易内容信息等大部分数据,只保留能够回溯到原始区块链信息中的描述信息。因此,生成的摘要信息在体积上要远小于原区块链信息中记载的数据体积,可以大大节省公链网络的存储空间。It can be seen that 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.
进一步地,如图4所示,维护者节点通过提交合约的执行结果验证同步交易,以及提取区块链信息中的数据,生成摘要信息的步骤包括:Further, as shown in FIG. 4, 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:
S131:维护者节点提取区块链信息,以及根据所述区块链信息确定对应接入链的属性;S131: The maintainer node extracts the blockchain information, and determines the attributes of the corresponding access chain according to the blockchain information;
S132:获取摘要格式表,所述摘要格式表中包括多种接入链属性以及与每种接入链属性对应的摘要提取模板;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:根据接入链属性提取所述区块链信息中的数据,按照摘要提取模板生成摘要信息。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.
本实施例中,维护者节点可以先在接收到同步交易中提取区块链信息,并且从区块链信息中确定接入链的属性。所述接入链的属性,不仅包括接入链来源于哪个接入链网络,即接入链网络的地址信息,而且包括接入链相对与公链网络所具有性质,如接入链是否为与公链具有相同接口规范的子链网络,或者接入链是否为接入公链的第三方区块链网络,或者接入链与公链网络之间是否具有平行链等。另外,接入链的属性还可以包括接入链具有的功能,或者具体的应用场景,如金融、交易、银行、贸易等不同的应用场景。In this embodiment, 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. In addition, 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.
在确定了接入链的属性后,可以通过获取摘要格式表确定要生成的摘要信息的具体类型,即不同的接入链可以生成不同形式的摘要信息。在摘要格式表中,可以包括接入公链网络的所有接入链的属性,每种接入链属性对应一个摘要提取模板。或者一部分接入链属性对应一个摘要提取模板,另一部分摘要属性对应另一个摘要提取模板。After the attributes of the access chain are determined, the specific type of summary information to be generated can be determined by obtaining a summary format table, that is, different access chains can generate different forms of summary information. 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.
例如,对于接入链是与公链具有相同接口规范的子链网络,对应的摘要提取模板包括提取接入链的值信息和交易在区块链数据中的位置信息;而对于接入链是需要通过平行链才能接入公链的第三方区块链网络,对应的摘要提取模板中包括提取接入链的值信息、交易在区块链数据中的位置信息以及对应的平行链(或平行链节点)地址信息,以便通过摘要信息回溯到原始区块链信息时,能够通过平行链进行桥接,以便顺利获取到对应的原始区块链信息。本实施例中,摘要提取模板可以存储在公链维护者节点的存储器内,以便直接获取对应的模板,加快模板的获取速度。摘要提取模板也可以存储在公链中的存储节点中,当需要生成摘要信息中,维护者节点再通过向存储节点发送对应的指令,获取对应的模板,以避免占用维护者节点的存储空间。For example, for an access chain that is a sub-chain network with the same interface specifications as the public chain, 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. In this embodiment, 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. When the summary information needs to be generated, the maintainer node then obtains the corresponding template by sending the corresponding instruction to the storage node to avoid occupying the storage space of the maintainer node.
在获取摘要提取模板以后,本实施例可根据接入链属性提取所述区块链信息中的数据,并且按照摘要提取模板生成摘要信息。从而根据不同类型的接入链属性,生成不同形式的摘要信息。需要说明的是,生成的摘要信息可以直接以一行或一段字符串的方式在公链网络中进行存储。After obtaining the abstract extraction template, 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:维护者节点在公链网络内广播摘要信息。S14: The maintainer node broadcasts the summary information in the public chain network.
公链中的维护者节点在生成摘要信息后,可先在维护者节点中进行存储,再将生成的摘要信息进行广播,使公链网络中具有存储功能的节点接收到改摘要信息。具体地,维护者节点可以在公链网络中广播一个包含摘要信息的执行指令,控制公链网络中所有存储节点都接收该执行指令。维护者节点也可以先将摘要信息发送给临近的存储节点,使接收到该摘要信息的存储节点先进行存储,再将该摘要信息继续广播至已存储摘要信息的临近节点,这样依次将生成的摘要信息进行依次传递,即完成全网广播。需要说明的是,实际应用中,可以一个跨链交易就对应生成一个摘要信息,也可以一个摘要信息对应多个跨链交易,从而进一步节省维护者节点的运算能力。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. Specifically, 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.
进一步地,如图5所示,维护者节点在公链网络内广播摘要信息的步骤包括:Further, as shown in FIG. 5, the step of the maintainer node broadcasting the summary information in the public chain network includes:
S141:维护者节点接收多个交易对应的摘要信息;S141: The maintainer node receives summary information corresponding to multiple transactions;
S142:维护者节点根据摘要信息创建区块数据,所述区块数据中包含多个交易对应的摘要信息;S142: The maintainer node creates block data according to the summary information, where the block data includes summary information corresponding to multiple transactions;
S143:公链中的存储节点验证区块数据,以及在验证通过后,生成包含摘要信息的区块链信息。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.
本实施例中,存储的摘要信息可以随着公链网络中的区块链生成过程一同被写入区块链中,从而形成不可更改的公链区块链信息。因此,在实际应用中,在广播摘要信息后,接收到该摘要信息的维护者节点可以根据摘要信息创建区块数据,以通过验证后形成区块链,并且由存储节点存储对应的区块链。实际应用中,通过公链网络中的分布式存储方式,一方面可以适应对应的存储节点存储方式,另一方面可以在公链网络中形成不可更改的区块链信息,从而避免部分节点修改摘要信息,保证同步信息的真实性。In this embodiment, 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:公链中多个存储节点分布式存储接收到的摘要信息。S15: Multiple storage nodes in the public chain store the received summary information in a distributed manner.
本申请提供的技术方案中,通过多个存储节点可以同步对摘要信息进行存储,避免节点变化,如部分节点设备失效,影响数据的存储。同时,由于多个存储节点都需要对摘要信息进行存储,也进一步保证了该摘要信息的不可更改性。In the technical solution provided in the present application, 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.
另外,在本申请提供的技术方案中,为了存储和验证方便,对于具有足够存储空间的 公链维护者节点,可以承担存储节点的工作内容。即公链中的部分节点既作为公链维护者节点,又作为存储节点,从而使多个公链维护者节点在验证广播的摘要信息后,直接将摘要信息写入区块链。In addition, in the technical solution provided in this application, for the convenience of storage and verification, 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.
基于上述区块链信息的存储方法,如图6所示,本申请还提供一种基于公链的区块链信息存储系统,包括公链以及接入公链网络的接入链。其中,所述公链和接入链为P2P网络;所述公链中的部分节点配置为维护者节点和存储节点;所述公链和/或接入链中的部分节点被配置为提交节点;Based on the above-mentioned method for storing blockchain information, as shown in FIG. 6, 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. Wherein, 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.
由以上技术方案可知,在本申请中上述可行的实施例中,所述存储方法先由提交节点周期性从接入链节点获取待同步的区块链信息,再由提交节点向公链发起带有区块链信息的同步交易,以触发公链中维护者节点执行提交合约,并且由维护者节点对同步交易中的数据进行提取,生成摘要信息。维护者节点在公链网络内广播摘要信息以使公链中多个存储节点存储摘要信息。所述方法中,通过维护者节点从待同步的区块链信息中提取摘要信息,并将摘要信息存储在公链的存储节点中,减少同步数据体积,分担公链节点的数据处理负荷,从而解决传统区块链信息存储方法在跨链交易时大量占用存储空间,以及存储效率低的问题。It can be known from the above technical solutions that, in the above feasible embodiment of the present application, 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. There is a synchronous transaction of blockchain information to trigger the maintainer node in the public chain to execute the contract submission, and the maintainer node extracts the data in the synchronous transaction to 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. In the method, 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.
在本申请另一个可行的实施例中,还提供一种基于公链的区块链信息存储方法,如图7所示,所述方法包括以下步骤:In another feasible embodiment of the present application, 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:
S21:提交节点周期性从接入链节点获取区块链信息;S21: The submitting node periodically obtains the blockchain information from the access chain node;
S22:提交节点提取区块链信息生成摘要信息,所述摘要信息包括区块链信息来源的接入链地址,以及交易数据标识符;S22: 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:提交节点向公链发起带有摘要信息的同步交易,以触发公链中维护者节点执行提交合约;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:公链中维护者节点通过提交合约的执行结果验证同步交易,以及获取摘要信息;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:维护者节点在公链网络内广播摘要信息;S25: The maintainer node broadcasts the summary information in the public chain network;
S26:公链中多个存储节点分布式存储接收到的摘要信息。S26: Multiple storage nodes in the public chain store the received summary information in a distributed manner.
由以上步骤可知,本实施例与上述实施例的区别在于,在本实施例中,从待同步区块链信息中提取摘要信息由提交节点完成。即,提交节点在周期性从接入链节点获取区块链信息后,对每次获取的区块链信息进行数据提取,从而生成摘要信息。而公链中的维护者节点只接收同步交易,并且通过执行提交合约将摘要信息在公链网络中进行广播。同样,在本实施例中,提交节点可以内置相应的摘要提取模板,使得提交节点在提取数据时,可以按照摘要提取模板提取数据和生成摘要信息。It can be known from the above steps that 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. Similarly, in this embodiment, 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.
本实施例中,通过提交节点提取区块链信息中的数据和生成摘要信息,可以通过调用 提交节点分担工作,来减轻公链维护者节点的工作负荷,减少公链中维护者节点的数据处理量。使得公链中的维护者节点可以仅执行提交合约以及广播摘要信息,提高摘要信息的存储效率。并且,不必在维护者节点中存储相应的摘要提取模板等数据,进一步减少对公链存储空间的需求。In this embodiment, the submitting node extracts the data in the blockchain information and generates summary information. By calling the submitting node to share the work, 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. In addition, it is not necessary to store corresponding abstract extraction templates and other data in the maintainer node, further reducing the need for public chain storage space.
基于上述信息存储方法,本申请还提供一种基于公链的区块链信息存储系统,包括公链以及接入公链网络的接入链。其中,所述公链和接入链为P2P网络;所述公链中的部分节点配置为维护者节点和存储节点;所述公链和/或接入链中的部分节点被配置为提交节点;Based on the above information storage method, 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. Wherein, 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.
由以上技术方案可知,本实施例提供的信息存储方法在实际应用中,先由提交节点周期性从接入链节点获取区块链信息。提交节点再提取区块链信息生成摘要信息,并且向公链发起带有摘要信息的同步交易,以触发公链中维护者节点执行提交合。维护者节点通过提交合约的执行结果验证同步交易,以及获取摘要信息。再将摘要信息在公链网络内广播以使公链内的存储节点分布式存储接收到的摘要信息。所述方法通过提交节点从待同步的区块链信息中提取摘要信息,并将摘要信息以同步交易的形式发送维护者节点,以存储在存储节点中,可以减少同步数据的体积,进一步分担公链节点的数据处理负荷,从而解决传统区块链信息存储方法在跨链交易时大量占用存储空间,以及存储效率低的问题。It can be known from the above technical solutions that, in practical applications, 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.
本申请提供的实施例之间的相似部分相互参见即可,以上提供的具体实施方式只是本申请总的构思下的几个示例,并不构成本申请保护范围的限定。对于本领域的技术人员而言,在不付出创造性劳动的前提下依据本申请方案所扩展出的任何其他实施方式都属于本申请的保护范围。Similar parts between the embodiments provided in this application can be referred to each other. The specific implementations provided above are just a few examples under the general concept of this application, and do not constitute a limitation of the protection scope of this application. For those skilled in the art, any other implementations extended according to the scheme of the present application under the premise of no creative labor belong to the protection scope of the present application.

Claims (10)

  1. 一种基于公链的区块链信息存储方法,其特征在于,包括:A method for storing blockchain information based on a public chain is characterized in that it includes:
    提交节点周期性从接入链节点获取待同步的区块链信息;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.
  2. 根据权利要求1所述的信息存储方法,其特征在于,所述方法中,提交节点是桥接公链与接入链的平行链节点;The information storage method according to claim 1, wherein in the method, the submitting node is a parallel chain node that bridges the public chain and the access chain;
    或者,所述提交节点是在公链网络中指定的,维护者节点以外的其他节点;Alternatively, the submitting node is designated in the public chain network and other nodes than the maintainer node;
    或者,所述提交节点是在接入链网络中指定的节点。Alternatively, the submitting node is a node designated in the access chain network.
  3. 根据权利要求1所述的信息存储方法,其特征在于,提交节点周期性从接入链节点获取待同步的区块链信息的步骤包括:The information storage method according to claim 1, wherein the step of the submitting node periodically obtaining the blockchain information to be synchronized from the access chain node comprises:
    接入链节点记录区块链信息中包含的跨链交易增加量;The access chain node records the increase in cross-chain transactions included in the blockchain information;
    如果跨链交易增加量达到预设交易提交数量,向提交节点发送区块链信息。If the increase in cross-chain transactions reaches the preset number of transaction submissions, send blockchain information to the submitting node.
  4. 根据权利要求1所述的信息存储方法,其特征在于,提交节点周期性从接入链节点获取待同步的区块链信息的步骤包括:The information storage method according to claim 1, wherein the step of the submitting node periodically obtaining the blockchain information to be synchronized from the access chain node comprises:
    接入链节点记录区块链信息中区块增加量;The access chain node records the block increase in the blockchain information;
    如果区块增加量达到预设区块提交数量,向提交节点发送区块链信息。If the block increase amount reaches the preset block submission number, the blockchain information is sent to the submitting node.
  5. 根据权利要求1所述的信息存储方法,其特征在于,提交节点向公链发起带有区块链信息的同步交易,触发公链中维护者节点执行提交合约的步骤后,所述方法还包括:The information storage method according to claim 1, wherein after the submitting node initiates a synchronous transaction with blockchain information to the public chain and triggers a maintainer node in the public chain to execute the step of submitting a contract, the method further comprises :
    提交节点生成提交通知信息,以及将提交通知信息发送至其他节点,以禁止其他节点就同样的区块链信息向公链发起同步交易;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;
    或者,维护者节点在接收到同步交易后,拒绝接收包含同样区块链信息的同步交易。Or, after receiving the synchronous transaction, the maintainer node refuses to receive the synchronous transaction containing the same blockchain information.
  6. 根据权利要求1所述的信息存储方法,其特征在于,护者节点通过提交合约的执行结果验证同步交易,以及提取区块链信息中的数据,生成摘要信息的步骤包括:The information storage method according to claim 1, wherein the protector node verifies the synchronous transaction by submitting the execution result of the contract, and extracts the data in the blockchain information, and 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;
    获取摘要格式表,所述摘要格式表中包括多种接入链属性以及与每种接入链属性对应的摘要提取模板;Obtaining a summary format table, which includes multiple access chain attributes and a summary extraction template corresponding to each type of access chain attribute;
    根据接入链属性提取所述区块链信息中的数据,按照摘要提取模板生成摘要信息。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.
  7. 根据权利要求1所述的信息存储方法,其特征在于,维护者节点在公链网络内广播摘要信息的步骤包括:The information storage method according to claim 1, wherein the step of the maintainer node broadcasting the summary information in the public chain network comprises:
    维护者节点接收多个交易对应的摘要信息;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.
  8. 一种基于公链的区块链信息存储方法,其特征在于,包括:A method for storing blockchain information based on a public chain is characterized in that it includes:
    提交节点周期性从接入链节点获取区块链信息;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.
  9. 一种基于公链的区块链信息存储系统,其特征在于,包括公链以及接入公链网络的接入链,所述公链和接入链为P2P网络;所述公链中的部分节点配置为维护者节点和存储节点;所述公链和/或接入链中的部分节点被配置为提交节点;A blockchain information storage system based on a public chain is characterized in that it includes a public chain and an access chain accessing a public chain network, and the public chain and the access chain are P2P networks; part of the public chain Nodes 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 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.
  10. 一种基于公链的区块链信息存储系统,其特征在于,包括公链以及接入公链网络的接入链,所述公链和接入链为P2P网络;所述公链中的部分节点配置为维护者节点和存储节点;所述公链和/或接入链中的部分节点被配置为提交节点;A blockchain information storage system based on a public chain is characterized in that it includes a public chain and an access chain accessing a public chain network, and the public chain and the access chain are P2P networks; part of the public chain Nodes 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 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.
PCT/CN2019/101050 2018-08-28 2019-08-16 Public chain-based blockchain information storage method and system WO2020042932A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201810986825 2018-08-28
CN201810986825.3 2018-08-28
CN201811496920.1A CN110866825B (en) 2018-08-28 2018-12-07 Public link-based block chain information storage method and system
CN201811496920.1 2018-12-07

Publications (1)

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

Family

ID=69644986

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/101050 WO2020042932A1 (en) 2018-08-28 2019-08-16 Public chain-based blockchain information storage method and system

Country Status (1)

Country Link
WO (1) WO2020042932A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114531247A (en) * 2022-04-22 2022-05-24 北京中宇万通科技股份有限公司 Data sharing method, device, equipment, storage medium and program product

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106372533A (en) * 2016-09-14 2017-02-01 中国银联股份有限公司 Block chain technology-based content storage method
CN107332826A (en) * 2017-06-09 2017-11-07 中国联合网络通信集团有限公司 The communication means and device of block chain agent node
US20170366357A1 (en) * 2016-06-16 2017-12-21 The Bank Of New York Mellon Distributed, centrally authored block chain network
CN108347486A (en) * 2018-02-12 2018-07-31 众安信息技术服务有限公司 Across chain communication means, device and system based on block chain

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 (en) * 2016-09-14 2017-02-01 中国银联股份有限公司 Block chain technology-based content storage method
CN107332826A (en) * 2017-06-09 2017-11-07 中国联合网络通信集团有限公司 The communication means and device of block chain agent node
CN108347486A (en) * 2018-02-12 2018-07-31 众安信息技术服务有限公司 Across chain communication means, device and system based on block chain

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 (en) * 2022-04-22 2022-05-24 北京中宇万通科技股份有限公司 Data sharing method, device, equipment, storage medium and program product

Similar Documents

Publication Publication Date Title
CN110866825B (en) Public link-based block chain information storage method and system
WO2020258848A1 (en) Method and apparatus for cross-chain transmission of resources
CN111144883B (en) Processing performance analysis method and device for blockchain network
CN109639521B (en) Block chain performance testing method, device, equipment and storage medium
US11444783B2 (en) Methods and apparatuses for processing transactions based on blockchain integrated station
CN111612614A (en) Public link-based sub-chain service system
CN110990408A (en) Block chain-based business information cooperation method, business system and alliance chain
CN109447603B (en) Ocean data resource sharing method based on block chain
CN110839056B (en) Data processing method and device based on block chain and node network
CN111241589A (en) Database system, node and method
US20230315891A1 (en) Transaction data processing method and apparatus, computer device and storage medium
US20230273912A1 (en) Data processing method and apparatus for blockchain network, computer device, and computer-readable storage medium
US11783339B2 (en) Methods and apparatuses for transferring transaction based on blockchain integrated station
WO2020108289A1 (en) Database system, node and method
US20210344753A1 (en) Methods and apparatuses for synchronizing data based on blockchain integrated station
CN111711526B (en) Method and system for consensus of block chain nodes
CN111400112A (en) Writing method and device of storage system of distributed cluster and readable storage medium
WO2023045617A1 (en) Transaction data processing method and apparatus, device and medium
CN111241590A (en) Database system, node and method
US20230370285A1 (en) Block-chain-based data processing method, computer device, computer-readable storage medium
JP2023508210A (en) Data processing method, device, device and computer program based on blockchain
WO2020042932A1 (en) Public chain-based blockchain information storage method and system
CN113111125B (en) Business evidence-storing method based on block chain
CN111555860A (en) Block link point consensus method and device, electronic equipment and storage medium
US20180060974A1 (en) Social networking relationships processing method, system, and storage medium

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