WO2018223995A1 - 实现区块链跨链通信的方法、装置及系统 - Google Patents

实现区块链跨链通信的方法、装置及系统 Download PDF

Info

Publication number
WO2018223995A1
WO2018223995A1 PCT/CN2018/090190 CN2018090190W WO2018223995A1 WO 2018223995 A1 WO2018223995 A1 WO 2018223995A1 CN 2018090190 W CN2018090190 W CN 2018090190W WO 2018223995 A1 WO2018223995 A1 WO 2018223995A1
Authority
WO
WIPO (PCT)
Prior art keywords
blockchain
transaction
communication packet
link
chain
Prior art date
Application number
PCT/CN2018/090190
Other languages
English (en)
French (fr)
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
Application filed by 众安信息技术服务有限公司 filed Critical 众安信息技术服务有限公司
Priority to KR1020197015800A priority Critical patent/KR20190104138A/ko
Priority to JP2019528642A priority patent/JP2019536380A/ja
Publication of WO2018223995A1 publication Critical patent/WO2018223995A1/zh
Priority to US16/432,816 priority patent/US20190289068A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • 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/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • 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/02Banking, e.g. interest calculation or account maintenance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • H04L2209/463Electronic voting

Definitions

  • the present invention relates to the field of blockchain technology, and in particular, to a method, device and system for implementing blockchain cross-chain communication.
  • a blockchain in a narrow sense is a chained data structure in which data blocks are sequentially connected in a chronological order, and cryptographically guaranteed non-tamperable and unforgeable distributed ledgers.
  • Blockchain in a broad sense refers to the use of blockchain data structures to verify and store data, the use of distributed node consensus algorithms to generate and update data, the use of cryptography to ensure the security of data transmission and access, and the use of automated script code.
  • a new distributed infrastructure and computing paradigm that composes smart contracts to program and manipulate data. Blockchain technology collectively maintains a reliable database through decentralization and trustworthiness to solve transaction trust and security issues.
  • Blockchain technology is not a single technology, but the result of the integration of multiple technologies. These technologies are combined with new structures to form a new way of recording, storing and expressing data, mainly involving the following four.
  • the distributed ledger That is, transaction accounting is done by multiple nodes distributed in different places, and each node records the complete account, so they can all participate in supervising the legality of the transaction, and can also jointly testify for it. Unlike traditional centralized accounting schemes, no single node can record accounts separately, thus avoiding the possibility of a single biller being controlled or being bribed to account for false accounts. On the other hand, since there are enough billing nodes, in theory, unless all the nodes are destroyed, the accounts will not be lost, thus ensuring the security of the account data.
  • the transaction information stored on the blockchain is public, but the account identity information is highly encrypted and can only be accessed if authorized by the data owner, thereby ensuring data security and personal privacy.
  • the consensus mechanism That is, how to reach a consensus among all the accounting nodes to determine the validity of a record is both a means of identification and a means of preventing tampering.
  • Smart contracts are based on trusted, non-tamperable data that can be automated to execute pre-defined rules and terms.
  • the network attributes of the blockchain are only used to the extent of similar LANs. Different blockchains are not only unable to communicate, but also have no trust. In addition, for a blockchain, we are also plagued by insufficient capacity. The global consensus mechanism provides security and greatly limits the development of the blockchain system. We cannot increase the number of nodes to improve transactions. Processing capacity.
  • the embodiments of the present invention provide a method, device, and system for implementing blockchain cross-chain communication, which can implement communication between different blockchains, thereby improving the transaction processing capability of the blockchain.
  • an embodiment of the present invention provides a method for implementing blockchain cross-chain communication, including: receiving a first communication packet sent by a first blockchain, where the first communication packet includes a first transaction, and the first transaction Corresponding to a change in the state of the database on the first blockchain; generating a second communication packet according to the first communication packet; and transmitting a second communication packet to the second blockchain.
  • transmitting the second communication packet to the second blockchain includes transmitting the second communication packet to the second blockchain according to the routing table.
  • transmitting the second communication packet to the second blockchain according to the routing table comprises: transmitting the second communication packet to the second blockchain according to the dynamic routing table.
  • the method of the first aspect is performed by a link, the link is a third block chain, and the third block chain is connected between the first block chain and the second block chain.
  • the second communication packet includes a second transaction, wherein generating the second communication packet according to the first communication package includes: generating a second transaction according to the first transaction, and writing the second transaction Entering into a third blockchain, wherein the first transaction includes a message content and a chain identifier of the second blockchain, and the second transaction includes a message content, a chain identifier of the second blockchain, and a chain identifier of the first blockchain .
  • generating the second transaction according to the first transaction comprises: verifying whether the first transaction is from the first blockchain, and obtaining a verification result; and when the verification result is yes, generating the first transaction according to the first transaction Second transaction.
  • verifying whether the first transaction is from the first blockchain and obtaining the verification result includes: using a voting-based consensus algorithm to verify whether the first transaction is from the first blockchain, and obtaining the verification result .
  • the link is increased by a number of blocks that increase with the number of transactions within the link, each of which includes a block header portion and a data portion.
  • the block header portion includes: a chain identification, a block height, a time, a hash value of the world state, a hash value of the block header portion of the previous block immediately adjacent to the block, and At least one of a block of the previous block immediately adjacent to the block, a certifier hash value, and a hash value of the data portion, the data portion including at least all transactions within the block.
  • an embodiment of the present invention provides a method for implementing blockchain cross-chain communication, including: generating a first transaction, and writing a first transaction into a first blockchain, the first transaction corresponding to the first a change in the state of the database on the blockchain; the first communication packet is sent to the link, the link is the third blockchain, and the first communication packet includes the first transaction, so that the third blockchain is based on the first communication packet A second communication packet is generated and a second communication packet is transmitted to the second blockchain.
  • the method of the second aspect is performed by a first blockchain, the first transaction comprising a message content and a chain identification of the second blockchain.
  • an embodiment of the present invention provides a method for implementing blockchain cross-chain communication, comprising: receiving a second communication packet sent by a link, wherein the second communication packet is caused by the link according to the first block
  • the first transaction sent by the chain is generated, the link is a third blockchain, the first transaction corresponds to a change of the database state on the first blockchain; the third transaction is generated according to the second communication packet, and the third transaction is written Into the second blockchain.
  • the method of the third aspect is performed by a second blockchain, the third transaction comprising a message content and a chain identification of the first blockchain.
  • an embodiment of the present invention provides an apparatus for implementing blockchain cross-chain communication, including: a receiving module, configured to receive a first communication packet sent by a first blockchain, where the first communication packet includes a first Transaction, the first transaction corresponds to a change of the database state on the first blockchain; a generating module, configured to generate a second communication packet according to the first communication packet; and a sending module, configured to send the second communication packet to the second blockchain .
  • the transmitting module transmits the second communication packet to the second blockchain according to the routing table.
  • the transmitting module transmits the second communication packet to the second blockchain according to the dynamic routing table.
  • the apparatus of the fourth aspect is a link, the link is a third block chain, and the third block chain is connected between the first block chain and the second block chain.
  • the second communication package includes a second transaction, and the generating module generates a second transaction according to the first transaction, wherein the device further includes: a writing module, configured to write the second transaction In the three-blockchain, the first transaction includes a message content and a chain identifier of the second blockchain, and the second transaction includes a message content, a chain identifier of the second blockchain, and a chain identifier of the first blockchain.
  • the apparatus of the fourth aspect further comprising: a verification module, configured to verify whether the first transaction is from the first blockchain, and obtain a verification result, wherein the generating module, when the verification result is yes, A second transaction is generated based on the first transaction.
  • the verification module verifies whether the first transaction is from the first blockchain based on a voting consensus algorithm and obtains the verification result.
  • the link is increased by a number of blocks that increase with the number of transactions within the link, each of which includes a block header portion and a data portion.
  • the block header portion includes: a chain identification, a block height, a time, a hash value of the world state, a hash value of the block header portion of the previous block immediately adjacent to the block, and At least one of a block of the previous block immediately adjacent to the block, a certifier hash value, and a hash value of the data portion, the data portion including at least all transactions within the block.
  • an embodiment of the present invention provides an apparatus for implementing blockchain cross-chain communication, including: a generating module, configured to generate a first transaction, and write a first transaction into a first blockchain, a transaction corresponding to a change in the state of the database on the first blockchain; a sending module, configured to send a first communication packet to the link, the link is a third blockchain, and the first communication packet includes the first transaction, so that The third blockchain generates a second communication packet according to the first communication packet, and transmits a second communication packet to the second blockchain.
  • the apparatus of the fifth aspect is a first blockchain, the first transaction comprising a message content and a chain identification of the second blockchain.
  • an embodiment of the present invention provides an apparatus for implementing blockchain cross-chain communication, including: a receiving module, configured to receive a second communication packet sent by a link, where the second communication packet is connected by a link Generating according to the first transaction sent by the first blockchain, the link is a third blockchain, and the first transaction corresponds to a change of the database state on the first blockchain; and a generating module is configured to generate according to the second communication packet The third transaction and the third transaction is written to the second blockchain.
  • the apparatus of the sixth aspect is a second blockchain, the third transaction comprising a message content and a chain identification of the first blockchain.
  • an embodiment of the present invention provides a system for implementing blockchain cross-chain communication, including: a plurality of blockchains; at least one link is caused by at least one link by each link
  • the link according to the fourth aspect is characterized in that at least one link is connected between a plurality of blockchains for implementing reception and forwarding of communication packets to implement communication between a plurality of blockchains.
  • At least one link is comprised of a plurality of links, and each of the at least one link is a blockchain.
  • the plurality of links are distributed in a tree structure or a mesh structure.
  • the plurality of links are distributed in a combination of a tree structure and a mesh structure.
  • Embodiments of the present invention provide a method, apparatus, and system for implementing blockchain cross-chain communication, by receiving a first communication packet including a transaction sent by a first blockchain, and generating a second communication packet according to the first communication packet. Then, the second communication packet is sent to the second blockchain, thereby realizing communication between the first blockchain and the second blockchain, thereby improving the transaction processing capability of the blockchain.
  • FIG. 1 is a flowchart of a method for implementing blockchain cross-chain communication according to an embodiment of the present invention.
  • FIG. 2 is a schematic flow chart of the Byzantine fault tolerance algorithm of the proxy rights according to an embodiment of the present invention.
  • FIG. 3 is a schematic structural diagram of a block by a link according to an embodiment of the present invention.
  • FIG. 4 is a schematic structural diagram of a link according to an embodiment of the present invention.
  • FIG. 5 is a flowchart of a method for implementing blockchain cross-chain communication according to another embodiment of the present invention.
  • FIG. 6 is a flowchart of a method for implementing blockchain cross-chain communication according to another embodiment of the present invention.
  • FIG. 7 is a flowchart of a method for implementing blockchain cross-chain communication according to another embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of an apparatus for implementing blockchain cross-chain communication according to an embodiment of the present invention.
  • FIG. 9 is a schematic structural diagram of an apparatus for implementing blockchain cross-chain communication according to another embodiment of the present invention.
  • FIG. 10 is a schematic structural diagram of an apparatus for implementing blockchain cross-chain communication according to another embodiment of the present invention.
  • FIG. 11 is a block diagram of a computer device for implementing blockchain cross-chain communication, in accordance with an exemplary embodiment of the present invention.
  • FIG. 1 is a flowchart of a method for implementing blockchain cross-chain communication according to an embodiment of the present invention.
  • the method of Figure 1 can be performed, for example, by a link, as shown in Figure 1, which includes the following.
  • the link is connected by the first blockchain and the second blockchain that are not forwarded by the communication packet, thereby enabling communication between the first blockchain and the second blockchain.
  • the link is like a router, and different blockchains can be received through a communication protocol, so that different blockchains can communicate with each other.
  • the communication protocol can be based on a communication protocol between a set of blockchains defined by the link, and the blockchain system conforming to the protocol can easily access the link.
  • an adaptation system can be additionally designed to assist the communication between the blockchain and the link without changing its own design.
  • the first blockchain and the second blockchain can be understood as a blockchain in a broad sense, that is, a blockchain data structure, a blockchain-based technology, and a blockchain database.
  • the architecture of the maintenance function which includes the corresponding computational paradigm that can be implemented on a computer.
  • the link is received by the first communication packet that can be transmitted by the first blockchain, the first communication packet including the first transaction.
  • the first transaction may include a message that the first blockchain is to be sent to the second blockchain, wherein the message may be an instruction, for example, the first blockchain commands the second blockchain to perform an action, or Store some data on the second blockchain.
  • the first communication packet may further include verification information, by which the link may be verified whether the first communication packet is secure and reliable, and whether it is from a trusted first blockchain to ensure the security of the communication process.
  • the first blockchain may store the first transaction in a database of the first blockchain, ie, the first transaction corresponds to a change in the state of the database on the first blockchain.
  • the transaction in the communication packet can be stored in the database to realize data traceability.
  • the second communication packet includes a message that the first blockchain is to be sent to the second blockchain in the first transaction.
  • the link may be connected to multiple blockchains, and the first communication packet may include information of the second blockchain, such as an IP address and/or a chain identifier, so that the link can obtain the second blockchain. And send a second communication packet to the second blockchain.
  • the information of the second blockchain may also be included in the second communication packet, so that the second blockchain identifies and receives the second communication packet.
  • the first communication packet and/or the second communication packet may further include information of the first blockchain, such as an IP address and/or a chain identifier, etc., for indicating the source of the communication packet.
  • the blockchain system can enhance the transaction processing capability and realize the horizontal expansion of the blockchain transaction capability.
  • the first blockchain can be responsible for the transaction of the advertising service
  • the second zone The blockchain can be responsible for the trading of the taxi business, so that sharing the transaction on two blockchains can alleviate the burden of one blockchain taking on all transactions.
  • the link can also open communication barriers between blockchains to achieve interconnection, interworking, and mutual trust between blockchains.
  • An embodiment of the present invention provides a method for implementing blockchain cross-chain communication, by receiving a first communication packet including a transaction sent by a first blockchain, and generating a second communication packet according to the first communication packet, and then The second communication packet is sent to the second blockchain, thereby realizing communication between the first blockchain and the second blockchain, thereby improving the transaction processing capability of the blockchain.
  • the link is sent by the second communication packet to the second blockchain according to the routing table.
  • the link may have a routing table, where the routing table includes routing information of each blockchain connected to the link, so that the link may send the second communication packet to the second blockchain according to the routing information.
  • the first communication packet includes a chain identifier of the second blockchain, and after receiving the first communication packet, the link may use the routing information corresponding to the chain identifier of the second blockchain in the routing table to perform the second communication. The packet is sent to the second blockchain.
  • the link is sent by the second communication packet to the second blockchain according to the dynamic routing table.
  • the routing table in the link can be updated in real time according to the change of each blockchain connected to the link to ensure the accuracy and efficiency of the communication process.
  • the link is a third block chain
  • the third block chain is connected between the first block chain and the second block chain for implementing reception and forwarding of the communication packet
  • second The communication package includes a second transaction
  • generating the second communication packet according to the first communication package includes: generating a second transaction according to the first transaction, and writing the second transaction into the third blockchain, wherein the first transaction
  • the message identifier includes a chain identifier of the second blockchain
  • the second transaction includes a message content, a chain identifier of the second blockchain, and a chain identifier of the first blockchain.
  • the link may be a blockchain, which facilitates the communication of the link from the recording link by each communication, thereby improving the security of the communication.
  • the link is a third blockchain, the third blockchain generates a second transaction according to the first transaction in the first communication packet, and writes the second transaction into the third blockchain, wherein, the second The transaction may include the message content, the chain identifier of the second blockchain, and the chain identifier of the first blockchain, so as to ensure that the complete communication information is recorded, which facilitates the traceability process.
  • the link may verify whether the first transaction is from the first blockchain and obtain a verification result; when the verification result is yes, generate a second transaction according to the first transaction.
  • the link is verified by whether the first transaction is from the first blockchain.
  • the verification result is yes
  • the second transaction is generated according to the first transaction, and then the second communication packet is generated, and when the verification result is no.
  • the operation ends or a feedback message is sent to the first blockchain. This can verify whether the first transaction has been tampered with, which can further improve the security of the communication process.
  • the link is made up of a number of blocks that increase as the number of transactions within the link increases.
  • the transaction in the link may include a second transaction for communication, and may also include a transaction for other purposes, which is not limited by the present invention.
  • the link may be verified by a vote-based consensus algorithm whether the first transaction is from the first blockchain and the verification result is obtained.
  • a voting-based consensus algorithm can be an agent-right Byzantine fault-tolerant consensus algorithm.
  • the link since the link is itself a blockchain, it typically has several nodes.
  • the blockchain of a node can operate normally, but in fact, the role of the distributed ledger and the Byzantine fault-tolerant consensus algorithm can be reflected on multiple nodes.
  • the consensus algorithm used the recommended number of nodes is at least 4.
  • FIG. 2 is a schematic flow chart of a proxy rights Byzantine fault tolerance algorithm according to an embodiment of the present invention.
  • the proxy-based Byzantine Fault Tolerance Algorithm (DS-PBFT) of the link in this embodiment is similar in flow to the flow of the PBFT algorithm.
  • DS-PBFT Byzantine Fault Tolerance Algorithm
  • the link is verified by the Byzantine fault-tolerant algorithm using the proxy rights to the transaction received from the sub-link (ie the first transaction).
  • the design idea is as follows:
  • the Workload Proof Algorithm is a Byzantine Fault Tolerant (BFT) consensus algorithm that is applied to Bitcoin and Ethereum. Since the release of Bitcoin, the workload proof algorithm has proved its reliability, but its waste of resources is also obvious to all.
  • the Probability Proof Algorithm is a consensus algorithm proposed to solve the problem of waste of workload proof algorithm resources.
  • the voting power is used to replace the power of the miners in the voting equity pool. The punishment mechanism ensures the integrity of the voters.
  • computing power cannot be dispersed. A miner with a fixed power cannot mine at the same time and keep the total power. Double, but a voter with a certain interest can vote for every possible block, as long as any block becomes the future winner, it can guarantee that its rights will not be damaged. However, this has great security risks because it greatly reduces the cost of doing evil for the perpetrators.
  • Raft as a commonly used efficient consensus algorithm, its biggest drawback is that it can not prevent Byzantine nodes, a Byzantine leader node with a strong network configuration will bring a devastating blow to the Raft algorithm consensus.
  • some algorithms combining Raft and BFT were proposed. Taking PBFT (Practical Byzantine Fault Tolerance) as an example, some reliable nodes are called verifiers, and the verifier has the opportunity to become a leader. In each round of blockchain generation, there will be one. The new certifier will default to the leader of the round, and the leader will be responsible for packaging the new block and broadcasting a block that he or she considers reasonable to all certifiers.
  • PBFT Practical Byzantine Fault Tolerance
  • the common node only synchronizes the new block sent from the leader node and does not participate in the consensus.
  • the security of the consensus algorithm depends only on the number of verification nodes. The increase of the number of common nodes cannot be improved. Byzantine fault-tolerant security.
  • the participation of non-verified nodes has increased in the new consensus mechanism.
  • a verification node corresponds to a verifier account, and the non-authenticator can earn his own interests by entrusting the entitlement to the verifier and voting by the verifier proxy.
  • proxy certifier Because of the relationship of interests, non-verifiers will carefully choose the proxy certifier, thus achieving the defect that all people participate in the consensus without the efficiency reduction caused by all nodes participating in the consensus.
  • DS-PBFT proxy rights Byzantine Fault Tolerance Algorithm
  • the link is used as a consensus algorithm by using the proxy rights Byzantine fault-tolerance algorithm implemented by the verifier vote, so that all nodes participate in the consensus of the link, and no efficiency is reduced by all nodes participating in the consensus. defect.
  • the sub-chain can also use the proxy rights Byzantine fault tolerance algorithm to verify the transaction (ie, the second transaction) received from the link.
  • each block in the third blockchain includes a block header portion and a data portion (Data).
  • the link is composed of a number of blocks having an increasing number of blocks, each of which may include a number of transactions, which may be arranged in chronological order.
  • the block header portion of each block may include the generation time of the block, the location, and verification information when the block is generated.
  • the block header portion includes: a Chain ID, a Height, a Time, a World Hash, and a previous one adjacent to the block.
  • FIG. 3 is a schematic structural diagram of a block by a link according to an embodiment of the present invention.
  • each block in the third block chain may further include a voting part (Last Commit).
  • the voting portion can be used to establish a link between the block and the previous block.
  • the block consensus requires two rounds of voting that exceed 2/3 of the verification node's equity. All 2/3 verification node votes (Commit) of the second round will be temporarily saved, and will be placed in the voting part of the block (Last Commit) when the next block is proposed. So the voting portion of a block includes more than 2/3 of the verifier's votes in the previous round of voting.
  • the block header portion includes: a chain ID (Chain ID), a block height (Hight), a time (Time), a world state hash value (App Hash), and a region of a previous block immediately adjacent to the block.
  • the data section includes all transactions within the block. Among them, a transaction refers to a change in the state of the database.
  • FIG. 4 is a schematic structural diagram of a link according to an embodiment of the present invention.
  • the link may be connected to multiple sub-chains through a Cross Blockchain Communication Protocol (CBCP).
  • CBCP Cross Blockchain Communication Protocol
  • the link includes a routing information management module, a communication packet processor, and a distributor.
  • the routing information management module stores a routing table, and the communication packet processor can parse and generate the first received communication packet.
  • the second communication packet is then forwarded by the distributor according to the routing table.
  • the routing table can be a dynamically updated routing table.
  • FIG. 5 is a flowchart of a method for implementing blockchain cross-chain communication according to another embodiment of the present invention.
  • the method of FIG. 5 is performed by the first blockchain, and the specific process can be referred to the description of FIG. As shown in FIG. 5, the method includes the following.
  • the link is a third block chain
  • the first communication packet includes a first transaction
  • the third block chain generates a second communication packet according to the first communication packet
  • the second blockchain transmits a second communication packet.
  • the first transaction includes a message content and a chain identifier of the second blockchain.
  • FIG. 6 is a flowchart of a method for implementing blockchain cross-chain communication according to another embodiment of the present invention.
  • the method of FIG. 7 is performed by a second blockchain, and the specific process can be referred to the description of FIG. As shown in FIG. 6, the method includes the following.
  • the second communication packet is sent by the receiving link, where the second communication packet is generated by the first transaction sent according to the first blockchain, and the link is the third block chain, and the first transaction corresponds to the first transaction.
  • the second block chain receives the second communication packet, and when processing the second transaction, may generate a third transaction, where the third transaction may include message content, a chain identifier of the first blockchain, and a second region. Chain identification of the blockchain.
  • the second blockchain can write the third transaction into the second blockchain to enable traceability of the data.
  • FIG. 7 is a flowchart of a method for implementing blockchain cross-chain communication according to another embodiment of the present invention.
  • the method of FIG. 7 is an example of FIGS. 1, 5, and 6, and a detailed description is omitted as appropriate. As shown in FIG. 7, the method includes the following.
  • the sub-chain A generates a first communication packet, where the first communication packet includes a first transaction.
  • the sub-chain A sends a first communication packet to the link.
  • the link is verified by the Byzantine fault tolerance consensus algorithm using the proxy rights to determine whether the first transaction is from the first blockchain and the verification result is obtained.
  • the link is written to the blockchain by the second transaction generated as follows.
  • the link sends a second communication packet to the sub-chain B according to the dynamic routing table.
  • the sub-chain B generates a third transaction according to the second communication packet.
  • the third transaction is written into the blockchain.
  • the link is responsible for maintaining some state about the sub-chain.
  • the sub-chain wants to communicate with the link, it can register on the link. It includes the chain ID of the sub-chain, the information of the node on the sub-chain, the type of the asset on the sub-chain, and so on. In this way, the link is assisted by the parsing of the corresponding sub-chain when receiving the communication request, and the forwarding operation is completed.
  • the link needs to receive the latest block information of the sub-chain in real time and the voting of the latest block to satisfy the maintenance of the basic state of the sub-chain, verify the transaction from the sub-chain and so on.
  • the link needs to maintain the dynamic verification node information on all the sub-chains to verify whether a transaction from the sub-chain is legal.
  • the sub-chain also needs to maintain the corresponding information on the link to determine that a transaction is indeed sent by the link. Including the identity of the link, the link from the verification node information, the link from the latest block and voting.
  • FIG. 8 is a schematic structural diagram of an apparatus 800 for implementing blockchain cross-chain communication according to an embodiment of the present invention.
  • the apparatus 800 includes: a receiving module 810, configured to receive a first communication packet sent by a first blockchain, where the first communication packet includes a first transaction, and the first transaction corresponds to a database on the first blockchain. a change of the state; a generating module 820, configured to generate a second communication packet according to the first communication packet; and a sending module 830, configured to send the second communication packet to the second blockchain.
  • An embodiment of the present invention provides a device for implementing blockchain cross-chain communication, by receiving a first communication packet sent by a first blockchain, and generating a second communication packet according to the first communication packet, and then transmitting the second communication packet.
  • the second blockchain is sent to the communication between the first blockchain and the second blockchain, thereby improving the transaction processing capability of the blockchain.
  • the sending module 830 sends the second communication packet to the second blockchain according to the routing table.
  • the sending module 830 sends the second communication packet to the second blockchain according to the dynamic routing table.
  • the device 800 is a link, the link is a third block chain, and the third block chain is connected between the first block chain and the second block chain.
  • the receiving and forwarding of the communication packet is implemented.
  • the second communication packet includes a second transaction, and the generating module generates a second transaction according to the first transaction.
  • the device 800 further includes: a writing module 840, configured to write the second transaction into the third transaction.
  • the first transaction includes a message content and a chain identifier of the second blockchain
  • the second transaction includes a message content, a chain identifier of the second blockchain, and a chain identifier of the first blockchain.
  • the apparatus 800 further includes: a verification module 850, configured to verify whether the first transaction is from the first blockchain, and obtain a verification result, where the generating module 820, when the verification result is yes, A second transaction is generated based on the first transaction.
  • a verification module 850 configured to verify whether the first transaction is from the first blockchain, and obtain a verification result, where the generating module 820, when the verification result is yes, A second transaction is generated based on the first transaction.
  • the verification module 850 uses a voting-based consensus algorithm to verify whether the first transaction is from the first blockchain and obtains a verification result.
  • the link is increased by a number of blocks that increase with the number of transactions within the link, each of which includes a block header portion and a data portion.
  • the block header portion includes: a chain identifier, a block height, a time, a hash value of the world state, a hash value of the block header portion of the previous block immediately adjacent to the block, At least one of a block of the previous block immediately adjacent to the block, a certifier hash value, and a hash value of the data portion, the data portion includes at least all transactions within the block.
  • FIG. 9 is a schematic structural diagram of an apparatus 900 for implementing blockchain cross-chain communication according to another embodiment of the present invention.
  • the apparatus 900 includes: a generating module 910, configured to generate a first transaction, and write a first transaction into a first blockchain, where the first transaction corresponds to a change in a database state on the first blockchain a sending module 920, configured to send a first communication packet to the link, the link is a third blockchain, and the first communication packet includes a first transaction, so that the third blockchain generates a second according to the first communication packet.
  • the communication packet is transmitted, and the second communication packet is sent to the second blockchain.
  • the first transaction includes a message content and a chain identifier of the second blockchain.
  • FIG. 10 is a schematic structural diagram of an apparatus 1000 for implementing blockchain cross-chain communication according to another embodiment of the present invention.
  • the apparatus 1000 includes: a receiving module 1010, configured to receive a second communication packet sent by a link, where the second communication packet is generated by a link by a first transaction sent according to the first blockchain, the chain The routing is a third blockchain, the first transaction corresponds to a change of the database state on the first blockchain; the generating module 1020 is configured to generate a third transaction according to the second communication packet, and write the third transaction into the second transaction Blockchain.
  • the third transaction includes a message content and a chain identifier of the first blockchain.
  • Embodiments of the present invention provide a system for implementing blockchain cross-chain communication, including: a plurality of blockchains; at least one link is composed of at least one link by each of the links as shown in FIG.
  • the link consists of at least one link connected between a plurality of blockchains for implementing reception and forwarding of communication packets to implement communication between a plurality of blockchains.
  • At least one link is comprised of a plurality of links, and each of the at least one link is a blockchain.
  • each of the plurality of links may be connected to multiple sub-chains, wherein the link functions as a router, and the communication packet is parsed and forwarded according to the communication protocol, and the network topology of the system is dynamically maintained. structure.
  • the final structure of the link is affected by many factors. The most important factor is the number of blockchains that need to communicate. As the blockchain of the access chain network gradually increases, the number of blockchains connected to one link will increase. When the load exceeds a certain link, the way of increasing the link can be adopted. To share the pressure.
  • the plurality of links are distributed in a tree structure or a mesh structure.
  • the tree structure means that the parent node of each node is a unique topology structure
  • the mesh structure means that the parent node of each node is not a unique topology structure
  • the topology structure forms a hierarchical structure
  • the topological relationship corresponding points are Layer relationship.
  • the plurality of links described above include an upper chain and an underlying chain.
  • the underlying chain is responsible for connecting the upper chain and is responsible for maintaining communication between the upper chains. That is, if the target chain is in the same upper chain, then it communicates directly through the upper chain. If the target chain is not in the same upper chain, you need to communicate through the underlying chain.
  • the bottom layer constitutes the backbone by the backbone.
  • the number of layers of multiple links may be set according to actual conditions, and the present invention does not limit this.
  • BGP Border Gateway Protocol
  • the plurality of links are distributed in a combination of a tree structure and a mesh structure.
  • FIG. 11 is a block diagram of a computer device 1100 for implementing blockchain cross-chain communication, in accordance with an exemplary embodiment of the present invention.
  • apparatus 1100 includes a processing component 1110 that further includes one or more processors, and memory resources represented by memory 1120 for storing instructions executable by processing component 1110, such as an application.
  • An application stored in memory 1120 can include one or more modules each corresponding to a set of instructions.
  • processing component 1110 is configured to execute instructions to perform the above-described methods of implementing blockchain cross-chain communication.
  • Apparatus 1100 can also include a power supply component configured to perform power management of apparatus 1100, a wired or wireless network interface configured to connect apparatus 1100 to the network, and an input/output (I/O) interface.
  • the device 1100 can operate based on an operating system stored in the memory 1120, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM or the like.
  • a non-transitory computer readable storage medium when instructions in the storage medium are executed by a processor of the apparatus 1100, enabling the apparatus 1100 to perform a method of implementing blockchain cross-chain communication, comprising: receiving a first a first communication packet sent by the blockchain, the first communication packet includes a first transaction, the first transaction corresponds to a change of a database state on the first blockchain; the second communication packet is generated according to the first communication packet; and the second communication zone is generated The blockchain sends a second communication packet.
  • the disclosed systems, devices, and methods may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the functions may be stored in a computer readable storage medium if implemented in the form of a software functional unit and sold or used as a standalone product.
  • the technical solution of the present invention which is essential or contributes to the prior art, or a part of the technical solution, may be embodied in the form of a software product, which is stored in a storage medium, including
  • the instructions are used to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and the like, and can store a program check code. Medium.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种实现区块链跨链通信的方法、装置及系统,该方法包括:接收第一区块链发送的第一通信包,所述第一通信包包括第一交易,所述第一交易对应所述第一区块链上的数据库状态的改变;根据所述第一通信包生成第二通信包;向第二区块链发送所述第二通信包。本发明通过接收第一区块链发送的包括交易的第一通信包,并根据第一通信包生成第二通信包,然后将第二通信包发送给第二区块链,从而实现了第一区块链和第二区块链之间的通信,进而提高了区块链的交易处理能力。

