WO2021136251A1 - 跨区块链通信方法、装置、跨链服务系统及跨链交易系统 - Google Patents

跨区块链通信方法、装置、跨链服务系统及跨链交易系统 Download PDF

Info

Publication number
WO2021136251A1
WO2021136251A1 PCT/CN2020/140740 CN2020140740W WO2021136251A1 WO 2021136251 A1 WO2021136251 A1 WO 2021136251A1 CN 2020140740 W CN2020140740 W CN 2020140740W WO 2021136251 A1 WO2021136251 A1 WO 2021136251A1
Authority
WO
WIPO (PCT)
Prior art keywords
cross
chain
blockchain network
transaction
data
Prior art date
Application number
PCT/CN2020/140740
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 北京金山云网络技术有限公司
Publication of WO2021136251A1 publication Critical patent/WO2021136251A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • 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
    • 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

Definitions

  • This application relates to the field of blockchain technology, in particular to a cross-blockchain communication method, device, cross-chain service system, and cross-chain transaction system.
  • Blockchain is a distributed ledger shared across the entire business network. It is the underlying technology of Bitcoin. It is similar to a database ledger that records all transaction records. It is essentially a decentralized database. Blockchain technology provides a way to record transactions and digital interactions.
  • the blockchain network is interconnected by node machines that are distributed in different locations and have multiple terminals. Any node in the blockchain network is connected to at least two links, so different nodes in the blockchain network can communicate with each other.
  • the purpose of the embodiments of the present application is to provide a cross-blockchain communication method, device, cross-chain service system, and cross-chain transaction system to solve the technical problem that different blockchain networks are difficult to communicate with each other.
  • an embodiment of the present application provides a cross-blockchain communication method.
  • the method includes: obtaining first transaction information of a cross-chain transaction that is monitored from a source blockchain network, and the cross-chain transaction is the source blockchain.
  • the first transaction information includes: cross-chain transaction data; based on the cross-chain transaction data, the second transaction information is sent to the target blockchain network, and the second transaction information includes: cross-chain transaction Data; Obtain the execution result of the execution end of the monitored second transaction information from the target blockchain network; send instruction information to the source blockchain network based on the execution result, and the instruction information is used to indicate the end of the cross-chain transaction.
  • an embodiment of the present application provides a cross-blockchain communication device.
  • the device includes: a first obtaining module configured to obtain the first transaction information of the monitored cross-chain transaction from the source blockchain network.
  • a chain transaction is a transaction between the source blockchain network and the target blockchain network.
  • the first transaction information includes: cross-chain transaction data; the sending module is set to send the second to the target blockchain network based on the cross-chain transaction data.
  • Transaction information, the second transaction information includes: cross-chain transaction data; the second acquisition module is set to acquire the execution result of the monitored second transaction information from the target blockchain network; the sending module is also set to be based on execution As a result, the instruction information is sent to the source blockchain network, and the instruction information is used to indicate the end of the cross-chain transaction.
  • an embodiment of the present application provides a cross-chain service device, including a memory and a processor.
  • the memory stores a computer program that can run on the processor.
  • the processor implements the first aspect when the computer program is executed. The steps of the described method.
  • an embodiment of the present application provides a cross-chain service system.
  • the system includes: multiple execution service nodes, and execution service nodes, configured to: obtain the first monitored cross-chain transaction from the source blockchain network Transaction information.
  • a cross-chain transaction is a transaction between the source blockchain network and the target blockchain network.
  • the first transaction information includes: cross-chain transaction data; based on the cross-chain transaction data, the second transaction is sent to the target blockchain network Information, the second transaction information includes: cross-chain transaction data; obtains the execution result of the execution end of the second transaction information monitored from the target blockchain network; sends instruction information to the source blockchain network based on the execution result, and the instruction information is used To indicate the end of the cross-chain transaction.
  • an embodiment of the present application provides a cross-chain transaction system, including a target blockchain network, a source blockchain network, and the cross-chain service system described in the fourth aspect.
  • an embodiment of the present application provides a computer-readable storage medium, the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method described in the first aspect is implemented.
  • the embodiments of the present application provide a computer program product containing instructions.
  • the computer program product containing instructions runs on a computer, the computer executes the steps of the cross-blockchain communication method provided in the embodiments of the present application.
  • an embodiment of the present application provides a computer program that, when the computer program runs on a computer, causes the computer to execute the steps of the cross-blockchain communication method provided by the embodiment of the present application.
  • the cross-blockchain communication method, device, cross-chain service system, and cross-chain transaction system provided by the embodiments of this application can obtain monitored cross-chain transactions from the source blockchain network Data, the cross-chain transaction data is the transaction between the source blockchain network and the target blockchain network. Then, based on the cross-chain transaction data, the second transaction information including the cross-chain transaction data is sent to the target blockchain network. After that, the execution result of the monitored cross-chain transaction data is obtained from the target blockchain network, and then the execution result is sent to the source blockchain network.
  • the cross-chain communication method, device, cross-chain service system, and cross-chain transaction system provided by the embodiments of this application can obtain monitored cross-chain transactions from the source blockchain network Data
  • the cross-chain transaction data is the transaction between the source blockchain network and the target blockchain network.
  • the second transaction information including the cross-chain transaction data is sent to the target blockchain network.
  • the execution result of the monitored cross-chain transaction data is obtained from the target blockchain network, and then the execution result is sent to the source blockchain network.
  • FIG. 1 is a schematic diagram of a flowchart of a cross-blockchain communication method provided by an embodiment of the application;
  • FIG. 2 is an example diagram of a cross-chain service transaction business in the cross-blockchain communication method provided by an embodiment of the application;
  • FIG. 3 is a schematic structural diagram of a cross-blockchain communication device provided by an embodiment of the application.
  • FIG. 4 is a schematic diagram showing the structure of an electronic device provided by an embodiment of the present application.
  • FIG. 5 is a schematic diagram showing the structure of a cross-chain service system provided by an embodiment of the present application.
  • the embodiments of the present application provide a cross-blockchain communication method, device, cross-chain service system, and cross-chain transaction system, which can solve the technical problem that different blockchain networks are difficult to communicate with each other.
  • FIG. 1 is a schematic flowchart of a cross-blockchain communication method provided by an embodiment of the application. This method can be applied to cross-chain service nodes. As shown in Figure 1, the method includes:
  • the cross-chain transaction is a transaction between the source blockchain network and the target blockchain network.
  • the first transaction information includes the cross-chain transaction.
  • Transaction data is
  • the cross-chain transaction is a transaction between a source client corresponding to the source blockchain and a target client corresponding to the target blockchain.
  • the source client is the client that initiates the cross-chain transaction
  • the target client is the client specified by the cross-chain service.
  • the cross-chain transaction is between the first client corresponding to the source blockchain and the second client corresponding to the target blockchain
  • the first transaction information corresponds to the source blockchain, and the first transaction information includes cross-chain transaction data.
  • the source block chain is recorded in the block chain node of the source block chain network
  • the target block chain is recorded in the block chain node of the target block chain network.
  • the cross-chain service node can actively monitor the status of transaction data changes in the source blockchain network. If the first transaction information of the cross-chain transaction is detected by monitoring, the first transaction information is grabbed from the source blockchain network, and the cross-chain transaction data is determined according to the target blockchain network specified by the cross-chain transaction data. The encapsulation generates a cross-chain transaction data message, and the data message is pushed inside the cross-chain service node.
  • S120 Send second transaction information to the target blockchain network based on the cross-chain transaction data, where the second transaction information includes the cross-chain transaction data.
  • the cross-chain service node may send the second transaction information to the target client of the target blockchain network based on the cross-chain transaction data.
  • the target client is a third client
  • the cross-chain service node may send a first request to the third client of the target blockchain network based on the cross-chain transaction data.
  • the first request is used to request the third client to generate transaction information of the cross-chain transaction, so that the third client sends the generated transaction information to the blockchain node of the target blockchain network.
  • the transaction information generated by the third client corresponds to the target blockchain, and is transaction information that can be transmitted within the target blockchain network.
  • the transaction information generated by the third client includes cross-chain transaction data.
  • the transaction information generated by the third client is transaction information generated by the third client according to the cross-chain transaction data.
  • the third client can obtain the cross-chain transaction data from the second transaction information, and then in order to enable the cross-chain transaction data to be transmitted in the target blockchain network, the third client needs to generate the parameter information that includes the target blockchain network Trading Information.
  • the parameter information may include signature, verification information, and so on. It can be understood that the transaction information and the second transaction information generated by the third client include different signatures, verification information and other parameter information, but the transaction information and the second transaction information generated by the third client include the same cross-chain transaction data.
  • the third client can transmit the generated transaction information to the blockchain node in the target blockchain network, and the blockchain node in the target blockchain network can execute the transaction based on the received transaction information process.
  • the cross-chain transaction data message can be unpacked and analyzed, and the cross-chain transaction data message can be submitted according to the content of the message.
  • the transaction data is sent to the target client of the target blockchain network to initiate a transaction to the target client, so that the target blockchain network executes the transaction.
  • the second transaction information is generated by the cross-chain service node based on the cross-chain transaction data in step S120.
  • the cross-chain service node can actively monitor the execution process at any time to monitor the execution result of the second transaction information.
  • the process of executing the second transaction information on the target blockchain network is essentially the process of executing the transaction information generated by the third client on the target blockchain network.
  • S140 Send instruction information to the source blockchain network based on the execution result, where the instruction information is used to indicate the end of the cross-chain transaction.
  • the cross-chain service node may send the above instruction information to the source client of the source blockchain network based on the execution result, so that the source client sends the execution result to the blockchain node of the source blockchain network, so that the source block
  • the blockchain node in the chain network records the first transaction information in the source blockchain.
  • the cross-chain service node may send a second request to the fourth client of the source blockchain network based on the execution result.
  • the second request is used to request the fourth client to send the execution result to the blockchain node of the source blockchain network, so that the blockchain node of the source blockchain network records the first transaction information in the source blockchain network based on the execution result.
  • the source blockchain In the source blockchain.
  • the cross-chain service node (relay service) can monitor the cross-chain transaction initiated by the source blockchain network corresponding to user A’s account with the target blockchain network.
  • the service node provides the function of transferring the cross-chain transaction across the blockchain network, thereby transferring the data of the cross-chain transaction to the account of user B, that is, the account corresponding to the third client of the target blockchain network.
  • the cross-blockchain communication method provided in the embodiments of the present application may also be a cross-chain intercommunication method between the alliance chain and the alliance chain.
  • the first client and the second client are clients that initiate cross-chain transactions
  • the third client and the fourth client are clients designated by the cross-chain service.
  • the first client and the second client are The four clients can be the same, and the second client and the third client can be the same.
  • the first client and the fourth client may also be referred to as source clients
  • the second client and the third client may also be referred to as target clients.
  • the client that initiates the cross-chain transaction is referred to as the source client, and the client designated by the cross-chain service is referred to as the target client.
  • the target client any one of the first client to the fourth client may be referred to as the source client when initiating a cross-chain transaction, and may be referred to as the target client when it is the designated client of the cross-chain service.
  • the first client and the fourth client are located in the blockchain network A, and the second client and the third client are located in the blockchain network B.
  • the first client can initiate a cross-chain transaction to the third client through the cross-chain service node.
  • the blockchain network A is the source blockchain network
  • the first client is the source client
  • the blockchain network B is the target blockchain network
  • the third client is the target client.
  • the second client can initiate a cross-chain transaction to the fourth client through the cross-chain service node.
  • the blockchain network B is the source blockchain network
  • the second client is the source client
  • the block Chain network A is the target blockchain network
  • the fourth client is the target client.
  • the cross-chain service node can monitor the blockchain network and send data to the third client (target client) to achieve data interaction between the cross-chain service node and the blockchain network.
  • target client target client
  • the cross-chain service node can monitor the blockchain network and send data to the third client (target client) to achieve data interaction between the cross-chain service node and the blockchain network.
  • the first transaction information is used to indicate a cross-chain transaction in the source blockchain
  • the second transaction information is used to indicate a cross-chain transaction in the target blockchain.
  • the first transaction information and the second transaction information are the same Or different.
  • the cross-chain service node (relay service) can monitor the transaction status of the source blockchain network at all times, and push the cross-chain transaction according to the transaction status.
  • the source blockchain network initiates a cross-chain transaction through a cross-chain service node, and locks the assets to be transferred.
  • the cross-chain service node obtains and pushes the data of the cross-chain transaction, and pushes the data of the cross-chain transaction to the target blockchain network to follow
  • the data content of the cross-chain transaction initiates the cross-chain transaction submission of the target blockchain network.
  • the cross-chain service node (relay service) can monitor the execution status of the cross-chain transaction of the target blockchain network at all times, and push the execution result back to the source blockchain network.
  • the target blockchain network confirms to receive the data of the cross-chain transaction, and performs a consensus on-chain process within the target blockchain network.
  • the cross-chain service node pushes the cross-chain confirmation transaction to the source blockchain network.
  • the transaction data obtained by the cross-chain service node from each blockchain network is the transaction data that has reached a consensus within the blockchain network, so as to improve the cross-chain service node from the blockchain network.
  • the accuracy of the acquired transaction data is the accuracy of the acquired transaction data.
  • the cross-chain service node can determine whether a transaction is allowed between the source blockchain and the target blockchain to ensure the legitimacy of the cross-chain transaction.
  • the method may further include the following steps:
  • Step a Determine whether transactions are allowed between the source blockchain network and the target blockchain network based on the source blockchain network, the target blockchain network, and the preset cross-chain communication whitelist. If yes, go to step b.
  • Step b Determine that the cross-chain transaction data is legal data.
  • the cross-chain service node can use the pre-configured whitelist of allowed access to judge the cross-chain transaction data. After judging that the transaction between the source block chain and the target block chain is allowed, it is determined that the cross-chain transaction data is legal data.
  • the cross-chain service node can also use the forwarding routing table to perform the routing and forwarding operations of cross-chain transaction messages on the cross-chain transaction data, so as to realize the process of providing routing services. For example, you can monitor the service status of the next child node inside the cross-chain service node to route and forward the cross-chain transaction data.
  • the cross-chain communication protocol rules can be preset and data filtering can be performed according to the rules, so as to improve the data transmission efficiency of cross-blockchain communication.
  • the method may further include the following steps:
  • Step c Determine whether the content of the cross-chain transaction data meets the preset cross-chain communication protocol rules. If yes, go to step d.
  • Step d Determine that the cross-chain transaction data is valid data.
  • the cross-blockchain communication protocol can be defined in advance.
  • the cross-chain service node can verify whether the cross-chain transaction data complies with the filtering rules of the protocol. If so, the cross-chain transaction data will be pushed to the corresponding next child node within the cross-chain service node. So as to detect the validity of the cross-chain transaction data. Of course, invalid data requests can also be blocked.
  • the cross-blockchain communication protocol can be the blockchain transpot protocol (BTP) protocol or the inter-blockchain communication protocol (IBC), through the BTP protocol or the IBC protocol, the cross-chain can be checked Validity of transaction data. If the cross-chain transaction data meets the rules of the BTP protocol or the IBC protocol, the cross-chain transaction data is pushed to the corresponding next child node.
  • BTP blockchain transpot protocol
  • IBC inter-blockchain communication protocol
  • the blockchain cross-chain communication protocol is defined, and subsequent systems can directly use the protocol for heterogeneous system cross-chain communication to improve the data transmission efficiency of cross-blockchain communication.
  • a cross-chain service consensus mechanism between the source blockchain network and the target blockchain network can be set to more effectively verify whether a cross-chain transaction has reached a consensus between different blockchains.
  • the method may further include the following steps:
  • Step e verify whether the consensus mechanism corresponding to the source blockchain network and the consensus mechanism of the target blockchain network comply with the preset cross-chain consensus rules. If yes, go to step f.
  • Step f forming a cross-chain service consensus mechanism between the source blockchain network and the target blockchain network.
  • cross-chain consensus rules By presetting the cross-chain consensus rules, it can provide a certain consensus standard for the judgment process of whether the source blockchain network and the target blockchain network have reached a consensus, and can more effectively judge whether the cross-chain transaction is in different blocks. A consensus is reached between chains to more effectively verify the consensus results of cross-chain transactions.
  • the cross-chain service node may send the cross-chain transaction data to the target client after ensuring that the cross-chain transaction data is legal, valid, and reach a consensus, so as to ensure the accuracy of the cross-chain transaction process.
  • the method may further include the following steps:
  • Step g it is determined that a cross-chain service consensus mechanism has been formed, and the cross-chain transaction data is both legal data and valid data.
  • the legal and effective cross-chain transaction data is pushed to the designated target client to initiate the cross-chain to the target client transaction.
  • next transaction on-chain operation can be performed to ensure that the cross-chain transaction between the source blockchain network and the target blockchain network is legal, effective, and a consensus transaction , To ensure the accuracy of the cross-chain transaction process.
  • the cross-chain service node may use the cross-chain service consensus mechanism to check whether the transaction result actually reaches the consensus between different blockchain networks, so as to ensure the authenticity of the transaction result.
  • the method may further include the following steps:
  • Step h check whether the execution result complies with the cross-chain service consensus mechanism. If yes, go to step i.
  • Step i Determine that the execution result of the second transaction information is a successful transaction.
  • the cross-chain service node can use the cross-chain service consensus mechanism in step f to detect whether the cross-chain transaction consensus between the source blockchain network and the target blockchain network is actually reached. After confirming that the cross-chain transaction has indeed completed and reached a consensus, the execution result of the cross-chain transaction can be sent to the source client, so that the source blockchain network can confirm the completion of the cross-chain transaction.
  • the cross-chain service node may store the data of the cross-chain transaction in a tree structure to facilitate query and retrieval of the cross-chain transaction.
  • the method may further include the following steps: the cross-chain transaction data is recorded in a tree structure in a data structure corresponding to the source blockchain network and the target blockchain network.
  • the cross-chain service node can record the overall data of the cross-chain transaction, that is, save these data in the database, and can also follow the source blockchain network and target area.
  • the structure of the block chain network forms a tree structure of transaction record results to facilitate effective query and retrieval of cross-chain transactions.
  • Figure 3 provides a schematic structural diagram of a cross-blockchain communication device. As shown in Figure 3, the cross-blockchain communication device includes:
  • the first obtaining module 301 is configured to obtain the first transaction information of the monitored cross-chain transaction from the source blockchain network, the cross-chain transaction is the transaction between the source blockchain network and the target blockchain network, the first transaction Information includes: cross-chain transaction data;
  • the sending module 302 is configured to send second transaction information to the target blockchain network based on the cross-chain transaction data, and the second transaction information includes: cross-chain transaction data;
  • the second obtaining module 303 is configured to obtain the execution result of the end of execution of the second transaction information monitored from the target blockchain network;
  • the sending module 302 is further configured to send instruction information to the source blockchain network based on the execution result, where the instruction information is used to indicate the end of the cross-chain transaction.
  • the first transaction information is used to indicate a cross-chain transaction in the source blockchain network
  • the second transaction information is used to indicate a cross-chain transaction in the target blockchain network
  • the first transaction information and the second transaction The information is the same or different.
  • the device further includes:
  • the first judgment module is set to judge whether transactions are allowed between the source blockchain network and the target blockchain network based on the source blockchain network, the target blockchain network, and the preset cross-chain communication whitelist;
  • the first determining module is configured to determine that the cross-chain transaction data is legal data if transactions are allowed between the source blockchain network and the target blockchain network.
  • the device further includes:
  • the second judgment module is configured to judge whether the content of the cross-chain transaction data meets the preset cross-chain communication protocol rules
  • the second determining module is configured to determine that the cross-chain transaction data is valid data if the content of the cross-chain transaction data meets the preset cross-chain communication protocol rules.
  • the device further includes:
  • the verification module is set to verify whether the consensus mechanism corresponding to the source blockchain network and the consensus mechanism corresponding to the target blockchain network comply with the preset cross-chain consensus rules;
  • the formation module is set to form a cross-link between the source blockchain network and the target blockchain network if the consensus mechanism corresponding to the source blockchain network and the consensus mechanism corresponding to the target blockchain network meet the preset cross-chain consensus rules. Chain service consensus.
  • the device further includes:
  • the third determination module is set to determine that a cross-chain service consensus has been formed, and that the cross-chain transaction data is legal and valid data.
  • the device further includes:
  • the verification module is set to verify whether the execution result meets the cross-chain service consensus
  • the fourth determining module is configured to determine that the execution result of the second transaction information is a successful transaction if the execution result meets the cross-chain service consensus.
  • the device further includes:
  • the recording module is set to record the cross-chain transaction data in a tree structure corresponding to the source block chain and the target block chain.
  • the cross-blockchain communication device provided by the embodiment of the present application has the same technical features as the cross-blockchain communication method provided in the foregoing embodiment, so it can also solve the same technical problems and achieve the same technical effects.
  • the cross-chain service device includes a memory 401 and a processor 402.
  • the memory 401 stores a computer program that can run on the processor 402.
  • the processor 402 The steps of the method provided in the foregoing embodiments are implemented when the computer program is executed.
  • the electronic device further includes a bus 403 and a communication interface 404.
  • the processor 402, the communication interface 404 and the memory 401 are connected via the bus 403; the processor 402 is configured to execute executable modules stored in the memory 401, such as computer programs.
  • the memory 401 may include a high-speed random access memory (Random Access Memory, RAM for short), and may also include a non-volatile memory (non-volatile memory), such as at least one disk memory.
  • the communication connection between the system network element and at least one other network element is realized through at least one communication interface 404 (which may be wired or wireless), and the Internet, a wide area network, a local network, a metropolitan area network, etc. may be used.
  • the bus 403 may be an ISA bus, a PCI bus, an EISA bus, or the like.
  • the bus can be divided into an address bus, a data bus, a control bus, and so on.
  • only one bidirectional arrow is used to indicate in FIG. 4, but it does not mean that there is only one bus or one type of bus.
  • the memory 401 is used to store a program, and the processor 402 executes the program after receiving an execution instruction.
  • the method executed by the process definition apparatus disclosed in any embodiment of the present application can be applied to the processor 402 , Or implemented by the processor 402.
  • the processor 402 may be an integrated circuit chip with signal processing capability. In the implementation process, the steps of the foregoing method can be completed by an integrated logic circuit of hardware in the processor 402 or instructions in the form of software.
  • the foregoing processor 402 may be a general-purpose processor, including a central processing unit (Central Processing Unit, CPU for short), a network processor (Network Processor, NP), etc.; it may also be a digital signal processor (Digital Signal Processing, DSP for short), etc. ), Application Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components.
  • the methods, steps, and logical block diagrams disclosed in the embodiments of the present application can be implemented or executed.
  • the general-purpose processor may be a microprocessor or the processor may also be any conventional processor or the like.
  • the steps of the method disclosed in the embodiments of the present application may be directly embodied as being executed and completed by a hardware decoding processor, or executed and completed by a combination of hardware and software modules in the decoding processor.
  • the software module can be located in a mature storage medium in the field, such as random access memory, flash memory, read-only memory, programmable read-only memory, or electrically erasable programmable memory, registers.
  • the storage medium is located in the memory 401, and the processor 402 reads the information in the memory 401, and completes the steps of the foregoing method in combination with its hardware.
  • Figure 5 provides a schematic structural diagram of a cross-chain service system.
  • the cross-chain service system 500 includes: a plurality of execution service nodes, where the execution service node is set to monitor network transaction status, and push cross-chain transactions according to the transaction status; receive cross-chain transactions of the central service , And push to the designated client to initiate a transaction.
  • the execution service node needs to configure the designated monitoring network node and the designated transaction initiation client.
  • the execution service node is specifically set to: obtain the first transaction information of the monitored cross-chain transaction from the source blockchain network, and the cross-chain transaction is the transaction between the source blockchain network and the target blockchain network ,
  • the first transaction information includes: the cross-chain transaction data;
  • the second transaction information is sent to the target blockchain network based on the cross-chain transaction data, and the second transaction information includes: the cross-chain transaction data;
  • the monitoring is obtained from the target blockchain network
  • the execution result of the end of the execution of the second transaction information obtained; based on the execution result, sending instruction information to the source blockchain network, the instruction information being used to indicate the end of the cross-chain transaction.
  • Multiple execution service nodes can be deployed in a distributed manner.
  • the first execution service node 501 can be deployed close to the source blockchain network 601 and the source client 603 corresponding to the source blockchain network.
  • the second execution service node 505 can be deployed close to the target blockchain network 602 and the target client 604 corresponding to the target blockchain network 602, and is set to monitor transactions in the target blockchain network 602 and pass the target client 604 sends the transaction in the target blockchain network 602.
  • the cross-chain service system 500 further includes at least one central service node 503, which is configured to receive the cross-chain transaction submitted by the execution service node, verify the legality of the transaction, and push the transaction to the execution service node; the central service node needs Configure transaction verification rules and a list of gateway service nodes.
  • the central service node 503 is specifically set to verify whether the consensus mechanism corresponding to the source blockchain network and the consensus mechanism corresponding to the target blockchain network comply with the preset cross-chain consensus rules, and if so, the source block is formed The cross-chain service consensus between the chain network and the target blockchain network.
  • the cross-chain service system 500 further includes at least one routing service node 502 responsible for receiving the cross-chain transaction data pushed by the execution service node, and pushing the data to the central service node.
  • the routing service node 502 needs to configure a whitelist and a forwarding routing table that are allowed to be accessed.
  • the routing service node can be set to determine whether transactions are allowed between the source blockchain network and the target blockchain network based on the source blockchain network, the target blockchain network, and the preset cross-chain communication whitelist; If it is, it is determined that the cross-chain transaction data is legal data.
  • the cross-chain service system 500 further includes at least one gateway service node 504 configured to receive and verify whether the received data conforms to the transmission specification, and if it conforms, push the data to the corresponding execution service node.
  • the gateway service needs to configure data filtering rules.
  • the gateway service node is set to: and determine whether the content of the cross-chain transaction data meets the preset cross-chain communication protocol rules, and if so, determine that the cross-chain transaction data is valid data.
  • cross-chain transaction submission is triggered by the execution service node, which mainly includes monitoring transaction submission and receiving data transaction submission.
  • the execution service node monitors the specified network transaction status.
  • the execution service node initiates the cross-chain transaction submission of the target network according to the content of the transaction data; and the execution service node After receiving the cross-chain transaction verified by the central service node, the designated transaction data is pushed to the preset network client to initiate the transaction.
  • the execution service node includes the node transaction status monitoring function and transaction push submission function: monitor the data change status of the specified network node, if the monitoring finds cross-chain transaction data, then encapsulate and generate the cross-chain transaction data message according to the target network specified by the transaction data , Push the data message to the central service node; and receive the cross-chain transaction data message of the central service node, unpack and analyze the data message, submit the data item to the client of the designated network according to the message content, and initiate the transaction.
  • the central service node checks the validity of cross-chain transactions and records related cross-chain transactions. Among them, the central service node verifies the effectiveness of cross-chain transactions including: deploying distributed services, receiving cross-chain transaction messages, and performing cross-chain effectiveness in accordance with cross-chain service consensus requirements and the consensus mechanism of the source blockchain network and the target network.
  • the cross-chain service consensus is formed; and after passing the verification, the cross-chain transaction message is forwarded to the corresponding execution service node, and the execution service node performs the next transaction on-chain operation; saves the received cross-chain transaction to
  • a tree structure transaction record is formed, which is convenient for query and retrieval.
  • the gateway service node detects the received data request and verifies the validity of the received cross-chain transaction data. Among them, the gateway service node shields invalid data and checks the validity of cross-chain transactions including: detecting received data requests, shielding invalid data requests; and in accordance with the BTP protocol specifications, verifying the validity of cross-chain transactions, and if the requirements are met, The cross-chain transaction data message flows to the execution service node.
  • the routing service node provides routing jump services for the cross-chain transaction messages received from the execution service node.
  • the routing and forwarding operation of the cross-chain transaction message by the routing service node includes: listening to the state of the central service node; and routing and forwarding the cross-chain transaction data message received from the execution service node.
  • each service node in the cross-chain service system can be a distributed deployment node.
  • multiple routing service nodes 502 and multiple gateway service nodes 504 may be distributed in a cross-chain service system.
  • the database 506 may be set in the cross-chain service system or deployed separately.
  • the database 506 may be set to store the cross-chain transaction data and the execution result of the cross-chain transaction data in the form of a tree structure between blockchains.
  • the central service node 503 can call the data stored in the database 506, for example, can call the data stored in the database 506 through Java Database Connectivity (JDBC).
  • JDBC Java Database Connectivity
  • the embodiment of the application also provides a cross-chain transaction system, including a target blockchain network, a source blockchain network, a target client corresponding to the target blockchain network, a source client corresponding to the source blockchain network, and a cross-chain transaction system.
  • Chain service system As shown in Figure 5, it includes a target blockchain network 602, a source blockchain network 601, a target client 604 of the target blockchain network, a source client 603 of the source blockchain network, and the cross-chain provided by the above embodiment Service system 500.
  • the source client 603 may initiate a cross-chain transaction to the source blockchain network 601 through JavaScript Object Notation (JSON) or Hypertext Transfer Protocol (over Secure Socket Layer, HTTPS).
  • JSON JavaScript Object Notation
  • HTTPS Hypertext Transfer Protocol
  • cross-chain service system and cross-chain transaction system provided by the embodiments of this application have the same technical features as the cross-blockchain communication methods and devices provided in the above embodiments, so they can also solve the same technical problems and achieve the same technical effects .
  • an embodiment of the present application also provides a computer-readable storage medium, the computer-readable storage medium stores a computer program, and the computer program is executed by a processor to realize the above-mentioned cross-blockchain communication Method steps.
  • the embodiment of the present application also provides a computer program product containing instructions.
  • the computer program product containing instructions runs on a computer, the computer executes the steps of the above-mentioned cross-blockchain communication method.
  • the embodiment of the present application provides a computer program.
  • the computer program runs on a computer
  • the computer executes the steps of the cross-blockchain communication method provided by the embodiment of the present application.
  • the cross-blockchain communication device provided in the embodiments of the present application may be specific hardware on the device or software or firmware installed on the device.
  • the implementation principles and technical effects of the device provided in the embodiments of the present application are the same as those of the foregoing method embodiments.
  • the specific working process of the aforementioned system, device, and unit can refer to the corresponding process in the above method embodiment, which will not be repeated here.
  • the disclosed device and method can be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the units is only a logical function division, and there may be other divisions in actual implementation.
  • multiple units or components may be combined or It can be integrated into another system, or some features can be ignored or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be through some communication interfaces, indirect coupling or communication connection of devices or units, and may be in electrical, mechanical or other forms.
  • 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, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
  • the functional units in the embodiments provided in this application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • each block in the flowchart or block diagram may represent a module, program segment, or part of the code, and the module, program segment, or part of the code contains one or more functions for realizing the specified logical function. Executable instructions. It should also be noted that in some alternative implementations, the functions marked in the block may also occur in a different order from the order marked in the drawings.
  • each block in the block diagram and/or flowchart, and the combination of the blocks in the block diagram and/or flowchart can be implemented by a dedicated hardware-based system that performs the specified functions or actions Or it can be realized by a combination of dedicated hardware and computer instructions.
  • the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium.
  • the technical solution of this application essentially or the part that contributes to the related technology or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including several
  • the instructions are used to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the cross-blockchain communication method described in each embodiment of the present application.
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disks or optical disks, etc., which can store program codes. Medium.
  • cross-blockchain communication between different blockchain networks can be realized, so that different blockchain networks can communicate with each other.
  • Cross-chain transactions can be carried out between.

