CN110245956B - Asynchronous multi-chain based block chain transaction confirmation method and system - Google Patents

Asynchronous multi-chain based block chain transaction confirmation method and system Download PDF

Info

Publication number
CN110245956B
CN110245956B CN201910410822.XA CN201910410822A CN110245956B CN 110245956 B CN110245956 B CN 110245956B CN 201910410822 A CN201910410822 A CN 201910410822A CN 110245956 B CN110245956 B CN 110245956B
Authority
CN
China
Prior art keywords
block
node
consensus
blockchain
discovery information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910410822.XA
Other languages
Chinese (zh)
Other versions
CN110245956A (en
Inventor
曹京奇
瞿争
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Zhongan Information Technology Service Co ltd
Original Assignee
Zhongan Information Technology Service Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhongan Information Technology Service Co Ltd filed Critical Zhongan Information Technology Service Co Ltd
Priority to CN201910410822.XA priority Critical patent/CN110245956B/en
Publication of CN110245956A publication Critical patent/CN110245956A/en
Application granted granted Critical
Publication of CN110245956B publication Critical patent/CN110245956B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/42Confirmation, e.g. check or permission by the legal debtor of payment

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

The invention discloses a block chain transaction confirmation method and a block chain transaction confirmation system based on asynchronous multi-chain, wherein the method at least comprises the following steps: a first node in the blockchain network packs a local transaction message stored by the first node into a first block, adds the first block to a blockchain of the first node, and broadcasts the first block in the blockchain network; a second node in the block chain network receives and verifies the first block, if the first block is verified, the first block is stored, first block discovery information of the first block is constructed, and the first block discovery information is broadcasted in the block chain network; and receiving the first block discovery information by other nodes except the second node in the block chain network for consensus. According to the asynchronous multi-chain based blockchain transaction confirmation method, the transmission and consensus process of blocks are completely and asynchronously carried out, the consensus process cannot be influenced by the transmission of the blocks and the network load of the blockchain, the block discovery information with a light weight data structure participates in consensus, the increase range of the block discovery information is far lower than that of the consensus algorithm, and the system has good lateral expansibility.

Description

Asynchronous multi-chain based block chain transaction confirmation method and system
Technical Field
The invention relates to the technical field of computers, in particular to a block chain transaction confirmation method and system based on asynchronous multiple chains.
Background
A block chain (block chain) is a series of transaction records (also called blocks) that are cryptographically connected and protect content. Each tile contains the cryptographic hash of the previous tile, the corresponding time stamp, and transaction data (typically represented by a hash value computed using the merkel tree algorithm), such a design makes the tile contents tamper-resistant. The distributed account book connected in series by the block chain can effectively record the transaction by two parties and permanently check the transaction.
Block chains can be generally classified into public chains, federation chains, and private chains, depending on access rights. The public chain refers to a block chain which can be accessed by anyone according to a protocol and is in consensus; the alliance chain is a block chain of which the consensus process is controlled by a preselected node; private chain refers to a chain of blocks that are authorized in an organization and are fully controlled by the organization.
The block chain is generally divided into several large technical points such as consensus algorithm, cryptography, P2P network and the like at the technical level. Wherein the consensus algorithm is the most core part of the blockchain entry. With the distributed, consensus needs to be reached. So far, the technical point of greatest dispute for blockchain projects is also the consensus algorithm.
The requirement of the alliance chain on performance, delay and the like is high, most of consensus algorithms suitable for the alliance chain are based on synchronization or weak synchronization, and the transmission of the current consensus block can influence the process of consensus to a great extent. When the load of the blockchain network is high, the block size is large, the consensus process is blocked due to slow block transmission, and even the consensus process is stopped.
At present, in a alliance chain scene, a PBFT (practical byzantine fault-tolerant algorithm) and various evolutionary versions of the PBFT are generally adopted as consensus algorithms to support the operation of a block chain, and in most application scenes, the PBFT consensus algorithms are effective, so that the requirements of most alliance chain scenes are met.
However, the PBFT consensus algorithm has its inherent drawbacks while providing high performance and low latency. Because the message communication quantity of the PBFT algorithm is large, the consensus performance is greatly reduced and the time delay is greatly increased under the condition that the number of nodes is large (hundreds). And in relatively extreme cases, the consensus process may not proceed. This results in that the PBFT consensus algorithm cannot operate in a large-scale distributed network with a large number of nodes (the number of nodes is hundreds to hundreds), and a block chain system designed based on this algorithm has poor lateral scalability.
Disclosure of Invention
In order to solve the technical problems, the invention provides a block chain transaction confirmation method and a block chain transaction confirmation system based on asynchronous multi-chain, which realize that a label dictionary is constructed manually so as to find out corresponding labels as much as possible for standard words in a self-constructed standard word bank, and realize a large-scale multi-label technology.
The technical scheme provided by the embodiment of the invention is as follows:
in a first aspect, a method for confirming a blockchain transaction based on asynchronous multiple chains is provided, the method at least comprising the following steps:
a first node in the blockchain network packs a local transaction message stored by the first node into a first block and adds the first block to a blockchain of the first node, and broadcasts the first block in the blockchain network;
a second node in the block chain network receives and verifies the first block, stores the first block and constructs first block discovery information of the first block if the first block passes the verification, and broadcasts the first block discovery information in the block chain network;
receiving the first block discovery information by other nodes except the second node in the block chain network, and performing consensus by using the first block discovery information as a consensus data source to generate a consensus result;
the first node and the second node are any two different nodes on the block chain network;
the first block discovery information at least includes: the hash of the first block, the signature of the second node on the hash of the first block, and the public key of the second node.
In some embodiments, a first node in the blockchain network packs a local transaction message stored by the first node into a first block and adds the first block to the blockchain of the first node, and broadcasts the first block in the blockchain network, including at least the following sub-steps:
the first node collects local transaction information stored locally;
the first node packs local transaction information stored by the first node into a first block;
the first node adds the first block to a block chain of a pre-constructed first node through block hashing;
the first node broadcasts the first block in the blockchain network.
In some embodiments, a second node in the blockchain network receives and verifies the first block, stores the first block and constructs first block discovery information for the first block if verification passes, and broadcasts the first block discovery information in the blockchain network, including at least the following sub-steps:
a second node in the block chain network receives a first block broadcast by the first node;
verifying the block information of the first block;
if the verification is passed, the second node stores the first block locally to the second node, constructs first block discovery information composed of a lightweight data structure, and broadcasts the first block discovery information in the block chain network;
if the verification fails, discarding the first block;
the first block information at least comprises a public key of the first node, a signature of the first node on the first block, a block size of the first block, a block height of the first block and a parent block hash of the first block.
In some embodiments, the method further comprises the following sub-steps of receiving the first block discovery information by other nodes except the second node in the block chain network, using the first block discovery information as a consensus data source for consensus, and generating a consensus result:
receiving first block discovery information broadcast by the second node by other nodes except the second node;
storing the first block discovery information into a consensus process;
taking the first block discovery information as a consensus data source, and performing consensus by adopting a consensus algorithm to obtain a consensus result;
and summarizing the signature information of the first block by using threshold encryption.
In some embodiments, before a first node in the blockchain network packs a local transaction message stored by the first node into a first block and adds the first block to the blockchain of the first node, and broadcasts the first block in the blockchain network, the method further comprises constructing the blockchain of the first node, and at least comprises the following sub-steps:
the first node receives a plurality of transaction information sent by corresponding clients;
storing the transaction information locally at the current node;
packaging the transaction information into a plurality of blocks respectively;
and the blocks are connected end to end by using block hash to form a block chain of the first node.
In some embodiments, the receiving, by other nodes in the blockchain network except for the second node, the first block discovery information, saving and consensus the first block discovery information as a consensus data source, and generating a consensus result further includes:
and executing the transaction confirmed in the consensus result according to the consensus result.
In another aspect, an asynchronous multi-chain based blockchain transaction confirmation system is provided, the system at least comprising:
a first processing module: the method comprises the steps that a first node in the blockchain network packs local transaction information stored by the first node into a first block and adds the first block to a blockchain of the first node, and the first block is broadcasted in the blockchain network;
a second processing module: the second node used in the block chain network receives and verifies the first block, if the first block passes the verification, the second node stores the first block and constructs first block discovery information of the first block, and broadcasts the first block discovery information in the block chain network;
a third processing module: receiving the first block discovery information by other nodes except the second node in the block chain network, and performing consensus by using the first block discovery information as a consensus data source to generate a consensus result;
the first node and the second node are any two different nodes on the block chain network;
the first block discovery information at least includes: the hash of the first block, the signature of the second node on the hash of the first block, and the public key of the second node.
Further, the first processing module comprises at least:
collecting a submodule: the first node is used for collecting local transaction information stored locally;
packing the submodule: the first node packs local transaction information stored by the first node into a first block;
a chain loading sub-module: adding the first block to a block chain of a pre-constructed first node through block hashing by the first node;
a first broadcast sub-module: for the first node to broadcast the first block in the blockchain network.
Further, the second processing module comprises at least:
a first receiving submodule: a first block for a second node in a blockchain network to receive the first node broadcast;
a verification submodule: means for verifying block information of the first block;
a first processing submodule: if the verification is passed, the second node stores the first block locally to the second node, constructs first block discovery information composed of a lightweight data structure, and broadcasts the first block discovery information in the block chain network; the first block is also used for discarding if the verification fails;
the first block information at least comprises a public key of the first node, a signature of the first node on the first block, a block size of the first block, a block height of the first block and a parent block hash of the first block.
Further, the third processing module comprises at least:
a second receiving submodule: the method comprises the steps that other nodes except the second node receive first block discovery information broadcasted by the second node, and the first block discovery information is stored in a consensus process;
saving the submodule: the first block discovery information is saved into a consensus process;
a consensus sub-module: the device is used for taking the first block discovery information as a consensus data source, and performing consensus by adopting a consensus algorithm to obtain a consensus result;
a post-processing submodule: the signature information of the first block is summarized by using threshold encryption.
Further, the system further comprises a block chain constructing module, and the block chain constructing module at least comprises:
a third receiving submodule: the first node is used for receiving a plurality of transaction information sent by corresponding clients;
a storage submodule: for storing the transaction information locally at the current node;
packing the submodule: the system is used for packaging the transaction information into a plurality of blocks respectively;
chaining submodule: and the block chains are used for forming the first node by using block hash head-to-tail connection among the blocks.
Further, the system also comprises an execution module used for executing the transaction confirmed in the consensus result according to the consensus result.
Compared with the prior art, the invention has the beneficial effects that:
the embodiment of the invention provides a block chain transaction confirmation method based on asynchronous multi-chain, in the execution process, the transmission and the consensus process of a block are completely and asynchronously carried out, and except for the extreme condition, the consensus process cannot run slowly or even stop because of higher network load of the block chain;
in addition, in the method, as the block discovery information is involved in consensus and the increase range of the block discovery information along with the increase of the number of nodes is far lower than that of a consensus algorithm based on the synchronization or weak synchronization of the transaction consensus, a system designed based on the method has better lateral expansibility.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a flowchart of a method for confirming asynchronous multi-chain based blockchain transaction according to a first embodiment of the present invention;
fig. 2 is a schematic structural diagram of an asynchronous multi-chain based blockchain transaction verification system according to a second embodiment of the invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Example one
The embodiment provides a blockchain transaction confirmation method based on asynchronous multiple chains, belongs to the technical field of computers, and is suitable for various blockchain transaction confirmation service scenes based on asynchronous multiple chains, in particular to a alliance chain technology.
In a federation chain, a traditional consensus algorithm based on transaction consensus usually takes the form of transaction network-wide broadcasting in order to support a large node size. The alliance chain usually has very high connectivity among nodes, which results in very high network communication amount, and when the load of the blockchain network is high, the blockchain network may result in a large block size, which often blocks the consensus process due to slow block transmission, or even stops the consensus process. Therefore, the present embodiment provides a method for confirming blockchain transaction based on asynchronous multi-chain, which realizes complete asynchronous transmission and consensus of blocks.
Fig. 1 is a flowchart of a blockchain transaction confirmation method based on an asynchronous multi-chain according to an embodiment of the present invention, as shown in fig. 1, the blockchain transaction confirmation method based on the asynchronous multi-chain specifically includes the following steps:
s1, the first node in the blockchain network packs a local transaction message stored therein into a first block and adds the first block to the blockchain of the first node, and broadcasts the first block in the blockchain network.
Specifically, step S1 specifically includes the following sub-steps:
and S11, the first node collects local transaction information stored locally.
In this embodiment, the first node is an arbitrary node on the blockchain network.
Specifically, any node on the blockchain network receives the transaction information sent by the client to the node, and only stores and maintains the transaction information on the node, but does not broadcast the transaction information into the blockchain network. It should be noted that the transaction information referred to in this embodiment refers to a transaction object to be transacted by the client.
In the embodiment, after receiving the transaction information sent by the client, any node does not need to broadcast the transaction, thereby greatly reducing the consumption of network resources.
S12, the first node packs a local transaction message stored therein into a first block.
Specifically, when all nodes on the blockchain network trigger block packaging, a plurality of local transaction information stored locally are respectively packaged into blocks at the same time, and one local transaction information is packaged into one block.
And S13, the first node adds the first block to a block chain of the first node which is constructed in advance through block hashing.
Therefore, in this embodiment, before step S1, the method further includes at least: s0, pre-constructing a blockchain of the first node, wherein the step at least includes the following sub-steps:
s01, the first node receives a plurality of transaction information sent by the corresponding client;
s02, storing a plurality of transaction information in the local current node;
s03, packaging the transaction information into blocks;
and S04, forming a block chain of the first node by connecting a plurality of blocks end to end by using block hash.
When the block chain network is constructed, each node respectively packages a plurality of transaction information stored in the current node into blocks, the blocks are connected end to end by using block Hash (Hash) to form a traditional chain structure which cannot be tampered, and each node respectively maintains the block chain of each node. When the node receives new transaction information, the new transaction information is packaged into a block and added into the blockchain.
S14, the first node broadcasts the first tile in a network of tile chains.
The method comprises the following specific steps: each node broadcasts the blocks in its maintained blockchain into the blockchain network.
Illustratively, the blockchain network includes A, B, C three nodes, and after the node a goes through step S1, the blockchain maintained by the node a has a1、A2、A3Three blocks, end-to-end, are broadcast by node a to the blockchain network.
In this embodiment, the broadcasting of the tile is completely asynchronous with the consensus process, so the broadcasting speed of the tile and the load in the whole blockchain network do not have a great influence on the consensus process, thereby enabling the blockchain system to have better lateral scalability.
S2, the second node in the blockchain network receives and verifies the first block, if the verification is passed, the second node stores the first block and constructs first block discovery information of the first block, and broadcasts the first block discovery information in the blockchain network.
Specifically, step S2 includes the following sub-steps:
s21, the second node in the blockchain network receives the first block broadcast by the first node.
S22, verifying the block information of the first block.
Specifically, the first block is verified by verifying the public key of the first node, the signature of the first node on the first block, the block size of the first block, the block height of the first block, the parent block hash of the first block, and the like.
S23, after obtaining the verification result, specifically performing the following steps:
and if the verification is passed, the second node stores the first block to the local of the second node, constructs first block discovery information consisting of a lightweight data structure, and broadcasts the first block discovery information in the block chain network, wherein the block discovery information at least comprises the block hash, a signature of the current node on the block hash and a public key of the current node.
If the verification fails, discarding the first block;
in this embodiment, the second node is any node on the block chain network except the first node.
Illustratively, first, block a is broadcast at node a1、A2、A3Then, both node B and C receive the three blocks and verify the blocks in the same way. Further described below by way of example of a node B receiving A broadcast by node A1、A2、A3Three blocks and verifies the three blocks by verifying the signature of node a on each block, the block size of each block, the block height of each block, the parent block hash of each block, etc.
Verified, Block A1、A2If the verification is passed, the node B will use the block A1、A2All are stored locally and corresponding block discovery information is constructed respectively. Constructing block A with node B1The block discovery information of (A) is an example1The block discovery information at least includes: a. the1The hash of the block, the signature of the B node on the hash of the block, and the public key of the B node. The node B adopts the same method to construct A2Block discovery information. Thus, the block discovery information is a lightweight data structure for proving that the node B accepts block a1、A2
The node then broadcasts block a to the blockchain network1Block discovery information and block a2The block discovery information of (1).
When the block A is3If not, the node B discards the block A3
Since the block discovery information is very lightweight and not numerous, broadcasting the block discovery information does not have a significant impact on network communications.
S3, receiving the first tile discovery information by other nodes except the second node in the tile chain network, and performing consensus by using the first tile discovery information as a consensus data source to generate a consensus result.
Specifically, step S3 specifically includes the following sub-steps:
s31, receiving the first block discovery information broadcast by the second node by other nodes except the second node;
s32, storing the first block discovery information into the consensus process;
s33, using the first block discovery information as a consensus data source, and performing consensus by adopting a consensus algorithm to obtain a consensus result;
and S34, summarizing the signature information of the first block by using threshold encryption.
Since the number of the block discovery information is much smaller than the transaction number, the difficulty of identifying the block discovery information is small. When the block discovery information is identified, an appropriate formula algorithm can be arbitrarily adopted to generate an identification result, that is, there is no special requirement for the identification algorithm.
In addition, threshold encryption (threshold encryption) is adopted to collect the signature information of the first block, so that the data of the final consensus result can be reduced to the prior level of the node number from the square level of the node number, and the data amount of the consensus result is greatly reduced.
Illustratively, node a or node C in a blockchain network receives a block a broadcast by node B1Block discovery information and block a2The block discovery information of the two blocks is respectively stored in the consensus process as a consensus data source. Adopting a proper consensus algorithm to carry out the operation on the blocks A in the nodes A and C1And a block A in the node A and the node C2The block discovery information of (2) is consensus-generated to generate a consensus result. Threshold encryption is then employed to reduce the amount of data of the consensus result.
In each round of consensus, only one block discovery message can be known for a certain block. After a round of consensus, even block A1The transmission to node B or C is not timely performed, and other nodes can still perform consensus or even achieve consensus, and of course, the resulting consensus result may be incomplete or even null, in which case the next round of consensus is continued.
After step S3, the method further includes at least:
and S4, executing the transaction confirmed in the consensus result according to the consensus result.
After the consensus results are generated, it can be determined which nodes' blocks are accepted by the whole network in the round of consensus and become untrustworthy. The transactions in the blocks are sequenced according to a reasonable rule, and the specific sequencing mode can be selected according to an actual scene, so that the interference of the current block node on the transaction sequence can be prevented as far as possible. If a node finds that all the blocks contained in the consensus result are not available after the consensus result is generated, the execution of the transaction can be suspended, and the execution of the transaction can be continued after the missing blocks are obtained from other nodes. The execution of the transaction does not affect the process of consensus, because nodes following the correct rules can obtain a consistent result throughout the network whenever the transaction is executed according to the established rules.
For example, after the first round of consensus is over, if the node a and the node C agree on the tile discovery information of the tile a2, it indicates the tile a in the node a2Has been accepted by the whole network and becomes non-tamperable. If node A and node C are paired with block A1If the block discovery information is agreed, the block A is executed by reasonably sorting the block discovery information1And block A2The transaction information in (1). If after the consensus is generated, node C finds that only block A is available2Without having block a1Then, the execution of block A is suspended1Corresponding transaction, block A is obtained by tracing from node A or node B1Then, the block A can be executed continuously1A corresponding transaction.
In the asynchronous multi-chain based blockchain transaction confirmation method protected by the embodiment, the transmission and consensus process of the blocks are completely asynchronously performed, and except for extreme conditions, the consensus process cannot run slowly or even stop due to higher load of the transmission and blockchain network of the blocks;
in addition, the block discovery information with a lightweight data structure is involved in consensus, and the increase range of the block discovery information is far lower than that of a synchronization or weak synchronization consensus algorithm based on transaction consensus along with the increase of the number of nodes, so that a block chain system designed based on the method has better lateral expansibility.
Example two
In order to implement the method for confirming blockchain transaction based on asynchronous multiple chains in the first embodiment, the present embodiment provides a system for confirming blockchain transaction based on asynchronous multiple chains.
Fig. 2 is a schematic structural diagram of a blockchain transaction confirmation system based on asynchronous multiple chains according to a second embodiment of the present invention. As shown in fig. 2, the asynchronous multi-chain based blockchain transaction confirmation system 100 at least includes:
the first processing module 1: the first node in the blockchain network packs a local transaction message stored by the first node into a first block and adds the first block into a blockchain of the first node, and broadcasts the first block in the blockchain network;
the second processing module 2: the second node used in the block chain network receives and verifies the first block, if the first block passes the verification, the second node stores the first block and constructs first block discovery information of the first block, and broadcasts the first block discovery information in the block chain network;
the third processing module 3: receiving the first block discovery information by other nodes except the second node in the block chain network, and performing consensus by using the first block discovery information as a consensus data source to generate a consensus result;
the first node and the second node are both any nodes on the block chain network;
the first block discovery information at least includes: the hash of the first block, the signature of the second node on the hash of the first block, and the public key of the second node.
In some embodiments, the first processing module 1 comprises at least the following sub-modules:
collection submodule 11: the first node is used for collecting local transaction information stored locally;
packing submodule 12: the first node packs local transaction information stored by the first node into a first block;
a winding module 13: the first node adds the first block to a block chain of a pre-constructed first node through block hashing;
the first broadcast sub-module 14: for a first node to broadcast the first block in a network of block chains.
In some embodiments, the second processing module 2 comprises at least the following sub-modules:
the first receiving submodule 21: a first block for a second node in the blockchain network to receive a first node broadcast;
the verification sub-module 22: verifying block information of the first block;
the first processing submodule 23: if the verification is passed, the second node stores the first block locally to the second node, constructs first block discovery information composed of a lightweight data structure, and broadcasts the first block discovery information in the block chain network; if the verification fails, the first block is discarded.
In this embodiment, the first block information at least includes a public key of the first node, a signature of the first node on the first block, a block size of the first block, a block height of the first block, and a parent block hash of the first block.
Further, the third processing module 3 comprises at least:
the second receiving submodule 31: the method comprises the steps that other nodes except a second node receive first block discovery information broadcasted by the second node, and the first block discovery information is stored in a consensus process;
save submodule 32: the system comprises a common process, a first block discovery process and a second block discovery process, wherein the first block discovery process is used for storing first block discovery information into the common process;
consensus sub-module 33: the device is used for taking the first block discovery information as a consensus data source, and performing consensus by adopting a consensus algorithm to obtain a consensus result;
post-processing sub-module 34: and the signature information of the first block is summarized by using threshold encryption.
In some embodiments, the system 100 further includes a block chain construction module 0, and the block chain construction module 0 includes at least the following sub-modules:
third receiving submodule 01: the first node is used for receiving a plurality of transaction information sent by corresponding clients;
storage submodule 02: the system is used for storing a plurality of transaction information locally at the current node;
packing submodule 03: the system is used for packaging a plurality of transaction information into a plurality of blocks respectively;
chaining submodule 04: and the block chains are used for forming the first node by using block hash head-to-tail connection among a plurality of blocks.
In some embodiments, the system 100 further comprises an execution module 4, and the execution module 4 is configured to execute the transaction in the consensus result according to the consensus result.
It should be noted that: in the block chain transaction confirmation system based on the asynchronous multi-chain provided in the foregoing embodiment, when a transaction confirmation service in a federation chain is triggered, only the division of the above functional modules is used for illustration, and in practical applications, the above function distribution may be completed by different functional modules according to needs, that is, the internal structure of the system is divided into different functional modules to complete all or part of the above described functions. In addition, the block chain transaction confirmation system based on the asynchronous multiple chains provided in the above embodiments and the block chain transaction confirmation method based on the asynchronous multiple chains belong to the same concept, that is, the system is based on the method, and the specific implementation process thereof is described in detail in the method embodiments, and is not described herein again.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.

Claims (10)

1. A method for confirming block chain transaction based on asynchronous multi-chain is characterized in that the method at least comprises the following steps:
a first node in the blockchain network packs a local transaction message stored by the first node into a first block and adds the first block to a blockchain of the first node, and broadcasts the first block in the blockchain network;
a second node in the block chain network receives and verifies the first block, stores the first block and constructs first block discovery information of the first block if the first block passes the verification, and broadcasts the first block discovery information in the block chain network;
receiving the first block discovery information by other nodes except the second node in the block chain network, and performing consensus by using the first block discovery information as a consensus data source to generate a consensus result;
other nodes except the second node in the block chain network execute the transaction confirmed in the consensus result according to the consensus result;
wherein the second node in the blockchain network receives and verifies the first block, stores the first block and constructs first block discovery information of the first block if the verification passes, and broadcasts the first block discovery information in the blockchain network, and the method at least comprises the following sub-steps:
a second node in the block chain network receives a first block broadcast by the first node;
verifying the block information of the first block;
if the verification is passed, the second node stores the first block locally to the second node, constructs first block discovery information composed of a lightweight data structure, and broadcasts the first block discovery information in the block chain network;
if the verification fails, discarding the first block;
the first node and the second node are any two different nodes on the block chain network;
the first block discovery information at least includes: the hash of the first block, the signature of the second node on the hash of the first block, and the public key of the second node.
2. The method of claim 1, wherein the step of validating the block chain transaction based on asynchronous multi-chain is further characterized in that,
a first node in the blockchain network packs a local transaction message stored by the first node into a first block and adds the first block to a blockchain of the first node, and broadcasts the first block in the blockchain network, and the method at least comprises the following substeps:
the first node collects local transaction information stored locally;
the first node packs local transaction information stored by the first node into a first block;
the first node adds the first block to a block chain of a pre-constructed first node through block hashing;
the first node broadcasts the first block in the blockchain network.
3. The asynchronous multi-chain based blockchain transaction validation method of claim 1, wherein the block information of the first block at least comprises a public key of the first node, a signature of the first node on the first block, a block size of the first block, a block height of the first block, and a parent block hash of the first block.
4. The asynchronous multi-chain based blockchain transaction confirmation method according to claim 1, wherein the other nodes in the blockchain network except the second node receive the first blockchain discovery information, perform consensus on the first blockchain discovery information as a consensus data source, and generate a consensus result, comprising at least the following sub-steps:
receiving first block discovery information broadcast by the second node by other nodes except the second node;
storing the first block discovery information into a consensus process;
taking the first block discovery information as a consensus data source, and performing consensus by adopting a consensus algorithm to obtain a consensus result;
and summarizing the signature information of the first block by using threshold encryption.
5. The asynchronous multi-chain based blockchain transaction validation method according to any one of claims 1 to 4, wherein a first node in the blockchain network packs a local transaction information stored therein into a first block and adds the first block to the blockchain of the first node, and before broadcasting the first block in the blockchain network, further comprising the step of constructing the blockchain of the first node, comprising at least the following sub-steps:
the first node receives a plurality of transaction information sent by corresponding clients;
storing the transaction information locally at the current node;
packaging the transaction information into a plurality of blocks respectively;
and the blocks are connected end to end by using block hash to form a block chain of the first node.
6. An asynchronous multi-chain based blockchain transaction confirmation system, the system at least comprising:
a first processing module: the method comprises the steps that a first node in the blockchain network packs local transaction information stored by the first node into a first block and adds the first block to a blockchain of the first node, and the first block is broadcasted in the blockchain network;
a second processing module: the second node used in the block chain network receives and verifies the first block, if the first block passes the verification, the second node stores the first block and constructs first block discovery information of the first block, and broadcasts the first block discovery information in the block chain network;
a third processing module: receiving the first block discovery information by other nodes except the second node in the block chain network, and performing consensus by using the first block discovery information as a consensus data source to generate a consensus result;
the execution module is used for executing the transaction confirmed in the consensus result by other nodes except the second node in the block chain network according to the consensus result; the first node and the second node are any two different nodes on the block chain network;
the first block discovery information at least includes: the block hash of the first block, the signature of the second node on the block hash and a public key of the second node;
wherein the second processing module comprises at least:
a first receiving submodule: a first block for a second node in a blockchain network to receive the first node broadcast;
a verification submodule: means for verifying block information of the first block;
a first processing submodule: if the verification is passed, the second node stores the first block locally to the second node, constructs first block discovery information composed of a lightweight data structure, and broadcasts the first block discovery information in the block chain network; and discarding the first block if the verification fails.
7. The asynchronous multi-chain based blockchain transaction validation system of claim 6, wherein the first processing module comprises at least:
collecting a submodule: the first node is used for collecting local transaction information stored locally;
packing the submodule: the first node packs local transaction information stored by the first node into a first block;
a chain loading sub-module: adding the first block to a block chain of a pre-constructed first node through block hashing by the first node;
a first broadcast sub-module: for the first node to broadcast the first block in the blockchain network.
8. The asynchronous multi-chain based blockchain transaction validation system of claim 6, wherein the block information of the first block comprises at least a public key of the first node, a signature of the first node on the first block, a block size of the first block, a block height of the first block, a parent block hash of the first block.
9. The asynchronous multi-chain based blockchain transaction validation system of claim 6, wherein the third processing module comprises at least:
a second receiving submodule: the method comprises the steps that other nodes except the second node receive first block discovery information broadcasted by the second node, and the first block discovery information is stored in a consensus process;
saving the submodule: the first block discovery information is saved into a consensus process;
a consensus sub-module: the device is used for taking the first block discovery information as a consensus data source, and performing consensus by adopting a consensus algorithm to obtain a consensus result;
a post-processing submodule: the signature information of the first block is summarized by using threshold encryption.
10. The asynchronous multi-chain based blockchain transaction confirmation system according to any one of claims 6 to 9, further comprising a blockchain construction module, wherein the blockchain construction module at least comprises:
a third receiving submodule: the first node is used for receiving a plurality of transaction information sent by corresponding clients;
a storage submodule: for storing the transaction information locally at the current node;
packing the submodule: the system is used for packaging the transaction information into a plurality of blocks respectively;
chaining submodule: and the block chains are used for forming the first node by using block hash head-to-tail connection among the blocks.
CN201910410822.XA 2019-05-15 2019-05-15 Asynchronous multi-chain based block chain transaction confirmation method and system Active CN110245956B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910410822.XA CN110245956B (en) 2019-05-15 2019-05-15 Asynchronous multi-chain based block chain transaction confirmation method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910410822.XA CN110245956B (en) 2019-05-15 2019-05-15 Asynchronous multi-chain based block chain transaction confirmation method and system

Publications (2)

Publication Number Publication Date
CN110245956A CN110245956A (en) 2019-09-17
CN110245956B true CN110245956B (en) 2022-07-05

Family

ID=67884224

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910410822.XA Active CN110245956B (en) 2019-05-15 2019-05-15 Asynchronous multi-chain based block chain transaction confirmation method and system

Country Status (1)

Country Link
CN (1) CN110245956B (en)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110837536B (en) * 2019-10-08 2021-05-04 北京海益同展信息科技有限公司 Information processing method, device and storage medium
CN112910648B (en) * 2019-12-03 2023-04-07 北京百度网讯科技有限公司 Consensus method and device for privacy states of block chain
CN113032478B (en) * 2019-12-24 2023-10-31 航天信息股份有限公司 Block chain system and data uplink method, device, equipment and medium
CN111130801A (en) * 2019-12-26 2020-05-08 腾讯科技(深圳)有限公司 Data processing method and device, node equipment and computer storage medium
CN111143883B (en) * 2019-12-31 2021-08-03 支付宝(杭州)信息技术有限公司 Digital content evidence obtaining method, device and equipment based on block chain
CN111524010B (en) * 2020-05-06 2023-06-02 杭州复杂美科技有限公司 Parallel chain consensus method, apparatus and storage medium
CN111524011B (en) * 2020-05-06 2023-05-30 杭州复杂美科技有限公司 Parallel link consensus validation method, apparatus, and storage medium
CN111737707B (en) * 2020-05-14 2022-09-27 云南云烁巴克云科技有限公司 Block chain based verification package generation and verification method, server and electronic equipment
US20220109667A1 (en) 2020-10-02 2022-04-07 Blockframe, Inc. Cryptographic trust enabled devices of cybersecurity systems
CN112468552B (en) * 2020-11-16 2023-06-30 天津大学 Lightweight reputation consensus realization method of double-layer distributed blockchain network model
CN113055187B (en) * 2021-04-23 2023-02-03 山东新一代信息产业技术研究院有限公司 Narrow-band line transmission method for block chain consensus
CN113378144B (en) * 2021-07-14 2022-09-02 湖北央中巨石信息技术有限公司 Image file consensus method, system, device and medium based on block chain
CN113378207B (en) * 2021-07-14 2022-10-04 湖北央中巨石信息技术有限公司 Block chain-based data file consensus method, system, device and medium
CN113408010B (en) * 2021-07-14 2023-08-11 湖北央中巨石信息技术有限公司 Asynchronous consensus method, system and device based on block chain and medium
CN113837754B (en) * 2021-09-16 2023-11-17 安徽中科晶格技术有限公司 System and method for DAG block chain structure based on account chain and daemon chain
CN114862397B (en) * 2022-07-06 2022-09-30 国网天津市电力公司培训中心 Double-decoupling block chain distributed method based on double-chain structure

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107038578A (en) * 2017-04-19 2017-08-11 浙江数秦科技有限公司 Multi-signature exchange information processing method in data trade platform based on block chain
CN107688945A (en) * 2017-08-11 2018-02-13 杭州秘猿科技有限公司 A kind of efficient license chain based on delaying state common recognition
CN107888375A (en) * 2017-11-08 2018-04-06 深圳市携网科技有限公司 A kind of electronic evidence safety system and method based on block chain technology
CN109034480A (en) * 2018-07-31 2018-12-18 湘潭大学 A kind of interconnection microgrid distributed optimization dispatching method based on intelligent contract
CN109086585A (en) * 2018-07-10 2018-12-25 众安信息技术服务有限公司 History data processing method, system and computer readable storage medium
CN109118364A (en) * 2018-08-27 2019-01-01 深圳前海益链网络科技有限公司 Method, apparatus, computer equipment and the storage medium of asynchronous execution intelligence contract
CN109711192A (en) * 2018-12-24 2019-05-03 众安信息技术服务有限公司 Method of commerce and system between block catenary system construction method, node
CN109756558A (en) * 2018-12-04 2019-05-14 广州通链计算机智能技术有限责任公司 A kind of Byzantine failure tolerance common recognition algorithm based on asynchronous packet switching

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170345011A1 (en) * 2016-05-26 2017-11-30 Hitfin, Inc. System and method executed on a blockchain network
CN108182635A (en) * 2017-12-18 2018-06-19 深圳前海微众银行股份有限公司 Block chain common recognition method, system and computer readable storage medium
CN108876370B (en) * 2018-06-12 2021-12-17 北京航空航天大学 System architecture for sharing open data by crossing block chains under heterogeneous multi-chain architecture

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107038578A (en) * 2017-04-19 2017-08-11 浙江数秦科技有限公司 Multi-signature exchange information processing method in data trade platform based on block chain
CN107688945A (en) * 2017-08-11 2018-02-13 杭州秘猿科技有限公司 A kind of efficient license chain based on delaying state common recognition
CN107888375A (en) * 2017-11-08 2018-04-06 深圳市携网科技有限公司 A kind of electronic evidence safety system and method based on block chain technology
CN109086585A (en) * 2018-07-10 2018-12-25 众安信息技术服务有限公司 History data processing method, system and computer readable storage medium
CN109034480A (en) * 2018-07-31 2018-12-18 湘潭大学 A kind of interconnection microgrid distributed optimization dispatching method based on intelligent contract
CN109118364A (en) * 2018-08-27 2019-01-01 深圳前海益链网络科技有限公司 Method, apparatus, computer equipment and the storage medium of asynchronous execution intelligence contract
CN109756558A (en) * 2018-12-04 2019-05-14 广州通链计算机智能技术有限责任公司 A kind of Byzantine failure tolerance common recognition algorithm based on asynchronous packet switching
CN109711192A (en) * 2018-12-24 2019-05-03 众安信息技术服务有限公司 Method of commerce and system between block catenary system construction method, node

Also Published As

Publication number Publication date
CN110245956A (en) 2019-09-17

Similar Documents

Publication Publication Date Title
CN110245956B (en) Asynchronous multi-chain based block chain transaction confirmation method and system
US11657036B2 (en) Methods and apparatus for a distributed database that enables deletion of events
Xie et al. zkbridge: Trustless cross-chain bridges made practical
CN110033243B (en) Main chain evidence storing method, system and storage medium based on block chain intelligent contract
US20200143366A1 (en) Methods for decentralized digital asset transfer and smart contract state transition
KR102566892B1 (en) Blockchain consensus method, device and system
CN111625593B (en) Block chain-based data processing method and device and computer equipment
CN111654465A (en) Power service cross-domain credible authentication system and method based on block chain
CN111080445A (en) Credible certificate storing method and system based on graph structure
CN112600671B (en) Data processing method, device, equipment and storage medium
CN112348518B (en) Block chain transaction certification method and device
CN109802967A (en) Block chain information method for tracing and system
CN110266763A (en) Block chain network implementation method, system and the storage medium of cross-network segment interconnection
CN113055188A (en) Data processing method, device, equipment and storage medium
CN114726517A (en) Method, system and consensus node for generating random number seeds on block chain
Charapko et al. Bridging paxos and blockchain consensus
CN114884652A (en) Method, system and consensus node for generating random number seed on block chain
Vizier et al. ComChain: A blockchain with Byzantine fault‐tolerant reconfiguration
CN115134069A (en) Block chain editing method and block chain link point
US11461502B2 (en) Apparatus and method of creating a data chain in a data structure that can be cryptographically proven to contain valid data
US20220383304A1 (en) Distributed network with consensus mechanism
Geng et al. Smart markers in smart contracts: Enabling multiway branching and merging in blockchain for decentralized runtime verification
US20230409450A1 (en) Consensus processing method and apparatus for blockchain network
CN113157450A (en) Method and apparatus for performing blocks in a blockchain system
CN113807851A (en) Block chain expandability realization method and system based on fragmentation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240306

Address after: Room 1179, W Zone, 11th Floor, Building 1, No. 158 Shuanglian Road, Qingpu District, Shanghai, 201702

Patentee after: Shanghai Zhongan Information Technology Service Co.,Ltd.

Country or region after: China

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Patentee before: ZHONGAN INFORMATION TECHNOLOGY SERVICE Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240415

Address after: Room 1179, W Zone, 11th Floor, Building 1, No. 158 Shuanglian Road, Qingpu District, Shanghai, 201702

Patentee after: Shanghai Zhongan Information Technology Service Co.,Ltd.

Country or region after: China

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Patentee before: ZHONGAN INFORMATION TECHNOLOGY SERVICE Co.,Ltd.

Country or region before: China