Description

实现区块链跨链通信的方法、装置及系统
本申请要求2017年6月7日提交的申请号为No.CN201710423247.8的中国申请的优先权,通过引用将其全部内容并入本文。
技术领域
本发明涉及区块链技术领域,具体涉及一种实现区块链跨链通信的方法、装置及系统。
发明背景
狭义上的区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。广义上的区块链是指利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。区块链技术通过去中心化、去信任的方式集体维护一个可靠数据库,解决交易的信任和安全问题。
区块链技术并不是一种单一的技术,而是多种技术整合的结果,这些技术以新的结构组合在一起,形成了一种新的数据记录、存储和表达的方式,主要涉及以下四种技术:
一、分布式账本。即交易记账由分布在不同地方的多个节点共同完成,而且每一个节点都记录的是完整的账目,因此它们都可以参与监督交易合法性,同时也可以共同为其作证。不同于传统的中心化记账方案,没有任何一个节点可以单独记录账目,从而避免了单一记账人被控制或者被贿赂而记假账的可能性。另一方面,由于记账节点足够多,理论上讲除非所有的节点被破坏,否则账目就不会丢失,从而保证了账目数据的安全性。
二、非对称加密和授权技术。存储在区块链上的交易信息是公开的,但是账户身份信息是高度加密的,只有在数据拥有者授权的情况下才能访问到,从而保证了数据的安全和个人的隐私。
三、共识机制。即所有记账节点之间如何达成共识,去认定一个记录的有效性,这既是认定的手段,也是防止篡改的手段。
四、智能合约。智能合约是基于可信的不可篡改的数据,可以自动化地执行一些预先定义好的规则和条款。
目前阶段区块链的网络属性仅仅被发挥到类似局域网的程度,不同的区块链之间不仅无法联通,更无信任可言。此外,对一条区块链而言,我们也饱受其能力不足的困扰,全局共识机制在提供安全性的同时也大大限制了区块链系统的发展,我们无法通过增加节点的方式提高交易的处理能力。
发明内容
有鉴于此,本发明实施例提供了一种实现区块链跨链通信的方法、装置及系统,能够实现不同区块链之间的通信,进而提高了区块链的交易处理能力。
第一方面,本发明的实施例提供了一种实现区块链跨链通信的方法,包括:接收第一区块链发送的第一通信包,第一通信包包括第一交易,第一交易对应第一区块链上的数据库状态的改变;根据第一通信包生成第二通信包;向第二区块链发送第二通信包。
在本发明某些实施例中,向第二区块链发送第二通信包,包括:根据路由表向第二区块链发送第二通信包。
在本发明某些实施例中,根据路由表向第二区块链发送第二通信包,包括:根据动态路由表向第二区块链发送第二通信包。
在本发明某些实施例中,第一方面的方法由链路由执行,链路由为第三区块链,第三区块链连接在第一区块链和第二区块链之间,用于实现通信包的接收和转发,第二通信包包括第二交易,其中,根据第一通信包生成第二通信包,包括:根据第一交易生成第二交易,并将第二交易写入第三区块链中,其中,第一交易包括消息内容和第二区块链的链标识,第二交易包括消息内容、第二区块链的链标识和第一区块链的链标识。
在本发明某些实施例中,根据第一交易生成第二交易,包括:验证第一交易是否来自第一区块链,并得到验证结果;在验证结果为是时,根据第一交易生成第二交易。
在本发明某些实施例中,验证第一交易是否来自第一区块链,并得到验证结果,包括:采用基于投票的共识算法验证第一交易是否来自第一区块链,并得到验证结果。
在本发明某些实施例中,链路由具有随着链路由内的交易的增加而增加的若干个区块,其中每一个区块均包括区块头部分和数据部分。
在本发明某些实施例中,区块头部分包括:链标识、区块高度、时间、世界状态的哈希值、与该区块紧邻的前一个区块的区块头部分的哈希值、与该区块紧邻的前一个区块的分块、验证人哈希值、数据部分的哈希值中的至少一个,数据部分至少包括该区块内的所有交易。
第二方面,本发明的实施例提供了一种实现区块链跨链通信的方法,包括:生成第一交易,并将第一交易写入第一区块链中,第一交易对应第一区块链上的数据库状态的改变;向链路由发送第一通信包,链路由为第三区块链,第一通信包包括第一交易,以便第三区块链根据第一通信包生成第二通信包,并向第二区块链发送第二通信包。
在本发明某些实施例中,第二方面的方法由第一区块链执行,第一交易包括消息内容和第二区块链的链标识。
第三方面,本发明的实施例提供了一种实现区块链跨链通信的方法,包括:接收链路由发送的第二通信包,其中第二通信包由链路由根据第一区块链发送的第一交易生成,链路由为第三区块链,第一交易对应第一区块链上的数据库状态的改变;根据第二通信包生成第三交易,并将第三交易写入第二区块链。
在本发明某些实施例中,第三方面的方法由第二区块链执行,第三交易包括消息内容和第一区块链的链标识。
第四方面,本发明的实施例提供了一种实现区块链跨链通信的装置,包括:接收模块,用于接收第一区块链发送的第一通信包,第一通信包包括第一交易,第一交易对应第一区块链上的数据库状态的改变;生成模块,用于根据第一通信包生成第二通信包;发送模块,用于向第二区块链发送第二通信包。
在本发明某些实施例中,发送模块根据路由表向第二区块链发送第二通信包。
在本发明某些实施例中,发送模块根据动态路由表向第二区块链发送第二通信包。
在本发明某些实施例中,第四方面的装置为链路由,链路由为第三区块链,第三区块链连接在第一区块链和第二区块链之间,用于实现通信包的接收和转发,第二通信包包括第二交易,生成模块根据第一交易生成第二交易,其中,该装置还包括:写入模块,用于将第二交易写入第三区块链中,其中,第一交易包括消息内容和第二区块链的链标识,第二交易包括消息内容、第二区块链的链标识和第一区块链的链标识。
在本发明某些实施例中,第四方面的装置还包括:验证模块,用于验证第一交易是否来自第一区块链,并得到验证结果,其中,生成模块在验证结果为是时,根据第一交易生成第二交易。
在本发明某些实施例中,验证模块采用基于投票共识算法验证第一交易是否来自第一区块链,并得到验证结果。
在本发明某些实施例中,链路由具有随着链路由内的交易的增加而增加的若干个区块,其中每一个区块均包括区块头部分和数据部分。
在本发明某些实施例中,区块头部分包括:链标识、区块高度、时间、世界状态的哈希值、与该区块紧邻的前一个区块的区块头部分的哈希值、与该区块紧 邻的前一个区块的分块、验证人哈希值、数据部分的哈希值中的至少一个,数据部分至少包括该区块内的所有交易。
第五方面,本发明的实施例提供了一种实现区块链跨链通信的装置,包括:生成模块,用于生成第一交易,并将第一交易写入第一区块链中,第一交易对应第一区块链上的数据库状态的改变;发送模块,用于向链路由发送第一通信包,链路由为第三区块链,第一通信包包括第一交易,以便第三区块链根据第一通信包生成第二通信包,并向第二区块链发送第二通信包。
在本发明某些实施例中,第五方面的装置为第一区块链,第一交易包括消息内容和第二区块链的链标识。
第六方面,本发明的实施例提供了一种实现区块链跨链通信的装置,包括:接收模块,用于接收链路由发送的第二通信包,其中第二通信包由链路由根据第一区块链发送的第一交易生成,链路由为第三区块链,第一交易对应第一区块链上的数据库状态的改变;生成模块,用于根据第二通信包生成第三交易,并将第三交易写入第二区块链。
在本发明某些实施例中,第六方面的装置为第二区块链,第三交易包括消息内容和第一区块链的链标识。
第七方面,本发明的实施例提供了一种实现区块链跨链通信的系统,包括:多个区块链;至少一个链路由,至少一个链路由中的每个链路由为如第四方面所述的链路由,至少一个链路由连接在多个区块链之间,用于实现通信包的接收和转发,以实现多个区块链之间的通信。
在本发明某些实施例中,至少一个链路由包括多个链路由,至少一个链路由中的每个链路由为区块链。
在本发明某些实施例中,多个链路由呈树状结构或网状结构分布。
在本发明某些实施例中,多个链路由呈树状结构和网状结构结合的形式分布。
本发明实施例提供了一种实现区块链跨链通信的方法、装置及系统,通过接收第一区块链发送的包括交易的第一通信包,并根据第一通信包生成第二通信包,然后将第二通信包发送给第二区块链,从而实现了第一区块链和第二区块链之间的通信,进而提高了区块链的交易处理能力。
附图简要说明
图1所示为本发明一实施例提供的实现区块链跨链通信的方法的流程图。
图2所示为本发明所述的链路由在一种实施方式下的代理权益拜占庭容错算法的流程示意图。
图3所示为本发明一实施例提供的链路由的区块的结构示意图。
图4所示为本发明一实施例提供的链路由的结构示意图。
图5所示为本发明另一实施例提供的实现区块链跨链通信的方法的流程图。
图6所示为本发明另一实施例提供的实现区块链跨链通信的方法的流程图。
图7所示为本发明另一实施例提供的实现区块链跨链通信的方法的流程图。
图8所示为本发明一实施例提供的实现区块链跨链通信的装置的结构示意图。
图9所示为本发明另一实施例提供的实现区块链跨链通信的装置的结构示意图。
图10所示为本发明另一实施例提供的实现区块链跨链通信的装置的结构示意图。
图11所示是根据本发明一示例性实施例示出的用于实现区块链跨链通信的计算机装置的框图。
实施本发明的方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1所示为本发明一实施例提供的实现区块链跨链通信的方法的流程图。图1的方法例如可以由链路由执行,如图1所示,该方法包括如下内容。
110:接收第一区块链发送的第一通信包,第一通信包包括第一交易,第一交易对应第一区块链上的数据库状态的改变。
链路由通过与不能实现通信包转发的第一区块链和第二区块链连接,从而实现第一区块链和第二区块链之间的通信。
具体地,链路由像路由器一样,可以通过通信协议接纳不同的区块链,进而使得不同的区块链之间可以互信互通。该通信协议可以是基于链路由制定的一套区块链之间的通信协议,符合这套协议的区块链系统可以轻松接入链路由。
现有的一些区块链,如比特币,以太坊等,是先于链路由存在的,而且在设计之初这些现有的区块链也不具有与其它区块链通信的功能。对于先于链路由存在的区块链系统,在不改变其本身设计的基础上,可以额外设计一套适配系统来辅助区块链与链路由之间的通信。
根据本发明一实施例,第一区块链和第二区块链可以作广义上的区块链理解,即包括区块链数据结构的、基于区块链技术实现的、具备区块链数据库维护功能的架构,该架构包括相应的计算范式,可以在计算机上实现。
具体地,当第一区块链和第二区块链之间需要通信时,链路由可以接收第一区块链发送的第一通信包,该第一通信包包括第一交易。第一交易可以包括第一区块链要发送给第二区块链的消息,其中,该消息可以是一种指令,例如,第一区块链命令第二区块链执行某一动作,或者将某数据存储在第二区块链上。
进一步地,第一通信包还可以包括验证信息,链路由可以通过该验证信息验证第一通信包是否安全可信,是否来自可信的第一区块链,以保证通信过程的安全。
具体地,第一区块链可以将第一交易存储在第一区块链的数据库中,即第一交易对应第一区块链上的数据库状态的改变。这样,第一区块链每发送一次通信包,就可以将通信包中的交易存在数据库中,以实现数据的溯源。
120:根据第一通信包生成第二通信包。
具体地,第二通信包包括第一交易中第一区块链要发送给第二区块链的消息。
130:向第二区块链发送第二通信包。
具体地,链路由可以连接多个区块链,第一通信包中可以包括第二区块链的信息,如IP地址和/或链标识等,使得链路由能获取第二区块链的信息并向第二区块链发送第二通信包。类似地,第二通信包中也可以包括第二区块链的信息,以便于第二区块链识别并接收第二通信包。进一步地,第一通信包和/或第二通信包中还可以包括第一区块链的信息,如IP地址和/或链标识等,用于指示通信包的来源。
通过链路由来连接多个区块链,可以增强区块链系统对交易的处理能力,实现区块链交易能力的水平扩展,例如,第一区块链可以负责广告业务的交易,第二区块链可以负责打车业务的交易,这样将交易分担在两个区块链上,可以减轻一个区块链承担所有交易的负担。此外,链路由还可以打通区块链之间的通信壁垒,实现区块链之间的互联、互通、互信。
本发明实施例提供了一种实现区块链跨链通信的方法,通过接收第一区块链发送的包括交易的第一通信包,并根据第一通信包生成第二通信包,然后将第二通信包发送给第二区块链,从而实现了第一区块链和第二区块链之间的通信,进而提高了区块链的交易处理能力。
根据本发明的实施例,在130中,链路由可以根据路由表向第二区块链发送第二通信包。
具体地,链路由中可以存有路由表,该路由表包括与链路由连接的各个区块链的路由信息,使得链路由可以根据路由信息向第二区块链发送第二通信包。例如,第一通信包中包括第二区块链的链标识,链路由接收第一通信包后,可以根据路由表中与第二区块链的链标识对应的路由信息,将第二通信包发送给第二区块链。
根据本发明的实施例,链路由可以根据动态路由表向第二区块链发送第二通信包。
具体地,链路由中的路由表可以根据与链路由连接的各个区块链的变化而实时更新,以保证通信过程的准确和高效。
根据本发明的实施例,链路由为第三区块链,第三区块链连接在第一区块链和第二区块链之间,用于实现通信包的接收和转发,第二通信包包括第二交易,其中,根据第一通信包生成第二通信包,包括:根据第一交易生成第二交易,并将第二交易写入第三区块链中,其中,第一交易包括消息内容和第二区块链的链标识,第二交易包括消息内容、第二区块链的链标识和第一区块链的链标识。
根据本发明一实施例,链路由可以是区块链,这样便于链路由记录链路由完成的每一次通信,提高通信的安全性。例如,链路由为第三区块链,第三区块链根据第一通信包中的第一交易生成第二交易,并把第二交易写入第三区块链中,其中,第二交易可以包括消息内容、第二区块链的链标识和第一区块链的链标识,这样可以保证记录完整的通信信息,为溯源过程提供方便。
根据本发明的实施例,链路由可以验证第一交易是否来自第一区块链,并得到验证结果;在验证结果为是时,根据第一交易生成第二交易。
具体地,链路由可以对第一交易是否来自第一区块链进行验证,当验证结果为是时,则根据第一交易生成第二交易,进而生成第二通信包,当验证结果为否时,则结束操作,或者向第一区块链发送反馈消息。这样可以验证第一交易是否遭到篡改,可以进一步提高通信过程的安全性。
根据本发明一实施例,链路由具有随着链路由内的交易的增加而增加的若干个区块。当然,链路由中的交易可以包括用于通信的第二交易,也可以包括其他用途的交易,本发明对此不做限定。
根据本发明的实施例,链路由可以采用基于投票的共识算法,验证第一交易是否来自第一区块链,并得到验证结果。例如,基于投票的共识算法可以是代理权益拜占庭容错共识算法。
具体地,由于所述链路由本身就是一条区块链,因此通常具有若干节点。理论上一个节点的区块链是可以正常运行的,但实际上,分布式账本和拜占庭容错共识算法的作用要在多个节点上才能体现出来,在使用的共识算法中,建议节点数至少为4个。
图2为本发明所述的链路由在一种实施方式下的代理权益拜占庭容错算法的流程示意图。如图2所示,该实施方式下的链路由的代理权益拜占庭容错算法(DS-PBFT)在流程上与PBFT算法的流程类似。
链路由采用代理权益拜占庭容错算法对从子链接收到的交易(即第一交易)进行验证,其设计思路如下:
工作量证明算法(PoW)是被应用在比特币和以太坊上的一种拜占庭容错(BFT)共识算法。自比特币开始发行至今,工作量证明算法已经证明了其可靠性,但其对资源的浪费也是有目共睹。权益证明算法(PoS)是一种为了解决工作量证明算法资源浪费问题而提出的共识算法,通过投票人在投票权益池中的权益比重来代替矿工在挖矿时贡献的算力,配以相应的处罚机制,确保投票人的诚信。然而,算力和权益之间还是有很大区别的,最重要的一点区别就是在于算力是不能分散的,一个算力固定的矿工不可以同时在两条链上挖矿且保持总算力翻倍,但是拥有一定权益的投票人却可以对每一个可能的区块投票,只要任何一个区块成为了将来的胜出者就可以保证自己的权益不受损。但这样做是有很大的安全隐患的,因为这样大大降低了作恶者所需要的作恶成本。
Raft作为一种常用的高效共识算法,其最大的弊病在于不能防止拜占庭节点,一个拥有强大网络配置的拜占庭领导者节点会给Raft算法的共识带来毁灭性打击。在拜占庭容错共识算法的发展历程中,一些结合Raft和BFT的算法被提出来。以PBFT(Practical Byzantine Fault Tolerance,实用拜占庭容错算法)为例,一部分可靠的节点被称为验证人,验证人具有成为领导者的机会,在每一轮区块链生成的过程中,都会有一个新的验证人会默认成为该轮的领导者,领导者负责打包新的区块,并将一个自己认为合理的区块广播给所有验证人。经过两轮超过2/3的全部验证人的投票确认,新的区块才会被共识。这种共识方式大大提升了出块速度,而且只要保证小于1/3的验证人不是拜占庭节点,区块就可以被持续生产。
不可否认的是,PBFT中所使用的拜占庭节点容错算法对于保证1/3以下拜占庭节点的网络的安全是可靠的。但是,在实际应用中,尤其是当与经济利益相关时,即使验证人是经过挑选的可靠节点,发明人考虑也不能单纯的依赖没有处罚机制的1/3的安全,保证安全必须要做到赏务速而后有劝,罚务速而后有惩。而其中的赏与罚必须是与经济利益直接关联的。因此,发明人对原有的共识机制进行了修改,使验证人投票的权重与其所抵押的链上代币权益相对应。这样一来,原本需要超过2/3投票人才能确认生成区块的机制被修改成超过2/3的总权益。此外,在PBFT共识算法中,普通节点只是在同步来自领导节点发来的新区块,并不参与共识,导致其共识算法的安全性仅依赖于验证节点的数量,普通节点的数量增加并不能提升拜占庭容错的安全性。新的共识机制中增加了非验证节点的参与性。一个验证节点对应一个验证人账号,非验证人可以通过将权益委托给验证人,通过验证人代理投票的方式赚取属于自己的利益。因为利益的关系,非验证人会慎重选择代理验证人,从而做到了所有人都参与到共识中,而又没有所有节点参与共识而带来的效率降低的缺陷。这样的共识算法发明人称之为代理权益拜占庭容错算法(DS-PBFT)。
上述方案中,链路由使用通过验证人投票实现的代理权益拜占庭容错算法作 为共识算法,使得所有节点都参与到链路由的共识中,而又没有所有节点参与共识而带来的效率降低的缺陷。
类似地,子链也可以采用代理权益拜占庭容错算法对从链路由接收到的交易(即第二交易)进行验证。
可选地,作为另一实施例,第三区块链中每一个区块均包括区块头部分(Header)和数据部分(Data)。
具体地,链路由具有数量不断增加的若干个区块,每个区块可以包括若干个交易,这些区块可以按照时间的顺序进行排列。为了便于标记以及区分各个区块,每个区块的区块头部分可以包括该区块的生成时间、所在位置、以及该区块生成时的验证信息等。
另外,由于链路由本身也是区块链,其状态信息可以以区块的形式保存和更新,并且所述状态信息通常也可以包含于数据库中。根据本发明一实施例,区块头部分包括:链标识(Chain ID)、区块高度(Hight)、时间(Time)、世界状态的哈希值(App Hash)、与该区块紧邻的前一个区块的区块头部分的哈希值(Last Header Hash)、与该区块紧邻的前一个区块的分块(Last Block Parts)、验证人哈希值(Validators Hash)、数据部分的哈希值(Data Hash)中的至少一个,数据部分至少包括该区块内的所有交易。
图3所示为本发明一实施例提供的链路由的区块的结构示意图,如图3所示,第三区块链中每一个区块还可以包括投票部分(Last Commit)。该投票部分可以用于建立该区块与上一个区块之间的链接。比如,区块的共识需要两轮超过2/3验证节点权益的投票。其中第二轮的全部2/3验证节点投票(Commit)会被暂时保存起来,等到下一个区块被提议时,被放在该区块的投票的部分(Last Commit)。所以一个区块的投票部分包括了上一轮投票中超过2/3验证人的投票。
具体地,区块头部分包括:链标识(Chain ID)、区块高度(Hight)、时间(Time)、世界状态的哈希值(App Hash)、与该区块紧邻的前一个区块的区块头部分的哈希值(Last Header Hash)、与该区块紧邻的前一个区块的分块(Last Block Parts)、验证人哈希值(Validators Hash)、数据部分的哈希值(Data Hash)、投票部分的哈希值(Last Commit Hash)。其中,后两部分是对本区块整体性的检查。数据部分包括该区块内的所有交易。其中,一个交易是指对数据库的状态进行了一次改变。
图4所示为本发明一实施例提供的链路由的结构示意图,如图4所示,该链路由可以通过链间通信协议(Cross Blockchain Communication Protocol,CBCP)与多个子链连接。在该实施例中,链路由包括路由信息管理模块、通信包处理器和分发器,路由信息管理模块内存储有路由表,通信包处理器可以对接收的第一通信包进行解析并生成第二通信包,然后分发器根据路由表将第二通信包经转发出去。该路由表可以为动态更新的路由表。
图5所示为本发明另一实施例提供的实现区块链跨链通信的方法的流程图。图5的方法由第一区块链执行,具体过程可参见图1的描述。如图5所示,该方法包括如下内容。
510:生成第一交易,并将第一交易写入第一区块链中,第一交易对应第一区块链上的数据库状态的改变。
520:向链路由发送第一通信包,链路由为第三区块链,第一通信包包括第一交易,以便第三区块链根据第一通信包生成第二通信包,并向第二区块链发送第二通信包。
可选地,作为另一实施例,第一交易包括消息内容和第二区块链的链标识。
图6所示为本发明另一实施例提供的实现区块链跨链通信的方法的流程图。图7的方法由第二区块链执行,具体过程可参见图1的描述。如图6所示,该方法包括如下内容。
610:接收链路由发送的第二通信包,其中第二通信包由链路由根据第一区块链发送的第一交易生成,链路由为第三区块链,第一交易对应第一区块链上的数据库状态的改变。
620:根据第二通信包生成第三交易,并将第三交易写入第二区块链。
具体地,第二区块链接收第二通信包,并对第二交易进行处理时,可以生成第三交易,该第三交易可以包括消息内容、第一区块链的链标识和第二区块链的链标识。第二区块链可以将该第三交易写入第二区块链中,以实现数据的溯源。
下面进一步说明该实施方式下的链路由和实现区块链跨链通信的系统的信息传输流程以及状态维护。
(1)信息传输流程
图7所示为本发明另一实施例提供的实现区块链跨链通信的方法的流程图。图7的方法是图1、图5和图6的例子,在此适当省略详细的描述。如图7所示,该方法包括如下内容。
710:子链A生成第一通信包,第一通信包包括第一交易。
假设子链A需要给子链B发送一条消息M,子链A通过共识,将如下的第一交易写入区块链。
[消息内容:M,消息接收链:B]
720:子链A向链路由发送第一通信包。
730:链路由采用代理权益拜占庭容错共识算法验证第一交易是否来自第一区块链,并得到验证结果。
在验证结果为否时,结束操作过程。
740:在验证结果为是时,链路由根据第一通信包生成第二通信包,第二通信包包括第二交易。
链路由生成如下的第二交易后,将第二交易写入区块链。
[消息内容:M,消息接收链:B,消息发送链:A]
750:链路由根据动态路由表向子链B发送第二通信包。
760:子链B根据第二通信包生成第三交易。
子链B生成如下的第三交易后,将第三交易写入区块链
[消息内容:M,消息来源:A]
(2)状态维护
作为不同子链之间沟通的桥梁,链路由要负责维护关于子链的一些状态。
首先,子链若希望与链路由进行通信,则可以在链路由上进行注册。包括子链的链标识(Chain ID),子链上验证节点的信息,子链上资产的种类等。以此来帮助链路由能够在接收到通信请求的时候解析出对应的子链,完成转发操作。
其次,链路由需要实时接收子链的最新区块信息和对最新区块的投票(Commit),以此来满足对子链基本状态的维护,验证从子链发来的交易等等。
此外,因为验证节点的身份是实时变更的,链路由还需要维护所有子链上的动态验证节点信息,以此来验证一笔来自子链的交易是否为合法。
同理,子链上也需要维护关于链路由上的相应信息,以此来确定一笔交易确实是由链路由发来的。包括链路由的身份标识,链路由上的验证节点信息,链路由上的最新区块及投票等。
图8所示为本发明一实施例提供的实现区块链跨链通信的装置800的结构示意图。如图8所示,装置800包括:接收模块810,用于接收第一区块链发送的第一通信包,第一通信包包括第一交易,第一交易对应第一区块链上的数据库状态的改变;生成模块820,用于根据第一通信包生成第二通信包;发送模块830,用于向第二区块链发送第二通信包。
本发明实施例提供了一种实现区块链跨链通信的装置,通过接收第一区块链发送的第一通信包,并根据第一通信包生成第二通信包,然后将第二通信包发送给第二区块链,从而实现了第一区块链和第二区块链之间的通信,进而提高了区块链的交易处理能力。
可选地,作为另一实施例,发送模块830根据路由表向第二区块链发送第二通信包。
可选地,作为另一实施例,发送模块830根据动态路由表向第二区块链发送第二通信包。
可选地,作为另一实施例,装置800为链路由,链路由为第三区块链,第三区块链连接在第一区块链和第二区块链之间,用于实现通信包的接收和转发,第二通信包包括第二交易,生成模块根据第一交易生成第二交易,其中,装置800还包括:写入模块840,用于将第二交易写入第三区块链中,其中,第一交易包 括消息内容和第二区块链的链标识,第二交易包括消息内容、第二区块链的链标识和第一区块链的链标识。
可选地,作为另一实施例,装置800还包括:验证模块850,用于验证第一交易是否来自第一区块链,并得到验证结果,其中,生成模块820在验证结果为是时,根据第一交易生成第二交易。
可选地,作为另一实施例,验证模块850采用基于投票的共识算法验证第一交易是否来自第一区块链,并得到验证结果。
可选地,作为另一实施例,链路由具有随着链路由内的交易的增加而增加的若干个区块,其中每一个区块均包括区块头部分和数据部分。
可选地,作为另一实施例,区块头部分包括:链标识、区块高度、时间、世界状态的哈希值、与该区块紧邻的前一个区块的区块头部分的哈希值、与该区块紧邻的前一个区块的分块、验证人哈希值、数据部分的哈希值中的至少一个,数据部分至少包括该区块内的所有交易。
装置800的各个模块的操作和功能可以参考上述图1的方法,为了避免重复,在此不再赘述。
图9所示为本发明另一实施例提供的实现区块链跨链通信的装置900的结构示意图。如图9所示,装置900包括:生成模块910,用于生成第一交易,并将第一交易写入第一区块链中,第一交易对应第一区块链上的数据库状态的改变;发送模块920,用于向链路由发送第一通信包,链路由为第三区块链,第一通信包包括第一交易,以便第三区块链根据第一通信包生成第二通信包,并向第二区块链发送第二通信包。
可选地,作为另一实施例,第一交易包括消息内容和第二区块链的链标识。
装置900的各个模块的操作和功能可以参考上述图1和图6的方法,为了避免重复,在此不再赘述。
图10所示为本发明另一实施例提供的实现区块链跨链通信的装置1000的结构示意图。如图10所示,装置1000包括:接收模块1010,用于接收链路由发送的第二通信包,其中第二通信包由链路由根据第一区块链发送的第一交易生成,链路由为第三区块链,第一交易对应第一区块链上的数据库状态的改变;生成模块1020,用于根据第二通信包生成第三交易,并将第三交易写入第二区块链。
可选地,作为另一实施例,第三交易包括消息内容和第一区块链的链标识。
装置1000的各个模块的操作和功能可以参考上述图1和图7的方法,为了避免重复,在此不再赘述。
本发明的实施例提供了一种实现区块链跨链通信的系统,包括:多个区块链;至少一个链路由,至少一个链路由中的每个链路由为如图8中所述的链路由,至少一个链路由连接在多个区块链之间,用于实现通信包的接收和转发,以实现多 个区块链之间的通信。
在本发明某些实施例中,至少一个链路由包括多个链路由,至少一个链路由中的每个链路由为区块链。
具体地,多个链路由中的每个链路由可以连接多个子链,其中链路由起到类似路由器的功能,根据通信协议实现通信包的解析与转发,动态维护该系统的网络拓扑结构。
链路由网络的最终结构受诸多因素影响,其中,最主要的影响因素就是需要通信的区块链的数量。随着接入链网络的区块链逐渐增多,接入一个链路由中的区块链会不断增多,当多到一定的程度超过一个链路由的负载,可以采用增加链路由的方式来分摊压力。
在本发明某些实施例中,多个链路由呈树状结构或网状结构分布。
具体地,树状结构是指每个节点的父节点是唯一的拓扑结构,网状结构是指每个节点的父节点不是唯一的拓扑结构,该拓扑结构形成分层结构,其拓扑关系对应分层关系。
例如,上述多个链路包括上层链和底层链。底层链负责连通上层链,负责维护上层链之间的通信。即,如果目标链在同一个上层链中,那么就直接通过上层链通信。如果目标链不在同一个上层链中,则需要通过底层链通信。最底层构成链路由主干。在实际应用中,多个链路由的层数可以根据实际情况进行设定,本发明对此不做限制。另外,也可以是在最上层的链路由中使用类似边界网关协议(BGP)的规则,而在其下的每个分域内采用树形、网状、树形和网状的结构。在本发明某些实施例中,多个链路由呈树状结构和网状结构结合的形式分布。
图11所示是根据本发明一示例性实施例示出的用于实现区块链跨链通信的计算机装置1100的框图。
参照图11,装置1100包括处理组件1110,其进一步包括一个或多个处理器,以及由存储器1120所代表的存储器资源,用于存储可由处理组件1110的执行的指令,例如应用程序。存储器1120中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1110被配置为执行指令,以执行上述实现区块链跨链通信的方法。
装置1100还可以包括一个电源组件被配置为执行装置1100的电源管理,一个有线或无线网络接口被配置为将装置1100连接到网络,和一个输入输出(I/O)接口。装置1100可以操作基于存储在存储器1120的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
一种非临时性计算机可读存储介质,当存储介质中的指令由上述装置1100的处理器执行时,使得上述装置1100能够执行一种实现区块链跨链通信的方法,包括:接收第一区块链发送的第一通信包,第一通信包包括第一交易,第一交易对 应第一区块链上的数据库状态的改变;根据第一通信包生成第二通信包;向第二区块链发送第二通信包。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序校验码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (28)

  1. 一种实现区块链跨链通信的方法,其特征在于,包括:
    接收第一区块链发送的第一通信包,所述第一通信包包括第一交易,所述第一交易对应所述第一区块链上的数据库状态的改变;
    根据所述第一通信包生成第二通信包;
    向第二区块链发送所述第二通信包。
  2. 根据权利要求1所述的方法,其特征在于,所述向第二区块链发送所述第二通信包,包括:
    根据路由表向所述第二区块链发送所述第二通信包。
  3. 根据权利要求2所述的方法,其特征在于,所述根据路由表向所述第二区块链发送所述第二通信包,包括:
    根据动态路由表向所述第二区块链发送所述第二通信包。
  4. 根据权利要求1至3中任一项所述的方法,其特征在于,所述方法由链路由执行,所述链路由为第三区块链,所述第三区块链连接在所述第一区块链和所述第二区块链之间,用于实现通信包的接收和转发,所述第二通信包包括第二交易,
    其中,所述根据所述第一通信包生成第二通信包,包括:
    根据所述第一交易生成所述第二交易,并将所述第二交易写入所述第三区块链中,其中,所述第一交易包括消息内容和所述第二区块链的链标识,所述第二交易包括所述消息内容、所述第二区块链的链标识和所述第一区块链的链标识。
  5. 根据权利要求4所述的方法,其特征在于,所述根据所述第一交易生成第二交易,包括:
    验证所述第一交易是否来自所述第一区块链,并得到验证结果;
    在所述验证结果为是时,根据所述第一交易生成所述第二交易。
  6. 根据权利要求5所述的方法,其特征在于,所述验证所述第一交易是否来自所述第一区块链,并得到验证结果,包括:
    采用基于投票的共识算法验证所述第一交易是否来自所述第一区块链,并得到验证结果。
  7. 根据权利要求4至6中任一项所述的方法,其特征在于,所述链路由具有随着所述链路由内的交易的增加而增加的若干个区块,其中每一个区块均包括区块头部分和数据部分。
  8. 根据权利要求7所述的方法,其特征在于,所述区块头部分包括:链标识、区块高度、时间、世界状态的哈希值、与该区块紧邻的前一个区块的区块头部分 的哈希值、与该区块紧邻的前一个区块的分块、验证人哈希值、数据部分的哈希值中的至少一个,所述数据部分至少包括该区块内的所有交易。
  9. 一种实现区块链跨链通信的方法,其特征在于,包括:
    生成第一交易,并将所述第一交易写入第一区块链中,所述第一交易对应所述第一区块链上的数据库状态的改变;
    向链路由发送第一通信包,所述链路由为第三区块链,所述第一通信包包括所述第一交易,以便所述第三区块链根据所述第一通信包生成第二通信包,并向所述第二区块链发送所述第二通信包。
  10. 根据权利要求9所述的方法,其特征在于,所述方法由所述第一区块链执行,所述第一交易包括消息内容和所述第二区块链的链标识。
  11. 一种实现区块链跨链通信的方法,其特征在于,包括:
    接收链路由发送的第二通信包,其中所述第二通信包由所述链路由根据第一区块链发送的第一交易生成,所述链路由为第三区块链,所述第一交易对应所述第一区块链上的数据库状态的改变;
    根据所述第二通信包生成第三交易,并将所述第三交易写入所述第二区块链。
  12. 根据权利要求11所述的方法,其特征在于,所述方法由所述第二区块链执行,所述第三交易包括消息内容和所述第一区块链的链标识。
  13. 一种实现区块链跨链通信的装置,其特征在于,包括:
    接收模块,用于接收第一区块链发送的第一通信包,所述第一通信包包括第一交易,所述第一交易对应所述第一区块链上的数据库状态的改变;
    生成模块,用于根据所述第一通信包生成第二通信包;
    发送模块,用于向第二区块链发送所述第二通信包。
  14. 根据权利要求13所述的装置,其特征在于,所述发送模块根据路由表向所述第二区块链发送所述第二通信包。
  15. 根据权利要求14所述的装置,其特征在于,所述发送模块根据动态路由表向所述第二区块链发送所述第二通信包。
  16. 根据权利要求13至15中任一项所述的装置,其特征在于,所述装置为链路由,所述链路由为第三区块链,所述第三区块链连接在所述第一区块链和所述第二区块链之间,用于实现通信包的接收和转发,所述第二通信包包括第二交易,所述生成模块根据所述第一交易生成所述第二交易,
    其中,所述装置还包括:
    写入模块,用于将所述第二交易写入所述第三区块链中,其中,所述第一交易包括消息内容和所述第二区块链的链标识,所述第二交易包括所述消息内容、所述第二区块链的链标识和所述第一区块链的链标识。
  17. 根据权利要求16所述的装置,其特征在于,还包括:
    验证模块,用于验证所述第一交易是否来自所述第一区块链,并得到验证结果,
    其中,所述生成模块在所述验证结果为是时,根据所述第一交易生成所述第二交易。
  18. 根据权利要求17所述的装置,其特征在于,所述验证模块采用基于投票的共识算法验证所述第一交易是否来自所述第一区块链,并得到验证结果。
  19. 根据权利要求16至18中任一项所述的装置,其特征在于,所述链路由具有随着所述链路由内的交易的增加而增加的若干个区块,其中每一个区块均包括区块头部分和数据部分。
  20. 根据权利要求19所述的装置,其特征在于,所述区块头部分包括:链标识、区块高度、时间、世界状态的哈希值、与该区块紧邻的前一个区块的区块头部分的哈希值、与该区块紧邻的前一个区块的分块、验证人哈希值、数据部分的哈希值中的至少一个,所述数据部分至少包括该区块内的所有交易。
  21. 一种实现区块链跨链通信的装置,其特征在于,包括:
    生成模块,用于生成第一交易,并将所述第一交易写入第一区块链中,所述第一交易对应所述第一区块链上的数据库状态的改变;
    发送模块,用于向链路由发送第一通信包,所述链路由为第三区块链,所述第一通信包包括所述第一交易,以便所述第三区块链根据所述第一通信包生成所述第二通信包,并向所述第二区块链发送所述第二通信包。
  22. 根据权利要求21所述的装置,其特征在于,所述装置为第一区块链,所述第一交易包括消息内容和所述第二区块链的链标识。
  23. 一种实现区块链跨链通信的装置,其特征在于,包括:
    接收模块,用于接收链路由发送的第二通信包,其中所述第二通信包由所述链路由根据第一区块链发送的第一交易生成,所述链路由为第三区块链,所述第一交易对应所述第一区块链上的数据库状态的改变;
    生成模块,用于根据所述第二通信包生成第三交易,并将所述第三交易写入所述第二区块链。
  24. 根据权利要求23所述的装置,其特征在于,所述装置为第二区块链,所述第三交易包括消息内容和所述第一区块链的链标识。
  25. 一种实现区块链跨链通信的系统,其特征在于,包括:
    多个区块链;
    至少一个链路由,所述至少一个链路由中的每个链路由为如权利要求16至20中任一项所述的链路由,所述至少一个链路由连接在所述多个区块链之间,用于实现通信包的接收和转发,以实现所述多个区块链之间的通信。
  26. 根据权利要求25所述的系统,其特征在于,所述至少一个链路由包括多 个链路由,所述至少一个链路由中的每个链路由为区块链。
  27. 根据权利要求26所述的系统,其特征在于,所述多个链路由呈树状结构或网状结构分布。
  28. 根据权利要求27所述的系统,其特征在于,所述多个链路由呈树状结构和网状结构结合的形式分布。