Landscapes

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

Abstract

一种跨区块链通信方法、装置、跨链服务系统及跨链交易系统,涉及区块链技术领域,解决了不同的区块链网络之间难以互相通信的技术问题。该方法包括:从源区块链网络获取监听到的跨链交易的第一交易信息,跨链交易为源区块链网络与目标区块链网络之间的交易,第一交易信息包括:跨链交易数据;基于跨链交易数据向目标区块链网络发送第二交易信息,第二交易信息包括:跨链交易数据;从目标区块链网络获取监听到的第二交易信息的执行结束的执行结果;基于执行结果向源区块链网络发送指示信息,指示信息用于指示跨链交易结束。

Description

跨区块链通信方法、装置、跨链服务系统及跨链交易系统
本申请要求于2019年12月30日提交中国专利局、申请号为201911403803.0,发明名称为“跨区块链通信方法、装置、跨链服务系统及跨链交易系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及区块链技术领域,尤其是涉及一种跨区块链通信方法、装置、跨链服务系统及跨链交易系统。
背景技术
区块链是一种在整个业务网络上共享的分布式账本,是比特币的底层技术,类似于一个数据库账本,记载所有的交易记录,本质上是一个去中心化的数据库。区块链技术提供了一种记录交易及数字交互的方式。
区块链网络是由分布在不同地点且具有多个终端的节点机互连而成的。区块链网络中任意一个节点均至少与两条链路相连,所以区块链网络内部的不同节点之间能够互相通讯。
但是,不同的区块链网络之间难以互相通信,例如,不同联盟的联盟链之间无法进行通信,这对区块链的应用过程造成了不便,从而影响区块链的使用效率。
发明内容
本申请实施例的目的在于提供一种跨区块链通信方法、装置、跨链服务系统及跨链交易系统,以解决不同的区块链网络之间难以互相通信的技术问题。
第一方面,本申请实施例提供了一种跨区块链通信方法,该方法包括:从源区块链网络获取监听到的跨链交易的第一交易信息,跨链交易为源区块 链网络与目标区块链网络之间的交易,第一交易信息包括:跨链交易的数据;基于跨链交易数据向目标区块链网络发送第二交易信息,第二交易信息包括:跨链交易数据;从目标区块链网络获取监听到的第二交易信息的执行结束的执行结果;基于执行结果向源区块链网络发送指示信息,指示信息用于指示跨链交易结束。
第二方面,本申请实施例提供了一种跨区块链通信装置,该装置包括:第一获取模块,设置为从源区块链网络获取监听到的跨链交易的第一交易信息,跨链交易为源区块链网络与目标区块链网络之间的交易,第一交易信息包括:跨链交易的数据;发送模块,设置为基于跨链交易数据向目标区块链网络发送第二交易信息,第二交易信息包括:跨链交易数据;第二获取模块,设置为从目标区块链网络获取监听到的第二交易信息的执行结束的执行结果;发送模块还设置为,基于执行结果向源区块链网络发送指示信息,指示信息用于指示所述跨链交易结束。
第三方面,本申请实施例提供了一种跨链服务设备,包括存储器、处理器,所述存储器中存储有可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述第一方面所述的方法的步骤。
第四方面,本申请实施例提供了一种跨链服务系统,该系统包括:多个执行服务节点,执行服务节点,设置为:从源区块链网络获取监听到的跨链交易的第一交易信息,跨链交易为源区块链网络与目标区块链网络之间的交易,第一交易信息包括:跨链交易的数据;基于跨链交易数据向目标区块链网络发送第二交易信息,第二交易信息包括:跨链交易数据;从目标区块链网络获取监听到的第二交易信息的执行结束的执行结果;基于执行结果向源区块链网络发送指示信息,指示信息用于指示所述跨链交易结束。
第五方面,本申请实施例提供了一种跨链交易系统,包括目标区块链网络、源区块链网络以及上述第四方面所述的跨链服务系统。
第六方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述第一方面所述方法。
第七方面,本申请实施例提供了一种包含指令的计算机程序产品,包含 指令的计算机程序产品在计算机上运行时,使得计算机执行本申请实施例所提供的跨区块链通信方法的步骤。
第八方面,本申请实施例提供了一种计算机程序,计算机程序在计算机上运行时,使得计算机执行本申请实施例所提供的跨区块链通信方法的步骤。
本申请实施例带来了以下有益效果:本申请实施例提供的跨区块链通信方法、装置、跨链服务系统及跨链交易系统,能够从源区块链网络获取监听到的跨链交易数据,该跨链交易数据为源区块链网络与目标区块链网络之间的交易。然后,基于跨链交易数据向目标区块链网络发送包括跨链交易数据的第二交易信息。之后从目标区块链网络获取监听到的跨链交易数据的执行结果,再将执行结果发送至源区块链网络中。本方案中,通过监听区块链网络的方式,以达到自身与区块链网络之间进行数据交互,进而实现最终的不同的区块链网络之间进行跨区块链通信,解决了不同的区块链网络之间难以互相通信的技术问题。再者,通过监听源区块链网络和目标区块链网络的交易状态,不需要对源区块链网络和目标区块链网络进行改造,能够直接对源区块链网络和目标区块链网络之间的跨链交易数据进行获取以及传输,实现效率更高的跨链交易过程。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例和相关技术的技术方案,下面对实施例和相关技术中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的跨区块链通信方法的流程图示意图;
图2为本申请实施例提供的跨区块链通信方法中,跨链服务交易业务的示例图;
图3为本申请实施例提供的一种跨区块链通信装置的结构示意图;
图4为示出了本申请实施例所提供的一种电子设备的结构示意图;
图5为示出了本申请实施例所提供的一种跨链服务系统的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
目前,可以使用类似的中继系统,从源区块链接收数据,通过该中继系统,推送到目标区块链。但是,这需要源区块链主动发送交易内容,这便需要对源区块链进行适当的改造,导致对源区块链网络会造成一定的侵入。而且,目前并无标准的跨链通信协议,不方便跨链系统间的数据标准化。
基于此,本申请实施例提供了一种跨区块链通信方法、装置、跨链服务系统及跨链交易系统,通过该方法可以解决不同的区块链网络之间难以互相通信的技术问题。
下面结合附图对本申请实施例进行进一步地介绍。
图1为本申请实施例提供的一种跨区块链通信方法的流程示意图。该方法可以应用于跨链服务节点。如图1所示,该方法包括:
S110,从源区块链网络获取监听到的跨链交易的第一交易信息,该跨链交易为源区块链网络与目标区块链网络之间的交易,该第一交易信息包括跨链交易数据。
在本申请实施例中,该跨链交易为源区块链对应的源客户端与目标区块链对应的目标客户端之间的交易。源客户端为发起跨链交易的客户端,目标客户端为跨链服务指定的客户端。
其中,若源客户端为第一客户端,目标客户端为第二客户端,则该跨链交易为源区块链对应的第一客户端与目标区块链对应的第二客户端之间的交易,该第一交易信息对应于源区块链,该第一交易信息包括跨链交易数据。源区块链记录于源区块链网络的区块链节点中,目标区块链记录于目标区块链网络的区块链节点中。
示例性的,跨链服务节点可以主动监听源区块链网络中交易数据变化状态。如果监听发现跨链交易的第一交易信息,则从源区块链网络中抓取出该第一交易信息,并根据该跨链交易数据指定的目标区块链网络,将该跨链交易数据封装生成跨链交易数据报文,将该数据报文在跨链服务节点的内部进行推送。
S120,基于跨链交易数据向目标区块链网络发送第二交易信息,该第二交易信息包括跨链交易数据。
其中,跨链服务节点可以基于跨链交易数据向目标区块链网络的目标客户端发送第二交易信息。
例如,该目标客户端为第三客户端,跨链服务节点可以基于跨链交易数据向目标区块链网络的第三客户端发送第一请求。该第一请求用于请求第三客户端生成跨链交易的交易信息,以使第三客户端将生成的交易信息发送至目标区块链网络的区块链节点。第三客户端生成的交易信息对应于目标区块链,为能够在目标区块链网络内进行传输的交易信息。且第三客户端生成的交易信息包括跨链交易数据。
其中,第三客户端生成的交易信息是第三客户端根据跨链交易数据而生成的交易信息。第三客户端可以从第二交易信息中获取跨链交易数据,然后为了能够使得跨链交易数据在目标区块链网络中传输,第三客户端需生成包括目标区块链网络的参数信息的交易信息。该参数信息可以包括签名、验证信息等。可以理解为,第三客户端生成的交易信息和第二交易信息包括不同的签名、验证信息等参数信息,但第三客户端生成的交易信息和第二交易信息包括相同的跨链交易数据。
需要说明的是,第三客户端可以将生成的交易信息传输至目标区块链网络中的区块链节点,目标区块链网络中的区块链节点便能够基于接收到的交 易信息执行交易过程。
例如,上述的跨链交易数据报文在跨链服务节点中被推送一段过程后,在进行交易分发时,可以拆包分析该跨链交易数据报文,并按照报文内容,提交该跨链交易数据到目标区块链网络的目标客户端,以向目标客户端发起交易,使目标区块链网络执行该交易。
S130,从目标区块链网络获取监听到的第二交易信息的执行结束的执行结果。
其中,第二交易信息是步骤S120中跨链服务节点基于跨链交易数据而生成的。
需要说明的是,在第二交易信息在目标区块链网络执行的过程中,跨链服务节点能够随时对该执行的过程进行主动监听,以监听到第二交易信息的执行结果。
其中,第二交易信息在目标区块链网络执行的过程,实质上就是上述第三客户端生成的交易信息在目标区块链网络执行的过程。
S140,基于执行结果向源区块链网络发送指示信息,该指示信息用于指示跨链交易结束。
其中,跨链服务节点可以基于执行结果向源区块链网络的源客户端发送上述指示信息,以使得源客户端向源区块链网络的区块链节点发送该执行结果,使得源区块链网络中的区块链节点将第一交易信息记录在源区块链中。
例如,以源客户端为第四客户端为例,跨链服务节点可以基于执行结果向源区块链网络的第四客户端发送第二请求。该第二请求用于请求第四客户端将执行结果发送至源区块链网络的区块链节点中,以使源区块链网络的区块链节点基于执行结果将第一交易信息记录在源区块链中。
例如,如图2所示,跨链服务节点(中继服务)可以监听到用户A的账户所对应的源区块链网络发起的与目标区块链网络之间的跨链交易,由跨链服务节点提供将该跨链交易跨区块链网络传输的功能,从而将该跨链交易的数据转移到用户B的账户,即目标区块链网络的第三客户端对应的账户。在实际应用中,本申请实施例提供的跨区块链通信方法也可以一种用于联盟链与联盟链之间的跨链互通方法。
其中,第一客户端和第二客户端为发起跨链交易的客户端,而第三客户端第四客户端为跨链服务指定的客户端,在一些实施例中,第一客户端和第四客户端可以为同一个,第二客户端和第三客户端可以为同一个。另外,第一客户端和第四客户端还可以称为源客户端,第二客户端和第三客户端还可以称为目标客户端。
在本申请实施例中,将发起跨链交易的客户端称为源客户端,将跨链服务指定的客户端称为目标客户端。上文中第一客户端至第四客户端中的任一客户端在发起跨链交易时可被称为源客户端,在作为跨链服务指定的客户端时可被称为目标客户端。
例如,第一客户端和第四客户端位于区块链网络A,第二客户端和第三客户端位于区块链网络B。
第一客户端可以通过跨链服务节点向第三客户端发起跨链交易。这种情况下,区块链网路A为源区块链网络,第一客户端为源客户端,区块链网络B为目标区块链网络,第三客户端为目标客户端。
或者,第二客户端可以通过跨链服务节点向第四客户端发起跨链交易,这种情况下,区块链网络B为源区块链网络,第二客户端为源客户端,区块链网络A为目标区块链网络,第四客户端为目标客户端。
本申请实施例中,跨链服务节点能够通过监听区块链网络的方式以及向第三客户端(目标客户端)发送数据的方式,达到跨链服务节点与区块链网络之间进行数据交互,以实现不同的区块链网络之间进行跨区块链的通信。
再者,通过监听源区块链网络和目标区块链网络的交易状态,不需要对源区块链网络和目标区块链网络进行改造,能够直接对源区块链网络和目标区块链网络之间的跨链交易数据进行获取以及传输,以实现效率更高的跨链交易过程。
下面对上述步骤进行详细介绍。
在一些实施例中,第一交易信息用于在源区块链中指示跨链交易,第二交易信息用于在目标区块链中指示跨链交易,第一交易信息和第二交易信息相同或不同。
例如,如图2所示,跨链服务节点(中继服务)能够时刻监听源区块链网络 的交易状态,并根据交易状态推送跨链交易。在一种实施方式中,由源区块链网络通过跨链服务节点发起跨链交易,并锁定待转移资产。当该跨链交易在源区块链网络内部达成共识确认之后,跨链服务节点便获取,以及推送该跨链交易的数据,将该跨链交易的数据推送至目标区块链网络,以按照跨链交易的数据内容,发起目标区块链网络的跨链交易提交。
同样的,跨链服务节点(中继服务)能够时刻监听目标区块链网络的该跨链交易的执行状态,并将执行结果推送回源区块链网络。在一实施方式中,目标区块链网络确认接收该跨链交易的数据,进行目标区块链网络内部的共识上链过程。当跨链交易确认阶段完成,目标区块链网络接收跨链交易资产后,即目标区块链网络达到跨链交易共识确认后,跨链服务节点推送跨链确认交易到源区块链网络。
通过共识确认的过程,使跨链服务节点从各个区块链网络处获取到的交易数据都是在区块链网络的内部达成了共识的交易数据,以提高跨链服务节点从区块链网络获取到的交易数据的准确度。
在一些实施例中,跨链服务节点可以判断源区块链和目标区块链之间是否允许交易,以确保跨链交易的合法性。作为一个示例,在步骤S110之后,该方法还可以包括以下步骤:
步骤a,基于源区块链网络、目标区块链网络和预设跨链通信白名单判断源区块链网络和目标区块链网络之间是否允许交易。若是,则执行步骤b。
步骤b,确定跨链交易数据为合法数据。
例如,跨链服务节点能够在获取到跨链交易数据后,利用预先配置的允许访问的白名单,对跨链交易数据进行判断。在判断出源区块链和目标区块链之间允许交易后确定跨链交易数据为合法数据。
在实际应用中,跨链服务节点还能够利用转发路由表对跨链交易数据进行跨链交易报文的路由转发操作,以实现路由服务的提供过程。例如,可以监听跨链服务节点内部下一个子节点的服务状态,以将跨链交易数据进行路由转发操作。
通过判断源区块链和目标区块链之间的交易许可情况,能够确保在源区块链和目标区块链之间进行跨链通讯的跨链交易数据的合法性。
在一些实施例中,可以预设跨链通信协议规则并按照该规则进行数据过滤,以提高跨区块链通讯的数据传输效率。作为一个示例,在步骤S110之后,该方法还可以包括以下步骤:
步骤c,判断跨链交易数据的内容是否符合预设跨链通信协议规则。若是,则执行步骤d。
步骤d,确定跨链交易数据为有效数据。
在实际应用中,可以预先定义跨区块链通信协议。跨链服务节点可以校验跨链交易数据是否符合该协议的过滤规则。如符合,则在跨链服务节点内部将跨链交易数据推送至对应的下一个子节点。从而检测出跨链交易数据的有效性。当然,也可以屏蔽无效的数据请求。
其中,该跨区块链通信协议可以区块链传输协议(blockchain transpot protocol,BTP)协议或跨链交互协议(Inter-Blockchain Communication protocol,IBC),通过该BTP协议或IBC协议,可以检验跨链交易数据的有效性。若跨链交易数据满足BTP协议或IBC协议的规则,则将跨链交易数据推送至对应的下一个子节点。
通过预设跨链通信协议规则,界定了区块链跨链的通信协议,后续系统便可以直接通过该协议进行异构系统跨链通讯,以提高跨区块链通讯的数据传输效率。
在一些实施例中,可以设置源区块链网络和目标区块链网络之间的跨链服务共识机制,以对跨链交易在不同区块链之间是否达成共识进行更有效的校验。作为一个示例,在步骤S110之后,该方法还可以包括以下步骤:
步骤e,校验源区块链网络对应的共识机制和目标区块链网络的共识机制是否符合预设跨链共识规则。若是,则执行步骤f。
步骤f,形成源区块链网络和目标区块链网络之间的跨链服务共识机制。
通过预设跨链共识规则,可以为源区块链网络和目标区块链网络之间是否达到共识的判断过程提供一定的共识标准,能够更加有效的判断出跨链交易是否在不同的区块链之间达成共识,以对跨链交易的共识结果进行更有效的校验。
在一些实施例中,跨链服务节点可以在确保跨链交易数据合法、有效且 能达成共识之后,再将跨链交易数据发送至目标客户端,以保证跨链交易过程的准确性。作为一个示例,在步骤S120之前,该方法还可以包括以下步骤:
步骤g,确定已经形成跨链服务共识机制,且跨链交易数据同时为合法数据及有效数据。
在源区块链网络和目标区块链网络之间已经形成共同的跨链服务共识机制后,将合法且有效的跨链交易数据推送至指定的目标客户端,以向目标客户端发起跨链交易。
通过一系列的校验、判断过程后,再进行下一步的交易上链操作,能够保证源区块链网络和目标区块链网络之间的跨链交易是合法、有效且能够达成共识的交易,以保证跨链交易过程的准确性。
在一些实施例中,跨链服务节点可以利用跨链服务共识机制检验交易结果是否真正达到不同区块链网络之间的共识,以保证交易结果的真实性。作为一个示例,在步骤S130之后,该方法还可以包括以下步骤:
步骤h,检验执行结果是否符合跨链服务共识机制。若是,则执行步骤i。
步骤i,确定第二交易信息的执行结果为交易成功。
跨链服务节点能够利用步骤f中的跨链服务共识机制,检测出是否真正达到源区块链网络和目标区块链网络之间的跨链交易共识。在确认该跨链交易确实完成达成共识后,便可以将跨链交易的执行结果发送至源客户端,以使源区块链网络确认跨链交易完成。
通过利用源区块链网络和目标区块链网络之间的跨链服务共识机制,对跨链交易在不同区块链网络之间的共识结果进行检测,能够保证最终的交易成功成是真正达成了不同区块链网络之间共识的真实结果。
在一些实施例中,跨链服务节点可以按照树形结构对跨链交易的数据进行储存,以方便对跨链交易进行查询检索。作为一个示例,该方法还可以包括以下步骤:将跨链交易数据以源区块链网络和目标区块链网络对应的数据结构,形成树形结构进行记录。
示例性的,如图2所示,跨链服务节点(中继服务)可以将该跨链交易的整体数据进行备案,即将这些数据保存至数据库中,还可以按照源区块链网络和目标区块链网络的结构,形成树形结构交易记录结果,以方便对跨链交易 进行有效的查询检索。
图3提供了一种跨区块链通信装置的结构示意图。如图3所示,跨区块链通信装置包括:
第一获取模块301,设置为从源区块链网络获取监听到的跨链交易的第一交易信息,跨链交易为源区块链网络与目标区块链网络之间的交易,第一交易信息包括:跨链交易数据;
发送模块302,设置为基于跨链交易数据向目标区块链网络发送第二交易信息,第二交易信息包括:跨链交易数据;
第二获取模块303,设置为从目标区块链网络获取监听到的第二交易信息的执行结束的执行结果;
发送模块302,还设置为基于执行结果向源区块链网络发送指示信息,指示信息用于指示跨链交易结束。
在一些实施例中,第一交易信息用于在源区块链网络中指示跨链交易,第二交易信息用于在目标区块链网络中指示跨链交易,第一交易信息和第二交易信息相同或不同。
在一些实施例中,该装置还包括:
第一判断模块,设置为基于源区块链网络、目标区块链网络和预设跨链通信白名单判断源区块链网络和目标区块链网络之间是否允许交易;
第一确定模块,设置为若源区块链网络和目标区块链网络之间允许交易,则确定跨链交易数据为合法数据。
在一些实施例中,该装置还包括:
第二判断模块,设置为判断跨链交易数据的内容是否符合预设跨链通信协议规则;
第二确定模块,设置为若跨链交易数据的内容符合预设跨链通信协议规则,则确定跨链交易数据为有效数据。
在一些实施例中,该装置还包括:
校验模块,设置为校验源区块链网络对应的共识机制和目标区块链网络对应的共识机制是否符合预设跨链共识规则;
形成模块,设置为若源区块链网络对应的共识机制和目标区块链网络对 应的共识机制符合预设跨链共识规则,则形成源区块链网络和目标区块链网络之间的跨链服务共识。
在一些实施例中,该装置还包括:
第三确定模块,设置为确定已经形成跨链服务共识,且跨链交易数据为合法数据及有效数据。
在一些实施例中,该装置还包括:
检验模块,设置为检验执行结果是否符合跨链服务共识;
第四确定模块,设置为若执行结果符合跨链服务共识,则确定第二交易信息的执行结果为交易成功。
在一些实施例中,该装置还包括:
记录模块,设置为将跨链交易数据以源区块链和目标区块链对应的结构,形成树形结构进行记录。
本申请实施例提供的跨区块链通信装置,与上述实施例提供的跨区块链通信方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
本申请实施例提供的一种跨链服务设备,如图4所示,跨链服务设备包括存储器401、处理器402,存储器401中存储有可在处理器402上运行的计算机程序,处理器402执行计算机程序时实现上述实施例提供的方法的步骤。
参见图4,电子设备还包括:总线403和通信接口404,处理器402、通信接口404和存储器401通过总线403连接;处理器402用于执行存储器401中存储的可执行模块,例如计算机程序。
其中,存储器401可能包含高速随机存取存储器(Random Access Memory,简称RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口404(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
总线403可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器401用于存储程序,所述处理器402在接收到执行指令后,执行所述程序,前述本申请任一实施例揭示的过程定义的装置所执行的方法可以应用于处理器402中,或者由处理器402实现。
处理器402可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器402中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器402可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器401,处理器402读取存储器401中的信息,结合其硬件完成上述方法的步骤。
图5提供了一种跨链服务系统的结构示意图。如图5所示,该跨链服务系统500包括:多个执行服务节点,其中,该执行服务节点设置为:监听网络交易状态,并根据交易状态推送跨链交易;接收中央服务的跨链交易,并推送给指定的客户端发起交易。执行服务节点需要配置指定的监听网络节点和指定的交易发起客户端。
作为一个示例,该执行服务节点具体设置为:从源区块链网络获取监听到的跨链交易的第一交易信息,跨链交易为源区块链网络与目标区块链网络之间的交易,第一交易信息包括:所述跨链交易数据;基于跨链交易数据向目标区块链网络发送第二交易信息,第二交易信息包括:跨链交易数据;从目标区块链网络获取监听到的第二交易信息的执行结束的执行结果;基于执行结果向源区块链网络发送指示信息,指示信息用于指示所述跨链交易结束。
多个执行服务节点可以采用分布式部署,例如,如图5所示,第一执行服务节点501可以部署在靠近源区块链网络601以及源区块链网络对应的源客户端603的位置处,设置为监听源区块链网络601中的交易以及通过源客户端603在源区块链网络601中发送交易。第二执行服务节点505可以部署在靠近目标区块链网络602以及目标区块链网络602对应的目标客户端604的位置处,设置为监听目标区块链网络602中的交易以及通过目标客户端604在目标区块链网络602中发送交易。
在一些实施例中,该跨链服务系统500还包括至少一个中央服务节点503,设置为接收执行服务节点提交的跨链交易,校验交易合法性,推送交易到执行服务节点;中央服务节点需要配置交易校验规则和网关服务节点列表。作为一个示例,该中央服务节点503具体设置为:校验源区块链网络对应的共识机制和目标区块链网络对应的共识机制是否符合预设跨链共识规则,若是,则形成源区块链网络和目标区块链网络之间的跨链服务共识。
在一些实施例中,该跨链服务系统500还包括至少一个路由服务节点502负责接收执行服务节点推送的跨链交易数据,并将该数据推送给中央服务节点。路由服务节点502需要配置允许访问的白名单和转发路由表。作为一个示例,该路由服务节点可以设置为:基于源区块链网络、目标区块链网络和预设跨链通信白名单判断源区块链网络和目标区块链网络之间是否允许交易;若是,则确定跨链交易数据为合法数据。
在一些实施例中,该跨链服务系统500还包括至少一个网关服务节点504,设置为接收校验接收的数据是否符合传输规范,如符合则将数据推送给对应的执行服务节点。网关服务需要配置数据过滤规则。作为一个示例,该网关服务节点设置为:以及判断跨链交易数据的内容是否符合预设跨链通信协议规则,若是,则确定跨链交易数据为有效数据。
举例来说,跨链交易提交由执行服务节点触发,主要包含监听交易提交和接收数据交易提交两种。执行服务节点监控指定的网络交易状态,当源区块链网络发起跨链交易并在本网络内共识确认后,执行服务节点按照交易数据内容,发起目标网络的跨链交易提交;以及执行服务节点在接收到中央服务节点校验后的跨链交易后,将指定的交易数据推送给预设的网络客户端, 进行交易发起。
执行服务节点包含节点交易状态监听功能和交易推送提交功能:监听指定的网络节点数据变化状态,如监听发现跨链交易数据,则根据该交易数据指定的目标网络,封装生成跨链交易数据报文,将该数据报文推送给中央服务节点;以及接收中央服务节点的跨链交易数据报文,拆包分析数据报文,按照报文内容,提交数据项到指定网络的客户端,发起交易。
中央服务节点对跨链的交易进行有效性检验,并记录相关跨链交易内容。其中,中央服务节点校验跨链交易的有效性包括:部署分布式服务,接收跨链交易报文,按照跨链服务共识要求和源区块链网络与目标网络的共识机制,进行跨链有效性校验,形成跨链服务共识;以及通过校验后,将跨链交易报文转发至相应的执行服务节点,由执行服务节点进行下一步交易上链操作;保存接收到的跨链交易至数据库中,并按照源区块链网络、目标网络的结构,形成树形结构交易记录,方便查询检索。
网关服务节点检测接收到的数据请求,对接收到的跨链交易数据进行合法性校验。其中,网关服务节点屏蔽无效数据,检验跨链交易有效性包括:检测接收到数据请求,屏蔽无效的数据请求;以及按照BTP的协议规范,检验跨链交易的有效性,如满足要求,则将跨链交易数据报文流转到执行服务节点。
路由服务节点针对从执行服务节点接收到的跨链交易报文,提供路由跳转服务。
路由服务节点进行跨链交易报文的路由转发操作包括:侦听中央服务节点状态;以及对从执行服务节点接收到的跨链交易报文,将跨链交易数据报文进行路由转发操作。
在实际应用中,跨链服务系统内部的各个服务节点可以是分布式部署的节点。示例性的,如图5所示,多个路由服务节点502和多个网关服务节点504可以分布式部署于跨链服务系统内。
当然,本申请实施例中还可以设置其他节点,如数据库506。数据库506可以设置于跨链服务系统内,也可以单独部署,数据库506可以设置为对跨链交易数据和跨链交易数据的执行结果以区块链间树形结构的形式进行储存。 在本申请实施例中,中央服务节点503可以调用数据库506中存储的数据,比如可以通过Java数据库连接(Java Database Connectivity,JDBC)调用数据库506中存储的数据。
本申请实施例还提供了一种跨链交易系统,包括目标区块链网络、源区块链网络、目标区块链网络对应的目标客户端、源区块链网络对应的源客户端以及跨链服务系统。如图5所示,包括目标区块链网络602、源区块链网络601、目标区块链网络的目标客户端604、源区块链网络的源客户端603以及上述实施例提供的跨链服务系统500。其中,源客户端603可通过JavaScript对象简谱(JavaScript Object Notation,JSON)或超文本传输安全协议(Hyper Text Transfer Protocol over Secure Socket Layer,HTTPS)向源区块链网络601发起跨链交易。
本申请实施例提供的跨链服务系统及跨链交易系统,与上述实施例提供的跨区块链通信方法及装置具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
对应于上述跨区块链通信方法,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述跨区块链通信方法的步骤。
本申请实施例还提供了一种包含指令的计算机程序产品,该包含指令的计算机程序产品在计算机上运行时,使得计算机执行上述跨区块链通信方法的步骤。
本申请实施例提供了一种计算机程序,计算机程序在计算机上运行时,使得计算机执行本申请实施例所提供的跨区块链通信方法的步骤。
本申请实施例所提供的跨区块链通信装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本申请实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通 过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中, 包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述跨区块链通信方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
工业实用性
基于本申请实施例提供的跨区块链通信方法、装置、跨链服务系统及跨链交易系统,能够实现不同的区块链网络之间进行跨区块链通信,使得不同区块链网络之间能够进行跨链交易。

Claims (16)

  1. 一种跨区块链通信方法,所述方法包括:
    从源区块链网络获取监听到的跨链交易的第一交易信息,所述跨链交易为源区块链网络与目标区块链网络之间的交易,所述第一交易信息包括:所述跨链交易的数据;
    基于所述跨链交易数据向所述目标区块链网络发送第二交易信息,所述第二交易信息包括:所述跨链交易数据;
    从所述目标区块链网络获取监听到的所述第二交易信息的执行结束的执行结果;
    基于所述执行结果向所述源区块链网络发送指示信息,所述指示信息用于指示所述跨链交易结束。
  2. 根据权利要求1所述的方法,其中,所述第一交易信息用于在所述源区块链网络中指示所述跨链交易,所述第二交易信息用于在所述目标区块链网络中指示所述跨链交易,所述第一交易信息和所述第二交易信息相同或不同。
  3. 根据权利要求1所述的方法,其中,在从源区块链网络获取监听到的跨链交易的第一交易信息的步骤之后,还包括:
    基于所述源区块链网络、所述目标区块链网络和预设跨链通信白名单判断所述源区块链网络和所述目标区块链网络之间是否允许交易;
    若是,则确定所述跨链交易数据为合法数据。
  4. 根据权利要求3所述的方法,其中,在从源区块链网络获取监听到的跨链交易的第一交易信息的步骤之后,还包括:
    判断所述跨链交易数据的内容是否符合预设跨链通信协议规则;
    若是,则确定所述跨链交易数据为有效数据。
  5. 根据权利要求4所述的方法,其中,在从源区块链网络获取监听到的跨链交易的第一交易信息的步骤之后,还包括:
    校验所述源区块链网络对应的共识机制和所述目标区块链网络对应的共识机制是否符合预设跨链共识规则;
    若是,则形成所述源区块链网络和所述目标区块链网络之间的跨链服务共识。
  6. 根据权利要求5所述的方法,其中,在基于所述跨链交易数据向所述目标区块链网络发送第二交易信息的步骤之前,还包括:
    确定已经形成所述跨链服务共识,且所述跨链交易数据为合法数据及有效数据。
  7. 根据权利要求6所述的方法,其中,在从所述目标区块链网络获取监听到的所述第二交易信息的执行结束的执行结果的步骤之后,还包括:
    检验所述执行结果是否符合所述跨链服务共识;
    若是,则确定所述第二交易信息的执行结果为交易成功。
  8. 根据权利要求1-7任一项所述的方法,其中,所述方法还包括:
    将所述跨链交易数据以所述源区块链网络和所述目标区块链网络对应的数据结构,形成树形结构进行记录。
  9. 一种跨区块链通信装置,所述装置包括:
    第一获取模块,设置为从源区块链网络获取监听到的跨链交易的第一交易信息,所述跨链交易为源区块链网络与目标区块链网络之间的交易,所述第一交易信息包括:所述跨链交易的数据;
    发送模块,设置为基于所述跨链交易数据向所述目标区块链网络发送第二交易信息,所述第二交易信息包括:所述跨链交易数据;
    第二获取模块,设置为从所述目标区块链网络获取监听到的所述第二交易信息的执行结束的执行结果;
    所述发送模块,还设置为基于所述执行结果向所述源区块链网络发送指示信息,所述指示信息用于指示所述跨链交易结束。
  10. 一种跨链服务设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述权利要求1至8任一项所述的方法的步骤。
  11. 一种跨链服务系统,所述系统包括多个执行服务节点,所述执行服务节点,设置为:
    从源区块链网络获取监听到的跨链交易的第一交易信息,所述跨链交易为源区块链网络与目标区块链网络之间的交易,所述第一交易信息包括:所述跨链交易的数据;
    基于所述跨链交易数据向所述目标区块链网络发送第二交易信息,所述第二交易信息包括:所述跨链交易数据;
    从所述目标区块链网络获取监听到的所述第二交易信息的执行结束的执行结果;
    基于所述执行结果向所述源区块链网络发送指示信息,所述指示信息用于指示所述跨链交易结束。
  12. 根据权利要求11所述的系统,其中,所述系统还包括中央服务节点、路由服务节点以及网关服务节点;
    所述中央服务节点,设置为校验所述源区块链网络对应的共识机制和所述目标区块链网络对应的共识机制是否符合预设跨链共识规则,若是,则形成所述源区块链网络和所述目标区块链网络之间的跨链服务共识;
    所述网关服务节点,设置为判断所述跨链交易数据的内容是否符合预设 跨链通信协议规则,若是,则确定所述跨链交易数据为有效数据;
    所述路由服务节点,设置为基于所述源区块链网络、所述目标区块链网络和预设跨链通信白名单判断所述源区块链网络和所述目标区块链网络之间是否允许交易;若是,则确定所述跨链交易数据为合法数据。
  13. 一种跨链交易系统,包括目标区块链网络、源区块链网络以及上述权利要求11至12任一项所述的跨链服务系统。
  14. 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至8任一所述的方法步骤。
  15. 一种包含指令的计算机程序产品,所述包含指令的计算机程序产品在计算机上运行时,使得计算机执行权利要求1至8任一所述的方法步骤。
  16. 一种计算机程序,所述计算机程序在计算机上运行时,使得计算机执行权利要求1至8任一所述的方法步骤。
PCT/CN2020/140740 2019-12-30 2020-12-29 跨区块链通信方法、装置、跨链服务系统及跨链交易系统 WO2021136251A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911403803.0 2019-12-30
CN201911403803.0A CN111181968B (zh) 2019-12-30 2019-12-30 跨区块链通信方法、装置、跨链服务系统及跨链交易系统

Publications (1)

Publication Number Publication Date
WO2021136251A1 true WO2021136251A1 (zh) 2021-07-08

Family

ID=70621524

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/140740 WO2021136251A1 (zh) 2019-12-30 2020-12-29 跨区块链通信方法、装置、跨链服务系统及跨链交易系统

Country Status (2)

Country Link
CN (1) CN111181968B (zh)
WO (1) WO2021136251A1 (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113626850A (zh) * 2021-10-13 2021-11-09 北京百度网讯科技有限公司 基于联盟链的请求处理方法、装置、设备和存储介质
CN114666098A (zh) * 2022-02-28 2022-06-24 重庆趣链数字科技有限公司 一种移动端无侵入式事件监听通用上链机制
CN114679274A (zh) * 2021-12-31 2022-06-28 支付宝(杭州)信息技术有限公司 跨子网交互的权限控制方法及装置、电子设备、存储介质
CN114785804A (zh) * 2022-04-29 2022-07-22 蚂蚁区块链科技(上海)有限公司 用于跨区块链交互的系统及方法
CN114793235A (zh) * 2022-04-29 2022-07-26 蚂蚁区块链科技(上海)有限公司 用于跨区块链交互的系统及方法
CN114844904A (zh) * 2022-04-29 2022-08-02 蚂蚁区块链科技(上海)有限公司 用于跨区块链交互的系统及方法
CN114844905A (zh) * 2022-04-29 2022-08-02 蚂蚁区块链科技(上海)有限公司 用于跨区块链交互的系统及方法
CN115208817A (zh) * 2022-05-29 2022-10-18 北京理工大学 一种基于跨链网关和Floyd算法的可信跨链路由方法
CN115714812A (zh) * 2022-11-07 2023-02-24 杭州复杂美科技有限公司 跨链中继方法、计算机设备和存储介质
CN116566745A (zh) * 2023-07-11 2023-08-08 国网湖北省电力有限公司武汉供电公司 一种基于区块链的数据共享与监测系统及方法
WO2023201927A1 (zh) * 2022-04-23 2023-10-26 东南大学 一种面向以链治链的区块链跨链监管方法
CN116991608A (zh) * 2023-09-26 2023-11-03 易方信息科技股份有限公司 一种基于网状架构的应用内跨区域通信方法及相关装置

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111181968B (zh) * 2019-12-30 2021-09-21 北京金山云网络技术有限公司 跨区块链通信方法、装置、跨链服务系统及跨链交易系统
CN111626858A (zh) * 2020-05-28 2020-09-04 北京金山云网络技术有限公司 冲正交易的处理方法、装置、电子设备和计算机可读介质
CN111680996B (zh) * 2020-05-28 2023-09-22 中国工商银行股份有限公司 基于区块链的生活缴费数据处理方法、装置及系统
CN111600908B (zh) * 2020-06-17 2021-07-13 杭州云链趣链数字科技有限公司 数据处理的方法、系统、计算机设备和可读存储介质
CN111738721B (zh) * 2020-06-23 2024-07-23 金蝶软件(中国)有限公司 一种区块链交易监听方法以及相关装置
CN111756736A (zh) * 2020-06-24 2020-10-09 深圳市网心科技有限公司 一种异构区块链间的跨链方法、系统及电子设备和存储介质
CN111768006B (zh) * 2020-06-24 2024-09-06 北京金山云网络技术有限公司 一种人工智能模型的训练方法、装置、设备及存储介质
CN114077948A (zh) * 2020-08-14 2022-02-22 北京金山云网络技术有限公司 区块链上的交易监管方法、装置和电子设备
CN112258184B (zh) * 2020-10-28 2023-08-01 成都质数斯达克科技有限公司 冻结区块链网络的方法、装置、电子设备及可读存储介质
CN112258183B (zh) * 2020-10-28 2023-08-01 成都质数斯达克科技有限公司 跨链私密交易方法、区块链网络以及电子设备
CN112615838B (zh) * 2020-12-10 2022-08-23 浙商银行股份有限公司 一种可扩展的区块链跨链通信方法
CN112235423B (zh) * 2020-12-11 2021-08-10 腾讯科技(深圳)有限公司 跨链事务处理方法及装置、电子设备、存储介质
CN112699136B (zh) * 2020-12-29 2023-04-14 杭州趣链科技有限公司 一种跨链存证方法及相关装置
CN112953999B (zh) * 2020-12-29 2024-05-24 合肥达朴汇联科技有限公司 应用于t1节点的区块链信息跨链交互方法、系统、设备
WO2022141059A1 (zh) * 2020-12-29 2022-07-07 合肥达朴汇联科技有限公司 区块链信息跨链交互方法、系统、电子设备及存储介质
CN112948433B (zh) * 2021-02-24 2024-06-04 北京金山云网络技术有限公司 一种跨区块链查询方法、装置、系统、设备及介质
CN113052697B (zh) * 2021-03-10 2023-08-01 从法信息科技有限公司 一种基于可信度的跨链任务执行方法、装置和电子设备
CN113159946A (zh) * 2021-03-13 2021-07-23 三一智造(深圳)有限公司 一种基于区块链的跨链交易方法
CN112804358B (zh) * 2021-03-30 2021-07-23 支付宝(杭州)信息技术有限公司 一种基于中继设备网络跨链中转数据的方法和装置
CN112861190B (zh) * 2021-04-23 2021-07-16 腾讯科技(深圳)有限公司 数据跨链协同方法、系统及装置
CN113242305B (zh) * 2021-05-13 2022-11-11 杭州趣链科技有限公司 跨链事务处理方法、装置、计算机设备及介质
CN113242317B (zh) * 2021-06-11 2022-08-19 广东浪潮智慧计算技术有限公司 一种面向联盟链监管系统的寻址路由同步方法和相关装置
CN115701078B (zh) * 2021-07-27 2024-06-04 腾讯科技(深圳)有限公司 跨链交易处理方法、装置、电子设备以及存储介质
CN114169890A (zh) * 2021-12-17 2022-03-11 中国电子科技网络信息安全有限公司 一种基于骨干节点联盟链跨链接入方法及架构系统
CN114399303A (zh) * 2022-01-17 2022-04-26 支付宝实验室(新加坡)有限公司 基于区块链的资源处理方法以及系统
CN114374698B (zh) * 2022-03-22 2022-05-17 环球数科集团有限公司 一种基于Ingress的自动NodePort池切换系统
CN114969208A (zh) * 2022-05-31 2022-08-30 上海加密原生科技有限公司 跨链事件处理方法及装置
CN117807157A (zh) * 2022-09-26 2024-04-02 腾讯科技(深圳)有限公司 区块链的交易执行方法、装置、程序产品、设备和介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108269190A (zh) * 2018-01-17 2018-07-10 深圳四方精创资讯股份有限公司 基于跨链中继平台的跨链方法及其系统
CN109784921A (zh) * 2018-12-29 2019-05-21 广州蓝石信息技术有限公司 基于去中心化网关的通用跨链通信机制
CN109784881A (zh) * 2018-12-29 2019-05-21 广州蓝石信息技术有限公司 基于去中心化网关的通用跨链支付方案
WO2019141984A1 (en) * 2018-01-17 2019-07-25 SETL Development Limited Interaction between blockchains
CN110597907A (zh) * 2019-09-10 2019-12-20 腾讯科技(深圳)有限公司 跨区块链的数据信息同步方法、装置、设备及介质
CN111181968A (zh) * 2019-12-30 2020-05-19 北京金山云网络技术有限公司 跨区块链通信方法、装置、跨链服务系统及跨链交易系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190066068A1 (en) * 2017-08-22 2019-02-28 Sap Se Transaction Platform Providing Unified Interaction with Multiple Heterogeneous Blockchains
CN108805704A (zh) * 2018-05-16 2018-11-13 深圳市网心科技有限公司 区块链业务实现方法、监听设备、存储介质及系统
CN108876369B (zh) * 2018-06-05 2021-07-13 上海和数软件有限公司 基于区块链的数据通信方法、装置及计算机可读存储介质
CN109064337A (zh) * 2018-10-18 2018-12-21 尚维斯 一种基于区块链的跨链记账方法
CN110135186B (zh) * 2019-04-11 2020-10-09 浙江工业大学 基于区块链技术的医疗数据交易与共享方法
CN110288345B (zh) * 2019-06-26 2022-04-05 深圳市迅雷网络技术有限公司 跨链通信方法、装置、主链节点及存储介质
CN110517029B (zh) * 2019-08-29 2024-02-23 深圳市迅雷网络技术有限公司 区块链跨链交易验证的方法、装置、设备及区块链系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108269190A (zh) * 2018-01-17 2018-07-10 深圳四方精创资讯股份有限公司 基于跨链中继平台的跨链方法及其系统
WO2019141984A1 (en) * 2018-01-17 2019-07-25 SETL Development Limited Interaction between blockchains
CN109784921A (zh) * 2018-12-29 2019-05-21 广州蓝石信息技术有限公司 基于去中心化网关的通用跨链通信机制
CN109784881A (zh) * 2018-12-29 2019-05-21 广州蓝石信息技术有限公司 基于去中心化网关的通用跨链支付方案
CN110597907A (zh) * 2019-09-10 2019-12-20 腾讯科技(深圳)有限公司 跨区块链的数据信息同步方法、装置、设备及介质
CN111181968A (zh) * 2019-12-30 2020-05-19 北京金山云网络技术有限公司 跨区块链通信方法、装置、跨链服务系统及跨链交易系统

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113626850A (zh) * 2021-10-13 2021-11-09 北京百度网讯科技有限公司 基于联盟链的请求处理方法、装置、设备和存储介质
CN113626850B (zh) * 2021-10-13 2022-03-11 北京百度网讯科技有限公司 基于联盟链的请求处理方法、装置、设备和存储介质
CN114679274A (zh) * 2021-12-31 2022-06-28 支付宝(杭州)信息技术有限公司 跨子网交互的权限控制方法及装置、电子设备、存储介质
CN114666098A (zh) * 2022-02-28 2022-06-24 重庆趣链数字科技有限公司 一种移动端无侵入式事件监听通用上链机制
WO2023201927A1 (zh) * 2022-04-23 2023-10-26 东南大学 一种面向以链治链的区块链跨链监管方法
CN114844904B (zh) * 2022-04-29 2024-03-29 蚂蚁区块链科技(上海)有限公司 用于跨区块链交互的系统及方法
CN114844904A (zh) * 2022-04-29 2022-08-02 蚂蚁区块链科技(上海)有限公司 用于跨区块链交互的系统及方法
CN114844905A (zh) * 2022-04-29 2022-08-02 蚂蚁区块链科技(上海)有限公司 用于跨区块链交互的系统及方法
CN114793235A (zh) * 2022-04-29 2022-07-26 蚂蚁区块链科技(上海)有限公司 用于跨区块链交互的系统及方法
CN114785804B (zh) * 2022-04-29 2024-03-29 蚂蚁区块链科技(上海)有限公司 用于跨区块链交互的系统及方法
CN114785804A (zh) * 2022-04-29 2022-07-22 蚂蚁区块链科技(上海)有限公司 用于跨区块链交互的系统及方法
CN114844905B (zh) * 2022-04-29 2024-03-29 蚂蚁区块链科技(上海)有限公司 用于跨区块链交互的系统及方法
CN114793235B (zh) * 2022-04-29 2024-03-29 蚂蚁区块链科技(上海)有限公司 用于跨区块链交互的系统及方法
CN115208817A (zh) * 2022-05-29 2022-10-18 北京理工大学 一种基于跨链网关和Floyd算法的可信跨链路由方法
CN115208817B (zh) * 2022-05-29 2023-10-10 北京理工大学 一种基于跨链网关和Floyd算法的可信跨链路由方法
CN115714812A (zh) * 2022-11-07 2023-02-24 杭州复杂美科技有限公司 跨链中继方法、计算机设备和存储介质
CN116566745A (zh) * 2023-07-11 2023-08-08 国网湖北省电力有限公司武汉供电公司 一种基于区块链的数据共享与监测系统及方法
CN116566745B (zh) * 2023-07-11 2023-10-13 国网湖北省电力有限公司武汉供电公司 一种基于区块链的数据共享与监测系统及方法
CN116991608B (zh) * 2023-09-26 2024-02-06 易方信息科技股份有限公司 一种基于网状架构的应用内跨区域通信方法及相关装置
CN116991608A (zh) * 2023-09-26 2023-11-03 易方信息科技股份有限公司 一种基于网状架构的应用内跨区域通信方法及相关装置

Also Published As

Publication number Publication date
CN111181968B (zh) 2021-09-21
CN111181968A (zh) 2020-05-19

Similar Documents

Publication Publication Date Title
WO2021136251A1 (zh) 跨区块链通信方法、装置、跨链服务系统及跨链交易系统
CN112446785B (zh) 跨链交易方法、系统、装置、设备和存储介质
CN109636427B (zh) 基于区块链系统的业务处理方法、装置、介质及电子设备
US20220407726A1 (en) Consensus method for blockchain, consensus node, electronic device, and storage medium
WO2016184266A1 (zh) 一种预警方法、装置及处理服务器
EP2918057B1 (en) Methods and nodes for verification of data
CN107454094A (zh) 一种数据交互方法和系统
WO2017076214A1 (zh) 一种基于手机短信的网站登录方法及其登录系统
WO2016127884A1 (zh) 消息推送方法及装置
WO2021232590A1 (zh) 基于私有链的用户验证方法、装置、计算机设备及存储介质
WO2019227337A1 (zh) 基于区块链的安全管理方法、相关装置及存储介质
US10305913B2 (en) Authentication control device and authentication control method
JP2024505692A (ja) ブロックチェーンネットワークに基づくデータ処理方法、装置及びコンピュータ機器
CN113015165A (zh) 物联网平台设备接入方法、设备及系统
CN112712452B (zh) 基于区块链的审批信息处理方法和装置
CN112184436B (zh) 数据同步方法、电子设备及可读存储介质
CN114567643A (zh) 跨区块链的数据流转方法、装置及相关设备
CN104468594A (zh) 一种数据请求的方法、装置及系统
CN114125812A (zh) 一种数据同步方法、装置、服务器及存储介质
CN111262830B (zh) 安全认证方法、装置、系统、电子设备及存储介质
EP3219081A1 (en) Secure network request anonymization
US20170237716A1 (en) System and method for interlocking intrusion information
CN110909032A (zh) 区块链中数据的管理方法及装置
CN111092958A (zh) 一种节点接入方法、装置、系统及存储介质
CN115664761A (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: 20909156

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20909156

Country of ref document: EP

Kind code of ref document: A1