PCT/CN2018/090190 2017-06-07 2018-06-07 实现区块链跨链通信的方法、装置及系统 WO2018223995A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020197015800A KR20190104138A (ko) 2017-06-07 2018-06-07 블록체인 크로스 체인 커뮤니케이션을 실현하는 방법, 장치 및 시스템
JP2019528642A JP2019536380A (ja) 2017-06-07 2018-06-07 ブロックチェーンのクロスチェーン通信を実現する方法、装置及びシステム
US16/432,816 US20190289068A1 (en) 2017-06-07 2019-06-05 Method, apparatus and system for realizing communication between blockchains

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710423247.8 2017-06-07
CN201710423247.8A CN107231299A (zh) 2017-06-07 2017-06-07 一种链路由及实现区块链跨链通信的系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/432,816 Continuation US20190289068A1 (en) 2017-06-07 2019-06-05 Method, apparatus and system for realizing communication between blockchains

Publications (1)

Publication Number Publication Date
WO2018223995A1 true WO2018223995A1 (zh) 2018-12-13

Family

ID=59934912

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/090190 WO2018223995A1 (zh) 2017-06-07 2018-06-07 实现区块链跨链通信的方法、装置及系统

Country Status (5)

Country Link
US (1) US20190289068A1 (zh)
JP (1) JP2019536380A (zh)
KR (1) KR20190104138A (zh)
CN (1) CN107231299A (zh)
WO (1) WO2018223995A1 (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109743698A (zh) * 2019-03-05 2019-05-10 中国联合网络通信集团有限公司 基于区块链的防伪方法、网关、用户终端、区块链
CN109885615A (zh) * 2019-01-24 2019-06-14 华东师范大学 一种基于索引的面向区块链轻客户端的范围查询可验证查询方法
CN110166364A (zh) * 2019-05-15 2019-08-23 武汉理工大学 一种基于实用拜占庭容错算法的软件定义机会网络流表更新方法
CN110557394A (zh) * 2019-09-06 2019-12-10 杭州复杂美科技有限公司 一种平行链的管理方法、设备及存储介质
JP2020516108A (ja) * 2018-12-28 2020-05-28 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited グローバル加速ノードを用いたブロックチェーントランザクション速度の改善
KR102173695B1 (ko) * 2019-08-26 2020-11-03 단국대학교 산학협력단 이종의 네트워크 간의 데이터 교환 장치 및 방법, 그리고 이를 이용한 데이터 교환 시스템
JP2021027443A (ja) * 2019-08-02 2021-02-22 株式会社日立製作所 計算機システムおよびリクエスト処理方法
US11042535B2 (en) 2018-12-28 2021-06-22 Advanced New Technologies Co., Ltd. Accelerating transaction deliveries in blockchain networks using acceleration nodes
CN113128998A (zh) * 2019-12-31 2021-07-16 航天信息股份有限公司 一种区块链系统的业务处理方法、装置及系统
US11082237B2 (en) 2018-12-28 2021-08-03 Advanced New Technologies Co., Ltd. Accelerating transaction deliveries in blockchain networks using transaction resending
JP2022518960A (ja) * 2019-04-29 2022-03-17 アドボケイト リミテッド 複数のノードに基づくネットワークトランザクション検証方法及びそのシステム並びに記憶媒体
CN115174309A (zh) * 2022-09-06 2022-10-11 深圳市明源云科技有限公司 区块链通讯方法、通信设备及计算机可读存储介质

Families Citing this family (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107231299A (zh) * 2017-06-07 2017-10-03 众安信息技术服务有限公司 一种链路由及实现区块链跨链通信的系统
CN107679857B (zh) * 2017-10-10 2021-04-27 马晶瑶 区块链的跨链交易方法和存储介质
CN107888562B (zh) * 2017-10-13 2019-12-27 布比(北京)网络技术有限公司 一种平行链接入互联链的数据验证和收发方法、节点及系统
CN107742210A (zh) * 2017-10-13 2018-02-27 布比(北京)网络技术有限公司 一种不同区块链间的跨链转账系统和方法
CN108366105B (zh) * 2018-01-30 2019-12-10 百度在线网络技术(北京)有限公司 跨区块链的数据访问方法、装置、系统及计算机可读介质
CN108200210B9 (zh) * 2018-02-12 2021-06-18 众安信息技术服务有限公司 基于区块链的链管理的方法、装置及计算机可读介质
CN108256864B (zh) * 2018-02-13 2019-06-07 中链科技有限公司 一种区块链之间的跨链联盟的建立及通信方法、系统
CN108377206B (zh) * 2018-03-12 2021-04-06 众安信息技术服务有限公司 用于配置共识算法的方法、装置及计算机可读存储介质
CN108540536B (zh) * 2018-03-16 2021-07-23 深圳前海微众银行股份有限公司 基于区块链的网络海量业务处理方法、设备及存储介质
US10819722B2 (en) * 2018-03-21 2020-10-27 Honeywell International Inc. Blockchain for securing distributed IIoT or edge device data at rest
CN108596613A (zh) * 2018-03-22 2018-09-28 深圳市网心科技有限公司 区块链交易处理方法、装置及存储介质
CN108600315B (zh) * 2018-03-22 2021-04-06 深圳市网心科技有限公司 区块链路由处理方法、装置及存储介质
CN108681963B (zh) * 2018-03-29 2020-07-31 深圳市网心科技有限公司 多区块链整合控制方法、系统、电子装置及存储介质
CN108848119B (zh) 2018-04-03 2020-04-28 阿里巴巴集团控股有限公司 跨区块链的交互方法及装置、系统、电子设备
CN108683630B (zh) * 2018-04-03 2020-05-29 阿里巴巴集团控股有限公司 跨区块链的认证方法及装置、电子设备
JP6949249B2 (ja) * 2018-04-16 2021-10-13 ビーシー ディベロップメント ラボズ ゲーエムベーハー 最小限の検証クライアントを使用したトラストレスステートレスインセンティブ型リモートノードネットワーク
CN108615152B (zh) * 2018-04-25 2021-05-18 合肥惠科金扬科技有限公司 一种基于区块链的交易装置
CN108596764B (zh) * 2018-04-25 2021-05-18 合肥惠科金扬科技有限公司 一种基于区块链的交易方法、系统及终端设备
CN112005264A (zh) * 2018-05-01 2020-11-27 国际商业机器公司 实施跨链事务的区块链
CN108924175A (zh) * 2018-05-02 2018-11-30 北京链链信息技术有限公司 一种区块链间的通信方法和装置
CN108734578B (zh) * 2018-05-02 2020-10-27 东莞市波动赢机器人科技有限公司 基于交易机器人的数据处理方法和系统
CN108848055B (zh) 2018-05-03 2020-06-23 中国银联股份有限公司 一种区块链共识方法、记账节点及节点
CN108681760B (zh) * 2018-05-15 2021-09-14 恒生电子股份有限公司 数据发送方法、接收方法及装置
CN108769163B (zh) * 2018-05-16 2020-11-24 深圳前海微众银行股份有限公司 联盟链共识达成方法、设备及计算机可读存储介质
CN108764875B (zh) * 2018-05-17 2021-07-06 深圳前海微众银行股份有限公司 区块链的转账方法、装置、系统和计算机可读存储介质
CN108712491A (zh) * 2018-05-17 2018-10-26 易链科技(深圳)有限公司 区块链节点、交易信息处理方法、终端设备和介质
CN110557334B (zh) * 2018-06-01 2021-12-28 本无链科技(深圳)有限公司 一种跨链网络互联的方法及系统
CN108964982B (zh) * 2018-06-13 2021-07-09 众安信息技术服务有限公司 用于实现区块链的多节点的部署的方法、装置及存储介质
CN109104474A (zh) * 2018-07-27 2018-12-28 深圳市汇尊区块链技术有限公司 一种共识机制变种方法
CN109150598B (zh) * 2018-08-10 2021-09-03 上交所技术有限责任公司 一种基于块片的bft共识算法带宽使用率改进方法
US11038950B2 (en) * 2018-08-14 2021-06-15 Microsoft Technology Licensing, Llc Blockchain digital twin for transactions on behalf of limited capability devices
CN109240826B (zh) * 2018-08-15 2020-10-23 泰链(厦门)科技有限公司 多区块链网络中节点共用计算设备时的计算资源分配方法
US10771384B2 (en) * 2018-08-17 2020-09-08 Tyson Trautmann Routing based blockchain
CN110868308B (zh) * 2018-08-28 2022-04-01 傲为有限公司 一种区块链网络接入方法及系统
CN109157840B (zh) * 2018-09-11 2022-07-12 北京云派网络科技有限公司 游戏中的数据处理方法、系统以及存储介质
CN109088881B (zh) * 2018-09-12 2020-11-03 杭州趣链科技有限公司 一种实现跨平台数据交换的共享链平台及数据交换方法
CN109218019B (zh) * 2018-09-19 2021-11-12 上海洲澜科技有限公司 一种不同区块链之间的跨链交易操作系统
CN112749188B (zh) * 2018-09-27 2022-07-05 福建福链科技有限公司 联盟链中解决子链间数据隔离的数据处理方法及终端
CN110971624A (zh) * 2018-09-28 2020-04-07 中思博安科技(北京)有限公司 一种支持异构资源的信息交互系统及异构信息交互方法
CN109361588B (zh) * 2018-09-29 2021-04-30 湖南智慧政务区块链科技有限公司 一种基于星型网络的区块链网络构建方法及其系统
CN109410057A (zh) * 2018-10-10 2019-03-01 吕晋磊 一种族系树状多核区块链生态系统建立方法和流程
US10841213B2 (en) * 2018-10-15 2020-11-17 Moac Blockchain Tech Inc Apparatus and method for communication between chains in a decentralized system
CN109493171A (zh) * 2018-10-18 2019-03-19 尚维斯 一种基于区块链跨链交互的四通证模型
CN109493222A (zh) * 2018-10-18 2019-03-19 尚维斯 一种任意多个区块链账本实时同步的方法
CN109347955B (zh) * 2018-10-19 2021-03-02 北京奇艺世纪科技有限公司 一种区块链网络系统以及信息处理方法
CN109508968B (zh) * 2018-10-25 2020-12-18 常州唯康信息科技有限公司 区块链系统以及其控制方法
CN109582473A (zh) * 2018-10-26 2019-04-05 阿里巴巴集团控股有限公司 基于区块链的跨链数据访问方法和装置
CN111181797B (zh) * 2018-11-09 2022-05-27 北京天德科技有限公司 一种基于拦截器的区块链共识机制验证方法
MX2019004660A (es) 2018-11-16 2019-08-12 Alibaba Group Holding Ltd Esquema de administracion de nombre de dominio para interacciones de cadena cruzada en sistemas de cadena de bloques.
WO2020104010A1 (en) * 2018-11-19 2020-05-28 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for a network device to obtain a trusted state representation of the state of the distributed ledger technology network
CN109688199B (zh) * 2018-11-28 2021-12-10 西安电子科技大学 一种多域分层物联网联盟链平台及其分片方法、计算机
AU2018347199B2 (en) * 2018-12-13 2021-07-01 Advanced New Technologies Co., Ltd. Off-chain smart contract service based on trusted execution environment
CN110245522B (zh) * 2019-01-16 2022-07-12 腾讯科技(深圳)有限公司 区块链资金结算系统中的数据处理方法、终端和介质
CA3061789C (en) * 2019-01-31 2021-01-26 Alibaba Group Holding Limited Cross-asset trading within blockchain networks
SG11201908748WA (en) * 2019-03-06 2019-10-30 Alibaba Group Holding Ltd Managing housing scores using smart contracts in blockchain networks
CN110011930B (zh) * 2019-03-12 2022-06-24 深圳前海微众银行股份有限公司 一种区块链中多联盟链的负载均衡方法及装置
CN112003703B (zh) * 2019-06-28 2023-08-22 创新先进技术有限公司 一种跨链发送可认证消息的方法和装置
US11251966B2 (en) 2019-06-28 2022-02-15 Advanced New Technologies Co., Ltd. Sending cross-chain authenticatable messages
US11356282B2 (en) * 2019-06-28 2022-06-07 Advanced New Technologies Co., Ltd. Sending cross-chain authenticatable messages
CN110336816B (zh) * 2019-07-05 2021-08-17 深圳市九链科技有限公司 一种使用通信证明作为区块链共识的方法
US20230244481A9 (en) * 2019-07-11 2023-08-03 Carbon-Block Inc. Blockchain microprocessor and method
CN112241888B (zh) * 2019-07-19 2024-03-26 傲为有限公司 基于公链的地址管理系统
CN110417897B (zh) * 2019-07-31 2022-08-02 中国联合网络通信集团有限公司 一种区块链分域触发方法、区块链节点设备和终端
CN111010394B (zh) * 2019-08-15 2021-06-08 腾讯科技(深圳)有限公司 区块链多链管理方法和装置
US11165787B2 (en) 2019-08-26 2021-11-02 Bank Of America Corporation System for authorization of electronic data access and processing functions within a distributed server network
KR102295701B1 (ko) * 2019-09-09 2021-08-27 한국항공대학교산학협력단 이종 프라이빗 블록체인간 통신 장치 및 방법
CN110647559B (zh) * 2019-09-24 2024-08-23 腾讯科技(深圳)有限公司 数据处理方法、相关节点及系统
CN110891050B (zh) * 2019-10-24 2021-12-14 中国科学技术大学 全链条的原子级主动安全路由方法
KR102121245B1 (ko) * 2019-11-19 2020-06-10 주식회사 마크애니 복수의 블록체인망들 간의 데이터 공유 시스템 및 방법
CN111082924B (zh) * 2019-11-29 2023-07-25 杰创智能科技股份有限公司 一种基于工作量证明的选举型拜占庭容错共识方法
AU2019381980A1 (en) * 2019-11-29 2021-06-17 Alipay (Hangzhou) Information Technology Co., Ltd. Taking snapshots of blockchain data
US12099997B1 (en) 2020-01-31 2024-09-24 Steven Mark Hoffberg Tokenized fungible liabilities
CN111311414B (zh) * 2020-02-27 2023-12-08 杭州云象网络技术有限公司 一种基于一致性哈希算法的区块链多方共识方法
CN111404781B (zh) * 2020-03-13 2021-08-31 杭州复杂美科技有限公司 限速方法、设备和存储介质
US11722589B2 (en) * 2020-04-08 2023-08-08 Huawei Technologies Co., Ltd. Rapid ledger consensus system and method for distributed wireless networks
CN111539016B (zh) * 2020-04-14 2023-04-07 浙江浙燃能源有限公司 分布式计算方法、系统、区块链节点及计算机介质
CN111553669B (zh) * 2020-04-28 2021-09-10 腾讯科技(深圳)有限公司 一种交易路由方法、装置及计算机可读存储介质
CN111680996B (zh) * 2020-05-28 2023-09-22 中国工商银行股份有限公司 基于区块链的生活缴费数据处理方法、装置及系统
CN113765956B (zh) * 2020-06-03 2024-05-24 华为技术有限公司 报文处理方法、设备、系统及存储介质
CN111639944B (zh) * 2020-06-08 2023-06-02 杭州复杂美科技有限公司 交易广播方法、设备和存储介质
KR102179160B1 (ko) * 2020-06-23 2020-11-16 주식회사 아이콘루프 블록체인 간의 통신을 위해 메시지를 증명하는 시스템 및 방법
CN111522800B (zh) 2020-07-03 2020-10-30 支付宝(杭州)信息技术有限公司 蜜獾拜占庭容错共识机制的区块链共识方法、节点及系统
CN111901350B (zh) * 2020-07-30 2022-10-14 平安科技(深圳)有限公司 区块链系统、数据处理方法、计算机设备及存储介质
CN112968967B (zh) 2020-09-25 2023-05-19 支付宝(杭州)信息技术有限公司 区块同步方法及装置
CN111934990B (zh) 2020-09-25 2021-02-09 支付宝(杭州)信息技术有限公司 消息传输方法及装置
CN111934999B (zh) 2020-09-25 2021-01-22 支付宝(杭州)信息技术有限公司 消息传输方法及装置
CN111935314B (zh) 2020-09-25 2021-01-12 支付宝(杭州)信息技术有限公司 区块链系统、消息传输方法及装置
CN111934996B (zh) 2020-09-25 2021-01-12 支付宝(杭州)信息技术有限公司 消息传输方法及装置
CN111934997B (zh) 2020-09-25 2021-01-12 支付宝(杭州)信息技术有限公司 消息传输方法及装置
CN111935000B (zh) * 2020-09-25 2021-01-08 支付宝(杭州)信息技术有限公司 消息传输方法及装置
CN113079082B (zh) 2020-09-25 2022-02-18 支付宝(杭州)信息技术有限公司 消息传输方法及装置
EP4244801A1 (en) * 2020-11-16 2023-09-20 Say Technologies LLC Data communications protocol platform
KR102334931B1 (ko) 2020-11-16 2021-12-06 두나무 주식회사 블록체인들 사이의 토큰 교환을 보조하는 방법 및 시스템
US11368288B2 (en) 2020-11-20 2022-06-21 Hong Kong Applied Science and Technology Research Institute Company Limited Apparatus and method of lightweight communication protocols between multiple blockchains
CN112104517B (zh) * 2020-11-23 2021-02-05 腾讯科技(深圳)有限公司 一种基于区块链网络的数据处理方法及相关装置
CN112700558B (zh) * 2020-12-23 2022-08-12 深圳信息职业技术学院 一种基于区块链技术的车辆识别方法、系统及电子设备
CN114666327B (zh) * 2020-12-23 2023-12-19 富泰华工业(深圳)有限公司 基于区块链交易的区块打包方法、装置及电子设备
CN112286641B (zh) * 2020-12-24 2021-04-20 北京百度网讯科技有限公司 以太坊虚拟机的事务处理方法、装置、设备和介质
CN112769936B (zh) * 2021-01-11 2022-08-16 电子科技大学 一种基于投票与信用机制的povt共识算法
CN112968772B (zh) * 2021-01-29 2022-10-14 上海分布信息科技有限公司 一种区块链数据的跨链解耦方法、系统
CN112969212B (zh) * 2021-02-24 2022-03-04 山东山大世纪科技有限公司 物联网的去中心传感器网络构建方法
CN113067895B (zh) * 2021-06-02 2021-08-31 支付宝(杭州)信息技术有限公司 组建区块链子网的方法和区块链系统
CN113259131B (zh) * 2021-06-23 2021-10-08 北京笔新互联网科技有限公司 区块链节点、系统和区块链构建方法
CN113422733B (zh) * 2021-08-25 2021-11-05 腾讯科技(深圳)有限公司 区块链的业务处理方法、装置、计算机设备及存储介质
US20230168944A1 (en) * 2021-11-29 2023-06-01 Marketx Llc Systems and methods for automated staking models
CN114244537B (zh) * 2022-02-24 2022-05-06 环球数科集团有限公司 一种基于跨链通信和多链融合的信息处理系统
CN114499890B (zh) * 2022-03-15 2023-09-15 南京信息工程大学 联盟链中基于节点分组的Raft PBFT两阶段共识方法
CN114793235B (zh) * 2022-04-29 2024-03-29 蚂蚁区块链科技(上海)有限公司 用于跨区块链交互的系统及方法
CN115865923A (zh) * 2023-02-15 2023-03-28 湖南大学 联盟链的高性能领导节点选举方法、装置、设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106447309A (zh) * 2016-11-13 2017-02-22 杭州复杂美科技有限公司 源链侧链跨链交易
US20170103167A1 (en) * 2012-04-27 2017-04-13 Netspective Communications Llc Blockchain system for natural language processing
CN107231299A (zh) * 2017-06-07 2017-10-03 众安信息技术服务有限公司 一种链路由及实现区块链跨链通信的系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106656784B (zh) * 2016-10-14 2020-01-21 中国银联股份有限公司 用于区块链网络的数据流传播系统及方法
CN106789889B (zh) * 2016-11-22 2020-05-05 广州市诚毅科技软件开发有限公司 一种基于网状结构的网络监控方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170103167A1 (en) * 2012-04-27 2017-04-13 Netspective Communications Llc Blockchain system for natural language processing
CN106447309A (zh) * 2016-11-13 2017-02-22 杭州复杂美科技有限公司 源链侧链跨链交易
CN107231299A (zh) * 2017-06-07 2017-10-03 众安信息技术服务有限公司 一种链路由及实现区块链跨链通信的系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
THOMAS, S. ET AL.: "The Interledger Protocol Draft-Thomas-Interledger-00", IETF, 8 July 2016 (2016-07-08), pages 1 - 13, XP055551145 *

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11042535B2 (en) 2018-12-28 2021-06-22 Advanced New Technologies Co., Ltd. Accelerating transaction deliveries in blockchain networks using acceleration nodes
US11151127B2 (en) 2018-12-28 2021-10-19 Advanced New Technologies Co., Ltd. Accelerating transaction deliveries in blockchain networks using acceleration nodes
JP2020516108A (ja) * 2018-12-28 2020-05-28 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited グローバル加速ノードを用いたブロックチェーントランザクション速度の改善
US11082239B2 (en) 2018-12-28 2021-08-03 Advanced New Technologies Co., Ltd. Accelerating transaction deliveries in blockchain networks using transaction resending
US11082237B2 (en) 2018-12-28 2021-08-03 Advanced New Technologies Co., Ltd. Accelerating transaction deliveries in blockchain networks using transaction resending
US11032057B2 (en) 2018-12-28 2021-06-08 Advanced New Technologies Co., Ltd. Blockchain transaction speeds using global acceleration nodes
CN109885615A (zh) * 2019-01-24 2019-06-14 华东师范大学 一种基于索引的面向区块链轻客户端的范围查询可验证查询方法
CN109885615B (zh) * 2019-01-24 2020-09-22 华东师范大学 一种基于索引的面向区块链轻客户端的范围查询可验证查询方法
CN109743698A (zh) * 2019-03-05 2019-05-10 中国联合网络通信集团有限公司 基于区块链的防伪方法、网关、用户终端、区块链
JP2022518960A (ja) * 2019-04-29 2022-03-17 アドボケイト リミテッド 複数のノードに基づくネットワークトランザクション検証方法及びそのシステム並びに記憶媒体
JP7192196B2 (ja) 2019-04-29 2022-12-20 アドボケイト リミテッド 複数のノードに基づくネットワークトランザクション検証方法及びそのシステム並びに記憶媒体
CN110166364A (zh) * 2019-05-15 2019-08-23 武汉理工大学 一种基于实用拜占庭容错算法的软件定义机会网络流表更新方法
JP2021027443A (ja) * 2019-08-02 2021-02-22 株式会社日立製作所 計算機システムおよびリクエスト処理方法
JP7190404B2 (ja) 2019-08-02 2022-12-15 株式会社日立製作所 計算機システムおよびリクエスト処理方法
KR102173695B1 (ko) * 2019-08-26 2020-11-03 단국대학교 산학협력단 이종의 네트워크 간의 데이터 교환 장치 및 방법, 그리고 이를 이용한 데이터 교환 시스템
CN110557394A (zh) * 2019-09-06 2019-12-10 杭州复杂美科技有限公司 一种平行链的管理方法、设备及存储介质
CN110557394B (zh) * 2019-09-06 2021-11-02 杭州复杂美科技有限公司 一种平行链的管理方法、设备及存储介质
CN113128998A (zh) * 2019-12-31 2021-07-16 航天信息股份有限公司 一种区块链系统的业务处理方法、装置及系统
CN113128998B (zh) * 2019-12-31 2024-04-12 航天信息股份有限公司 一种区块链系统的业务处理方法、装置及系统
CN115174309A (zh) * 2022-09-06 2022-10-11 深圳市明源云科技有限公司 区块链通讯方法、通信设备及计算机可读存储介质
CN115174309B (zh) * 2022-09-06 2022-12-27 深圳市明源云科技有限公司 区块链通讯方法、通信设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN107231299A (zh) 2017-10-03
US20190289068A1 (en) 2019-09-19
JP2019536380A (ja) 2019-12-12
KR20190104138A (ko) 2019-09-06

Similar Documents

Publication Publication Date Title
WO2018223995A1 (zh) 实现区块链跨链通信的方法、装置及系统
CN111295660B (zh) 用于将区块链连接到数字孪生的计算机实现的系统和方法
Wang et al. Survey on blockchain for Internet of Things
CN106503098B (zh) 内置于Paas服务层的区块链云服务框架系统
CN112685505B (zh) 一种交易数据处理方法、装置、计算机设备及存储介质
US10521861B1 (en) Decentralized asset custody and clearing platform system
CN110099055A (zh) 基于轻量级区块链节点的物联网服务架构
US10693646B2 (en) Event execution using a blockchain approach
US11902448B2 (en) Hybrid blockchain architecture with computing pool
US20230315891A1 (en) Transaction data processing method and apparatus, computer device and storage medium
AU2016101976A4 (en) Open Network of Permissioned Ledgers
CN111711526B (zh) 一种区块链节点的共识方法及系统
US20210360031A1 (en) Cross-network identity provisioning
CN110098938B (zh) 一种可信任委托式链下加速解决方法及系统
WO2019142884A1 (ja) ブロック検証装置、ブロック検証方法、及びプログラム
CN115484026A (zh) 一种金融科技中基于区块链多维信任体系结构
Lee et al. Project management model based on consistency strategy for blockchain platform
Putra et al. Decentralised trustworthy collaborative intrusion detection system for IoT
CN111667255B (zh) 基于联盟链的数字资产流转系统及方法
Ramachandran et al. Trinity: a distributed publish/subscribe broker with blockchain-based immutability
CN112950180A (zh) 一种基于联盟链的通证方法、系统、电子设备及存储介质
CN115618429B (zh) 一种基于平行区块链的产品全生命周期管理系统
Sgier Bazo–A Cryptocurrency from Scratch
CN117917681A (zh) 基于多区块链的资产转移方法、装置、设备、介质及产品
CN114301912A (zh) 基于区块链的信息交互方法和装置

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019528642

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 20197015800

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC ( EPO FORM 1205A DATED 29/07/2020 )

122 Ep: pct application non-entry in european phase

Ref document number: 18814059

Country of ref document: EP

Kind code of ref document: A1