CN112804359B - Method and apparatus for providing cross-chain messages - Google Patents

Method and apparatus for providing cross-chain messages Download PDF

Info

Publication number
CN112804359B
CN112804359B CN202110339826.0A CN202110339826A CN112804359B CN 112804359 B CN112804359 B CN 112804359B CN 202110339826 A CN202110339826 A CN 202110339826A CN 112804359 B CN112804359 B CN 112804359B
Authority
CN
China
Prior art keywords
cross
chain
function
transaction
contract
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110339826.0A
Other languages
Chinese (zh)
Other versions
CN112804359A (en
Inventor
余逸荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Ant Blockchain Technology Shanghai Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Ant Blockchain Technology Shanghai Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd, Ant Blockchain Technology Shanghai Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202110339826.0A priority Critical patent/CN112804359B/en
Publication of CN112804359A publication Critical patent/CN112804359A/en
Application granted granted Critical
Publication of CN112804359B publication Critical patent/CN112804359B/en
Priority to PCT/CN2022/081748 priority patent/WO2022206438A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/1059Inter-group management mechanisms, e.g. splitting, merging or interconnection of groups
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Abstract

The embodiment of the specification provides a method and a device for providing a cross-chain message, wherein the method is executed by a node device of a first blockchain and comprises the following steps: obtaining a first transaction from a first blockchain, the first transaction calling a first contract, the first contract comprising a cross-chain function library comprising a sending function, the first transaction comprising a call to the sending function, and the first transaction providing a first cross-chain message to the sending function when executed; executing the first transaction to store the first cross-chain message in the first blockchain.

Description

Method and apparatus for providing cross-chain messages
Technical Field
The embodiment of the specification relates to the technical field of block chains, and more particularly, to a method and an apparatus for providing a cross-chain message, a method and an apparatus for relaying a cross-chain message, and a method and an apparatus for acquiring a cross-chain message.
Background
The block chain technology is also called as distributed book technology, is decentralized distributed database technology and is characterized by decentralized, transparent disclosure, no tampering and trusty. Each data of the block chain is broadcasted to the block chain nodes of the whole network, and each whole node has the full amount of consistent data. With the fire of blockchain technology, many different types of chains have emerged, which are used in the fields of finance, health care, supply chain, asset management and traceability. Currently, how to enable different types of chains to collaborate cooperatively to realize circulation of value is an important exploration direction. In existing cross-chain techniques, in a message sending blockchain, cross-chain messages are typically provided out-of-chain by invoking a contract for sending the cross-chain messages in a business contract, and in a message receiving blockchain, cross-chain messages are typically delivered to the business contract by invoking a contract for receiving the cross-chain messages in a transaction.
Therefore, a more efficient scheme for transferring messages across chains is needed.
Disclosure of Invention
Embodiments of the present disclosure aim to provide a more efficient scheme for transferring messages across chains to address the deficiencies in the prior art.
To achieve the above object, one aspect of the present specification provides a method for providing a cross-chain message, the method being performed by a node device of a first blockchain, and including:
obtaining a first transaction from a first blockchain, the first transaction calling a first contract, the first contract comprising a cross-chain function library comprising a sending function, the first transaction comprising a call to the sending function, and the first transaction providing a first cross-chain message to the sending function when executed;
executing the first transaction to store the first cross-chain message in the first blockchain.
In one embodiment, executing the first transaction to deposit the first cross-chain message in the first blockchain includes executing the first transaction to record the first cross-chain message in a message queue in an account state of a first contract, the cross-chain function library further including a query function therein, the method further including:
acquiring a second transaction, wherein a query function in the first contract is called in the second transaction;
executing a second transaction to read the first cross-chain message from the message queue;
generating first data corresponding to the second transaction, wherein the first data comprises the first cross-link message;
storing the first data into the blockchain.
In one embodiment, the first data is a receipt of the second transaction.
In one embodiment, executing the first transaction to deposit the first cross-chain message in the first blockchain includes executing the first transaction; generating a receipt of the first transaction, wherein the receipt of the first transaction comprises the first cross-chain message; depositing a receipt for the first transaction in the first blockchain.
In one embodiment, the first contract further includes a first business function, the first transaction calls the first business function of the first contract, and the first business function calls the sending function.
Another aspect of the present specification provides a method for transferring a cross-link message, where the method is performed by a relay device, and a first contract in a first blockchain and a second contract in a second blockchain are pre-registered in the relay device, where the first contract is used to send the cross-link message, the second contract is used to receive the cross-link message, and both the first contract and the second contract include a cross-link function library therein, and the method includes:
obtaining a first cross-chain message from a first blockchain through the first contract;
determining a received contract for the first cross-chain message as the second contract;
sending a third transaction to the second blockchain, the third transaction invoking a receive function in a second contract, and the third transaction providing the receive function with the first cross-chain message, the receive function being a function included in the cross-chain function library.
In one embodiment, obtaining a first cross-chain message from a first blockchain via the first contract comprises:
sending a second transaction to the first blockchain, wherein a query function in a first contract is called in the second transaction, the account state of the first contract comprises a message queue of cross-chain messages, the query function is a function included in the cross-chain function library, and the query function is used for reading the cross-chain messages in the message queue;
and acquiring first data corresponding to the second transaction from the first blockchain, wherein the first data comprises a first cross-chain message in the message queue.
In one embodiment, retrieving a first cross-chain message from a first blockchain via the first contract includes retrieving a receipt for a first transaction from a first blockchain based on a first contract account, the first transaction including a call to a send function in the first contract, the send function being a function included in the cross-chain function library, the first transaction, when executed, depositing a receipt including the first cross-chain message to the first blockchain.
Another aspect of the present specification provides a method of receiving a cross-chain message, the method being performed by a node device of a second blockchain, and including:
obtaining a third transaction from a second blockchain, wherein the third transaction is sent by a relay device, a receiving function in a second contract is called in the third transaction, the third transaction provides the first cross-chain message to the receiving function, the second contract comprises a cross-chain function library, and the receiving function is a function included in the cross-chain function library;
executing the third transaction to obtain the first cross-link message.
In one embodiment, the second contract includes a business function, the receive function includes a call to the business function, and executing the third transaction further includes, after obtaining the first cross-chain message, executing the business function and providing the first cross-chain message to the business function.
Another aspect of the present specification provides an apparatus for providing a cross-chain message, where the apparatus is deployed in a node device of a first blockchain, and includes:
a first obtaining unit, configured to obtain a first transaction from a first blockchain, the first transaction calling a first contract, the first contract including a cross-chain function library including a sending function, the first transaction including a call to the sending function, and the first transaction providing a first cross-chain message to the sending function when executed;
a first execution unit configured to execute the first transaction to store the first cross-chain message in the first blockchain.
In one embodiment, the first execution unit is further configured to execute the first transaction to record the first cross-chain message in a message queue in an account status of a first contract, the cross-chain function library further includes a query function, and the apparatus further includes:
the second acquisition unit is configured to acquire a second transaction, and the second transaction calls a query function in the first contract;
a second execution unit configured to execute a second transaction to read the first cross-chain message from the message queue;
a generating unit configured to generate first data corresponding to the second transaction, wherein the first data includes the first cross-link message;
a storage unit configured to store the first data into the block chain.
In one embodiment, the first execution unit includes an execution subunit configured to execute the first transaction; a generating subunit configured to generate a receipt of the first transaction, the receipt of the first transaction including the first cross-chain message therein; a storage subunit configured to store a receipt for the first transaction in the first blockchain.
Another aspect of the present specification provides an apparatus for relaying a cross-link message, where the apparatus is deployed in a relay device, and a first contract in a first blockchain and a second contract in a second blockchain are pre-registered in the relay device, where the first contract is used to send the cross-link message, the second contract is used to receive the cross-link message, and both the first contract and the second contract include a cross-link function library therein, and the apparatus includes:
an obtaining unit configured to obtain a first cross-chain message from a first blockchain through the first contract;
a determining unit configured to determine that the received contract of the first cross-chain message is the second contract;
a sending unit, configured to send a third transaction to the second blockchain, where the third transaction invokes a receiving function in a second contract, and the third transaction provides the first cross-chain message to the receiving function, where the receiving function is a function included in the cross-chain function library.
In one embodiment, the acquisition unit includes:
a sending subunit, configured to send a second transaction to the first blockchain, where the second transaction invokes a query function in a first contract, an account status of the first contract includes a message queue of a cross-chain message, the query function is a function included in the cross-chain function library, and the query function is used to read the cross-chain message in the message queue;
an obtaining subunit, configured to obtain, from the first blockchain, first data corresponding to the second transaction, where the first data includes a first cross-chain message in the message queue.
In one embodiment, the obtaining unit is further configured to obtain a receipt of a first transaction from a first blockchain based on a first contract account, the first transaction including a call to a send function in the first contract, the send function being a function included in the cross-chain function library, the first transaction, when executed, depositing a receipt including a first cross-chain message to the first blockchain.
Another aspect of the present specification provides an apparatus for receiving a cross-chain message, where the apparatus is deployed in a node device of a second blockchain, and includes:
an obtaining unit, configured to obtain a third transaction from a second blockchain, where the third transaction is sent by a relay device, where the third transaction invokes a receiving function in a second contract, and the third transaction provides the first cross-chain message to the receiving function, where the second contract includes a cross-chain function library, and the receiving function is a function included in the cross-chain function library;
an execution unit configured to execute the third transaction to obtain the first cross-link message.
In one embodiment, the second contract includes a service function, the receiving function includes a call to the service function, and the executing unit is further configured to execute the service function after acquiring the first span message and provide the first span message to the service function.
Another aspect of the present specification provides a computer readable storage medium having stored thereon a computer program which, when executed on a computer, causes the computer to perform any of the above methods performed by the first block link point apparatus.
Another aspect of the present specification provides a computing device comprising a memory having stored therein executable code, and a processor that, when executing the executable code, performs any of the above methods performed by the first block-node device.
Another aspect of the present specification provides a computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to perform any one of the above-mentioned methods performed by a relay device.
Another aspect of the present specification provides a computing device comprising a memory having stored therein executable code, and a processor that, when executing the executable code, implements any of the above-described methods performed by a relay device.
Another aspect of the present specification provides a computer readable storage medium having stored thereon a computer program which, when executed on a computer, causes the computer to perform any of the above methods performed by the second block link point apparatus.
Another aspect of the present specification provides a computing device comprising a memory having stored therein executable code, and a processor that, when executing the executable code, performs any of the above methods performed by the second block-node device.
According to the scheme for sending the cross-chain message, the cross-chain function library is included in the cross-chain business contract, and the cross-chain business contract is registered in the relay equipment, so that cross-chain sending of the cross-chain message in the business contract can be achieved by calling the cross-chain function in the cross-chain business contract, and a contract for cross-chain sending or message receiving is not required to be called in the business contract, so that the execution process of the transaction for calling the cross-chain business contract is simplified, the transaction execution time is saved and reduced, and the efficiency of a block chain is improved.
Drawings
The embodiments of the present specification may be made more clear by describing the embodiments with reference to the attached drawings:
FIG. 1 shows a schematic diagram of a cross-chain system in accordance with embodiments of the present description;
FIG. 2 illustrates a flow diagram of a method of sending a cross-chain message in accordance with an embodiment of the present description;
FIG. 3 shows a diagram of the contents of a cross-chain function library;
FIG. 4 shows a schematic diagram of transaction 2;
FIG. 5 illustrates an apparatus 500 for providing cross-chain messages in accordance with an embodiment of the present description;
FIG. 6 illustrates an apparatus 600 for relaying cross-link messages according to an embodiment of the present description;
fig. 7 illustrates an apparatus 700 for receiving a cross-chain message according to an embodiment of the present description.
Detailed Description
The embodiments of the present specification will be described below with reference to the accompanying drawings.
FIG. 1 shows a schematic diagram of a cross-chain system in accordance with an embodiment of the present description. As shown in fig. 1, the inter-chain system includes a first blockchain 11, a relay device 12, and a second blockchain 13. A first contract, such as a cross-chain transfer contract, is deployed in the first blockchain 11, where the first contract includes a first business function and a cross-chain function library, and the first business function includes a call to a send function in the cross-chain function library. A second contract is deployed in the second blockchain 13, and the second contract is, for example, a contract for receiving a cross-chain transfer, and includes a second service function and a cross-chain function library, where the second contract calls a receiving function in the cross-chain function library, and the receiving function includes a call to the second service contract. The relay device 12 is configured to relay a cross-chain message between a first blockchain and a second blockchain, a business responsible for cross-chain transfer deploys a first contract in the first blockchain 11, deploys a second contract in the second blockchain 13, and registers the first contract for sending the cross-chain message and a corresponding second contract for receiving the cross-chain message in a contract registry in the relay device 12.
When a user in the first blockchain 11 wishes to perform a cross-chain transfer, a transaction 1 (not shown in fig. 1) may be sent to the first blockchain 11 through the device, the transaction 1 calls a first business function in the first contract, and parameters related to the transfer, such as a blockchain identification for receiving the transfer, an account for receiving the contract, a transfer amount and the like, are transmitted to the first business function. When each node device in the first blockchain 11 executes transaction 1, a first service function is executed, the account balance for initiating transaction 1 is reduced by the transfer amount, a cross-chain message to be sent (message 1 in fig. 1) is generated, the message 1 includes, for example, contents such as a sending blockchain identifier, a receiving contract account, a sending account, a receiving account, and an amount added to the balance of the receiving account of the message 1, and then a sending function in the cross-chain function library is executed, and the message 1 is provided to the sending function. By executing the send function in transaction 1, message 1 is stored in the ledger of the first blockchain 11, for example message 1 is put into the receipt of transaction 1 and the receipt is stored in the first blockchain 11, or message 1 is recorded in the account status data of the first contract.
The relay device 12 is used to pass messages between the first blockchain 11 and other blockchains, such as the second blockchain 13. The relay device 12 may actively retrieve the stored message 1 from the first blockchain 11. For example, the relay device 12 may obtain the cross-chain message by sending a transaction 2 (not shown in fig. 1) to the first blockchain 11. And calling a query function in the first contract in the transaction 2 to query the message queue, wherein the query function is a function included in the cross-chain function library. The relay device 12, after retrieving the message 1, may determine that the message 1 should be received by the second contract in the second blockchain 13 based on the content included in the message 1 (e.g., the sending contract account) and the record in the contract registry. Thus, the relay device 12 may send a transaction 3 (not shown in fig. 1) to a node in the second blockchain 13, in which transaction 3 the message 1 is used as an incoming parameter to invoke a receive function in the second contract, in which receive function the second service function is invoked.
When executing transaction 3, the node in the second blockchain 13 first executes the receive function to perform authentication on message 1, and after the authentication is passed, calls the second service function with message 1 as an incoming parameter. The node determines, based on the content of message 1, whether a predetermined trigger condition is met while executing the second business function, for example, whether message 1 was issued by a first contract in the first blockchain 11, and when it is determined that the predetermined trigger condition is met, completes the transfer process based on the content of message 1, i.e., increases the account receiving the transfer in message 1 by an amount corresponding to the transfer amount.
It will be appreciated that the above description with reference to fig. 1 is intended to be illustrative only and is not intended to limit embodiments of the present disclosure. A method of providing a message across chains according to an embodiment of the present specification will be described in detail below.
FIG. 2 shows a flowchart of a method of sending a cross-chain message according to an embodiment of the present description. As shown in fig. 2, the method is performed by the node device of the first blockchain 11, the relay device 12, and the node device of the second blockchain 13.
First, in step S201, the node device of the first blockchain 11 acquires transaction 1.
As described above, when a user or node user of the first blockchain 11 wishes to conduct, for example, a cross-chain transfer service, the user may broadcast transaction 1 into the first blockchain 11 by sending transaction 1 to any node of the first blockchain 11 through their device. The first business function of the first contract is invoked in transaction 1 and parameters related to the transfer, such as the blockchain identification of the received transfer, the account of the received transfer, the identification of the received contract, the transfer amount, etc., are passed in to the first business function. As shown in fig. 1, the first contract is a contract for performing a cross-chain transfer, which is pre-deployed in the first blockchain 11 by a business party of a cross-chain transfer service, the first contract includes a first business function and a cross-chain function library, and the first business function calls a send function in the cross-chain function library for an incoming parameter with a message 1 when executed, that is, an interface for calling the send function is included in the first business function, so that the send function is executed when executing to the interface, the interface including, for example, a function name and a value of the incoming parameter.
FIG. 3 shows a diagram of the contents of a cross-chain function library. The cross-chain function library is a collection of a plurality of functions for transferring cross-chain messages between blockchains, and for example, as shown in fig. 3, functions such as a sending function, a receiving function, and a query function are integrated in the cross-chain function library. Each function corresponds to a code for executing a corresponding function, the sending function is used for sending a cross-link message at the sending blockchain side, the receiving function is used for receiving the cross-link message at the receiving blockchain side, and the query function is used for initiating by the relay device and querying the cross-link message at the first blockchain 11 side. The cross-chain function library is made by a library developer and distributed to a contract developer, so that when a certain business contract (such as a cross-chain transfer contract) needs to use a cross-chain function, the contract developer can directly add a cross-chain integrated library in the contract and call the function in the cross-chain integrated library, thereby avoiding the need of separately writing cross-chain related code in the contract. Moreover, when each service contract realizes the cross-chain function through the unified cross-chain integrated library, the relay equipment for transmitting messages among the block chains can inquire and transfer the cross-chain messages based on the interface of the unified cross-chain integrated library, so that the operation of the relay equipment side is simplified.
After the device of the user sends transaction 1 to the node device of the first blockchain 11, each node in the first blockchain 11 acquires transaction 1 and executes transaction 1. Specifically, for example, the first blockchain 11 is an ethernet blockchain, the accounting node in the first blockchain 11 receives the transaction 1 from other nodes, packages the transaction 1 into blocks, executes each transaction in the blocks, and then stores the blocks locally and sends the blocks to other nodes in the blockchain. Other nodes in the blockchain, upon receiving the block, may then acquire transaction 1 and execute transaction 1, and store the block locally after each transaction in the blockchain is executed.
At step S202, the node device of the first blockchain 11 executes transaction 1, recording message 1 in the account status of the first contract.
The node devices of the first blockchain 11 start executing transaction 1 after acquiring transaction 1 as described above. Specifically, as described above, the first contract is, for example, a cross-chain transfer contract, and first the node device performs a first business function in the first contract with parameters relating to transfer, for example, a blockchain identification of the received transfer, an account of the received contract, a transfer amount, and so on, as incoming parameters, so that the node device reduces the balance of the account sending transaction 1 by the transfer amount, and generates message 1 based on the incoming parameters. The message 1 has a predetermined data structure including, for example, the sending blockchain identifier, the receiving contract account, the sending account, the receiving account, and the balance added amount to the receiving account of the message 1. And then, the node equipment executes the sending function by taking the message 1 as an incoming parameter according to the calling of the first service function to the sending function in the cross-chain function library.
When the sending function is executed as described above, the node apparatus is caused to record the message 1 in the message queue in the account status of the first contract, thereby storing the message 1 in the first block chain 11. The message queue may be a first-in-first-out message queue, that is, when reading the message queue, the earlier recorded message is read first, and then the later recorded message is read. Alternatively, the message queue may be a first-in-last-out message queue, which is not limited to this.
In step S203, the relay device 12 transmits the transaction 2 to the node device of the first blockchain 11.
The query function in the first contract is invoked in transaction 2. As shown in fig. 3, the query function is a function included in the cross-chain function library. Fig. 4 shows a schematic diagram of transaction 2. As shown in fig. 4, in transaction 2(TX 2), "0 x 215e." in the "From" field is an account used by the relay device 12 To transmit transaction 2 To the first block chain 11, indicating that the transaction 2 is issued by the relay device 12, "Transfer" in the "To" field is, for example, a contract name of the first contract, "0 x29a0 …" is a contract account of the first contract, indicating that the transaction 2 calls the first contract, and "query ()" in the "Data" field is a query function in the first contract, indicating that the transaction 2 calls the query function in the first contract. Here, no argument is introduced to the query (), and as described below, an argument for performing a query may be introduced to the query () function even at a different setting to the query () function.
In step S204, the node device of the first blockchain 11 performs transaction 2, reading message 1.
Assuming that the first blockchain 11 is an ethernet blockchain, after the relay device 12 sends transaction 2 to any node in the first blockchain 11, the node broadcasts transaction 2 into the first blockchain 11, and performs transaction 2, updates the world state, and enters a block by the accounting node in the first blockchain 11, and then the accounting node sends the block including transaction 2 into the first blockchain 11, so that each node in the first blockchain 11 performs transaction 2, updates the world state, and updates the block, and finally the accounting data of each node in the first blockchain 11 is consistent.
When the node device of the first blockchain 11 executes the transaction 2, an inquiry function in the message sending contract in the transaction 2 is executed, and an allowed inquiry account can be preset in the inquiry function so as to verify whether the sending account of the transaction 2 is the allowed inquiry account. Thus, when executing the query function, the sending account for transaction 2 is first verified, if the verification fails, the query failure is returned, and if the verification succeeds, the cross-chain message is read from the message queue in the account status of the message sending contract. It will be appreciated that in the event that verification of the query account is not required, cross-chain messages may be read directly from the message queue in the account state of the messaging contract when the query function is executed.
In the case that the first block chain 11 is a hyper tree Fabric block chain (hereinafter, referred to as Fabric chain), in an embodiment, the query function includes, for example, a getpos interface, when the query function is executed, a certificate of the submitter is first obtained by calling the getpos interface, where the certificate includes information such as an account and a public key of the submitter, so that whether the submitter is allowed to perform the query can be verified based on the account or the public key preset in the query function. In one embodiment, the query function includes, for example, a GetCreator interface, and when executing the query function, the account of the submitter is first obtained by calling GetCreator, and then whether the account of the submitter is an allowed account is verified based on an allowed account preset in the query function.
The reading mode of the cross-chain message in the query function can be set according to requirements, for example, it can be preset, when the query function is executed each time, the earliest message is read from the message queue, and it is assumed that the message queue includes messages 1 to 5, where the current message 1 is the message recorded earliest, and the messages 2 to 5 are all the messages recorded after the message 1. Thus, at this time the query function is executed, message 1 in the message queue is read. It is to be understood that the query function is not limited to reading the oldest 1 message, but may be preset to read the oldest predetermined number (e.g., 5, etc.) of messages in the message queue, or may be preset to read the newest predetermined number of messages in the message queue, or may be preset to read a message of a specified sequence number, which may be transmitted to the query function as an incoming parameter when the query function is called, or may be preset to read a message of specified content, which is content included in the message, such as a receive block chain identifier, a receive account, etc., and which may also be transmitted to the query function as an incoming parameter when the query function is called.
The query function may also be preset to modify the state of the message delivery contract (i.e., modify the world state) after a read of the cross-chain message is made. In particular, in one embodiment, after, for example, reading message 1 in the message queue, message 1 may be deleted in the message queue so that the next time the query function is executed, message 1 is not repeatedly read. In one embodiment, after reading message 1, message 1 may be marked to indicate that relay device 12 has read message 1, in which embodiment relay device 12 may repeatedly read message 1.
In step S205, the node device of the first blockchain 11 generates and stores a receipt 2 for the transaction 2.
After the query function is completed, the node device of the first blockchain 11 takes the read cross-chain message (for example, message 1) as the return data for executing the query function, so that the node device generates a receipt 2 for the transaction 2 after executing the transaction 2, and stores the receipt 2 for the transaction 2 in the blockchain, wherein the receipt 2 includes the return data (i.e., message 1) for executing the query function.
It is to be understood that although the first blockchain 11 is described as an example of an etherhouse chain, the first blockchain 11 is not limited to being an etherhouse chain, but may be any other type of blockchain. For example, the first blockchain 11 may also be a Fabric chain, in this case, when the node device of the endorsement node in the first blockchain 11 pre-executes the transaction 2, after reading the message 1, the message 1 is written into the read-write set corresponding to the transaction 2, and after verifying the read-write set of the transaction 2, the commit node in the first blockchain 11 stores the read-write set into the first blockchain 11.
In addition, although it is described in the above-described steps S202 to S206 that the message 1 is stored in the message queue of the account status of the first contract, and the message 1 is acquired from the message queue and stored in the block chain in the form of a receipt when the relay device 12 initiates the active inquiry, the embodiment of the present specification is not limited thereto. For example, a node of the first blockchain 11 may directly use message 1 as a return argument of the first contract when executing transaction 1, thereby including message 1 in receipt 1 of transaction 1 and storing receipt 1 in the first blockchain 11.
In step S206, the relay apparatus 12 acquires the message 1 from the node apparatus of the first blockchain 11.
The relay device 12 stores therein a contract registry, and each block chain registers in the relay device 12 after deploying a cross-chain related contract (i.e., a contract in which a cross-chain function library is included and a function in the cross-chain function library is called), so that the relay device 12 records in the contract registry a contract for transmitting a cross-chain message and a contract account (i.e., a contract address) for receiving a contract for receiving a cross-chain message for each block chain. Table 1 schematically shows one form of contract registry.
TABLE 1
Figure DEST_PATH_IMAGE001
As shown in table 1, in the contract registry, it is recorded that the contracts for sending cross-chain messages in the first block chain 11 have a first contract and a fourth contract, the contracts for receiving cross-chain messages in the first block chain 11 have a third contract and a fifth contract, the contracts for sending cross-chain messages in the second block chain 13 have a second contract and a seventh contract, the contracts for receiving cross-chain messages in the second block chain 13 have a sixth contract and an eighth contract, and so on. By recording each contract using the cross-chain function library in the contract registry, the relay device 12 can know the contracts using the cross-chain function library in each block chain, so that the processing of the contracts can be performed in a unified processing manner, such as reading a receipt of the contract, querying the status of the contract, providing a cross-chain message to the contract, and the like.
Specifically, the relay device 12 may perform a search or subscription for data related to the first contract in the first blockchain 11 based on the first contract account in the first blockchain 11 in the contract registry as the contract sending unit to obtain the data. For example, as described above, in the case where the receipt 2 including the message 1 is stored in the first blockchain 11, and the receipt 2 includes, for example, a contract account of the first contract, the relay device 12 may connect any node device in the first blockchain 11 and perform a search for the contract account of the first contract from the node device, so that the receipt 2 can be acquired and the receipt 2 can be read remotely. In one embodiment, the relay device 12 may also read the Spv certificate of the receipt 2 from the node of the blockchain 11 after reading the receipt 2. In one embodiment, any node device in the first blockchain 11 may actively push a receipt 2 comprising the first contract account to the relay device 12 after the receipt 2 is deposited.
In the case where a receipt 1 including a message 1 is stored in the first blockchain 11 in association with the first contract account, the relay device 12 may similarly retrieve the receipt 1 or the receipt 1 and its Spv certificate.
In the case where the first blockchain 11 is a Fabric chain, the relay device 12 may obtain the transaction read-write set including the message 1 and the signature of the endorsement node on the read-write set from the node device of the endorsement node.
In step S207, the relay apparatus 12 determines a contract for receiving the message 1.
In one embodiment, for example, after obtaining the receipt 2 and its Spv certificate, the relay device 12 first verifies the receipt 2 using the Spv certificate, and after the verification passes, may obtain the message 1 from the data field of the receipt 2, and may obtain the receive blockchain identifier of the message 1 and the receive contract account (i.e., the second contract account) by parsing the message 1.
In one embodiment, the contract registry records that a first contract account in the first blockchain 11 corresponds to a second contract account in the second blockchain 13, in which case only the receive blockchain identification needs to be included in the message 1, and no receive contract account needs to be included, so that the receive contract account of the message 1 can be determined to be the second contract account based on the contract registry.
In step S208, the relay device 12 sends transaction 3 to the node device of the second blockchain 13.
The relay device 12, after retrieving the received blockchain identification and the second contract account from the message 1, determines whether the second contract account is a registered contract for receiving cross-chain messages based on the contract registry described above, or the relay device 12 determines the received contract account for the message 1 as the second contract account directly from the contract registry, whereby the relay device 12 may generate the transaction 3 in a predetermined manner for providing cross-chain messages to the second blockchain 13. Specifically, as shown in FIG. 1, a receive function of the second contract is invoked in transaction 3 and message 1 is provided to the receive function. The relay device 12 sends the transaction 3 to the node device of any node in the second blockchain 13 after generating the transaction 3, thereby causing the transaction 3 to be broadcast into the second blockchain 13.
To provide message 1 to the receive function, in one embodiment, the receive function may be called as an incoming parameter in transaction 3, including receipt 2 of message 1 and the Spv certificate of receipt 2 together. In one embodiment, the relay device 12 comprises, for example, a TEE (trusted execution environment), and after the receipt 2 and its Spv certificate are obtained from the first blockchain 11, the relay device 12 verifies the receipt 2 using Spv in the TEE, and after the verification passes, obtains the message 1 from the receipt 2 and signs the message 1 using the TEE's hardware private key, so that the relay device 12 calls the receive function with the message 1 and TEE signature as incoming parameters in the transaction 3.
In step S209, the node device of the second blockchain 13 executes transaction 3, acquiring message 1.
After the relay device 12 sends the transaction 3 to any node device of the second blockchain 13, each node device of the second blockchain 13 will execute the transaction 3, update the world state, and enter the transaction 3 into a block. When executing the transaction 3, the node device of the second blockchain 13 first executes the receiving function, acquires the receipt 2 and its Spv certificate (or the message 1 and its TEE signature, etc.) from the incoming parameters, verifies the receipt 2 (or verifies the TEE signature) using the Spv certificate, and acquires the message 1 from the receipt 2 if the verification passes.
After acquiring the message 1, the node device of the second blockchain 13 calls a second service function in the second contract with the message 1 as an incoming parameter based on the program in the receiving function, so that the node device of the second blockchain 13 executes the second service function. In executing the second business function, it may be first determined whether the message 1 satisfies a preset trigger condition, for example, the sending contract account in the message 1 is an account of a specific contract (e.g., a first contract), and in the case that the message 1 satisfies the preset trigger condition, business logic, for example, a balance change operation on the receiving account is performed.
Fig. 5 illustrates an apparatus 500 for providing a cross-chain message according to an embodiment of the present specification, where the apparatus 500 is deployed in a node device of a first blockchain, and includes:
a first obtaining unit 51, configured to obtain a first transaction from a first blockchain, the first transaction calling a first contract, the first contract including a cross-chain function library including a sending function, the first transaction including a call to the sending function, and the first transaction providing a first cross-chain message to the sending function when executed;
a first execution unit 52 configured to execute the first transaction to store the first cross-chain message in the first blockchain.
In one embodiment, the first execution unit 52 is further configured to execute the first transaction to record the first cross-chain message in a message queue in an account status of a first contract, the cross-chain function library further includes a query function, and the apparatus 500 further includes:
a second obtaining unit 53, configured to obtain a second transaction, where a query function in the first contract is called;
a second execution unit 54 configured to execute a second transaction to read the first cross-chain message from the message queue;
a generating unit 55 configured to generate first data corresponding to the second transaction, where the first data includes the first cross-link message;
a storage unit 56 configured to store the first data into the block chain.
In one embodiment, the first execution unit 52 includes an execution subunit 521 configured to execute the first transaction; a generating subunit 522 configured to generate a receipt of the first transaction, where the receipt of the first transaction includes the first cross-chain message; a storing subunit 523 configured to store a receipt of the first transaction in the first blockchain.
Fig. 6 illustrates an apparatus 600 for relaying a cross-link message according to an embodiment of the present specification, where the apparatus 600 is deployed in a relay device, and a first contract in a first blockchain and a second contract in a second blockchain are pre-registered in the relay device, where the first contract is used to send a cross-link message, the second contract is used to receive a cross-link message, and both the first contract and the second contract include a cross-link function library therein, and the apparatus 600 includes:
an obtaining unit 61, configured to obtain a first cross-chain message from a first blockchain through the first contract;
a determining unit 62 configured to determine the received contract of the first cross-link message as the second contract;
a sending unit 63, configured to send a third transaction to the second blockchain, where the third transaction invokes a receiving function in a second contract, and the third transaction provides the first cross-chain message to the receiving function, where the receiving function is a function included in the cross-chain function library.
In one embodiment, the obtaining unit 61 includes:
a sending subunit 611, configured to send a second transaction to the first blockchain, where the second transaction invokes a query function in a first contract, an account status of the first contract includes a message queue of a cross-chain message, the query function is a function included in the cross-chain function library, and the query function is used to read the cross-chain message in the message queue;
an obtaining subunit 612, configured to obtain, from the first blockchain, first data corresponding to the second transaction, where the first data includes a first cross-chain message in the message queue.
In one embodiment, the obtaining unit 61 is further configured to obtain a receipt of a first transaction from a first blockchain based on a first contract account, the first transaction including a call to a send function in the first contract, the send function being a function included in the cross-chain function library, the first transaction, when executed, depositing a receipt including a first cross-chain message to the first blockchain.
Fig. 7 shows an apparatus 700 for receiving a cross-chain message according to an embodiment of the present specification, where the apparatus 700 is deployed in a node device of a second blockchain, and includes:
an obtaining unit 71, configured to obtain a third transaction from a second blockchain, where the third transaction is sent by a relay device, and the third transaction invokes a receiving function in a second contract, and the third transaction provides the first cross-chain message to the receiving function, where the second contract includes a cross-chain function library, and the receiving function is a function included in the cross-chain function library;
an executing unit 72 configured to execute the third transaction to obtain the first cross-link message.
In one embodiment, the second contract includes a service function, the receiving function includes a call to the service function, and the executing unit 72 is further configured to execute the service function after obtaining the first span message and provide the first span message to the service function.
Another aspect of the present specification provides a computer readable storage medium having stored thereon a computer program which, when executed on a computer, causes the computer to perform any of the above methods performed by the first block link point apparatus.
Another aspect of the present specification provides a computing device comprising a memory having stored therein executable code, and a processor that, when executing the executable code, performs any of the above methods performed by the first block-node device.
Another aspect of the present specification provides a computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to perform any one of the above-mentioned methods performed by a relay device.
Another aspect of the present specification provides a computing device comprising a memory having stored therein executable code, and a processor that, when executing the executable code, implements any of the above-described methods performed by a relay device.
Another aspect of the present specification provides a computer readable storage medium having stored thereon a computer program which, when executed on a computer, causes the computer to perform any of the above methods performed by the second block link point apparatus.
Another aspect of the present specification provides a computing device comprising a memory having stored therein executable code, and a processor that, when executing the executable code, performs any of the above methods performed by the second block-node device.
According to the scheme for sending the cross-chain message, the cross-chain function library is included in the cross-chain business contract, and the cross-chain business contract is registered in the relay equipment, so that cross-chain sending of the cross-chain message in the business contract can be achieved by calling the cross-chain function in the cross-chain business contract, and a contract for sending or receiving the message in the cross-chain contract does not need to be called in the business contract, so that the execution process of the transaction for calling the cross-chain business contract is simplified, the transaction execution time is reduced, and the efficiency of a block chain is improved.
It is to be understood that the terms "first," "second," and the like, herein are used for descriptive purposes only and not for purposes of limitation, to distinguish between similar concepts.
The embodiments in the present specification are described in a progressive manner, and the same and similar parts among the embodiments are referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the system embodiment, since it is substantially similar to the method embodiment, the description is simple, and for the relevant points, reference may be made to the partial description of the method embodiment.
The foregoing description has been directed to specific embodiments of this disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
It will be further appreciated by those of ordinary skill in the art that the elements and algorithm steps of the examples described in connection with the embodiments disclosed herein may be embodied in electronic hardware, computer software, or combinations of both, and that the components and steps of the examples have been described in a functional general in the foregoing description for the purpose of illustrating clearly the interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application. The software modules may reside in Random Access Memory (RAM), memory, Read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
The above-mentioned embodiments are intended to illustrate the objects, technical solutions and advantages of the present invention in further detail, and it should be understood that the above-mentioned embodiments are merely exemplary embodiments of the present invention, and are not intended to limit the scope of the present invention, and any modifications, equivalent substitutions, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.

Claims (26)

1. A method of providing a cross-chain message, the method being performed by a node device of a first blockchain, comprising:
obtaining a first transaction from a first blockchain, the first transaction invoking a first contract, the first contract comprising a cross-chain function library, the cross-chain function library being a collection of functions for passing cross-chain messages between blockchains; the cross-chain function library is made by a library developer and distributed to a contract developer; the cross-chain function library comprises a sending function, the first transaction comprises a call to the sending function, and the first transaction provides a first cross-chain message to the sending function when executed;
executing the first transaction to store the first cross-chain message in the first blockchain.
2. The method of claim 1, wherein executing the first transaction to deposit the first cross-chain message in the first blockchain comprises executing the first transaction to record the first cross-chain message in a message queue in an account state of a first contract, the cross-chain function library further comprising a query function, the method further comprising:
acquiring a second transaction, wherein a query function in the first contract is called in the second transaction;
executing a second transaction to read the first cross-chain message from the message queue;
generating first data corresponding to the second transaction, wherein the first data comprises the first cross-link message;
storing the first data into the first blockchain.
3. The method of claim 2, wherein the first data is a receipt of the second transaction.
4. The method of claim 1, wherein performing the first transaction to deposit the first cross-chain message in the first blockchain comprises performing the first transaction; generating a receipt of the first transaction, wherein the receipt of the first transaction comprises the first cross-chain message; depositing a receipt for the first transaction in the first blockchain.
5. The method of any of claims 1-4, wherein the first contract further includes a first business function therein, the first transaction invoking the first business function of the first contract, the first business function invoking the send function therein.
6. A method of relaying a cross-chain message, the method being performed by a relay device in which a first contract in a first blockchain and a second contract in a second blockchain are pre-registered, wherein the first contract is used to send the cross-chain message and the second contract is used to receive the cross-chain message, the first contract and the second contract each include a cross-chain function library, the cross-chain function library being a set of a plurality of functions used to transfer the cross-chain message between blockchains; the cross-chain function library is made by a library developer and distributed to a contract developer; the method comprises the following steps:
obtaining a first cross-chain message from a first blockchain through the first contract;
determining a received contract for the first cross-chain message as the second contract;
sending a third transaction to the second blockchain, the third transaction invoking a receive function in a second contract, and the third transaction providing the receive function with the first cross-chain message, the receive function being a function included in the cross-chain function library.
7. The method of claim 6, wherein retrieving a first cross-chain message from a first blockchain via the first contract comprises:
sending a second transaction to the first blockchain, wherein a query function in a first contract is called in the second transaction, the account state of the first contract comprises a message queue of cross-chain messages, the query function is a function included in the cross-chain function library, and the query function is used for reading the cross-chain messages in the message queue;
and acquiring first data corresponding to the second transaction from the first blockchain, wherein the first data comprises a first cross-chain message in the message queue.
8. The method of claim 6 or 7, wherein retrieving a first cross-chain message from a first blockchain via the first contract comprises retrieving a receipt for a first transaction from a first blockchain based on a first contract account, the first transaction including a call to a send function in the first contract, the send function being a function included in the cross-chain function library, the first transaction, when executed, depositing a receipt including a first cross-chain message to the first blockchain.
9. A method of receiving a cross-chain message, the method being performed by a node device of a second blockchain, comprising:
obtaining a third transaction from a second blockchain, the third transaction being sent by a relay device, the third transaction invoking a receive function in a second contract, and the third transaction providing a first cross-chain message to the receive function, the second contract including a cross-chain function library, the cross-chain function library being a collection of functions for passing cross-chain messages between blockchains; the cross-chain function library is made by a library developer and distributed to a contract developer; the receiving function is a function included in the cross-chain function library;
executing the third transaction to obtain the first cross-link message.
10. The method of claim 9, wherein the second contract includes a business function, the receive function includes a call to the business function, and executing the third transaction further includes, after obtaining the first cross-chain message, executing the business function and providing the first cross-chain message to the business function.
11. An apparatus for providing cross-chain messages, the apparatus being deployed at a node device of a first blockchain, comprising:
a first obtaining unit, configured to obtain a first transaction from a first blockchain, where the first transaction invokes a first contract, and the first contract includes a cross-chain function library, where the cross-chain function library is a set of a plurality of functions used for transferring cross-chain messages between blockchains; the cross-chain function library is made by a library developer and distributed to a contract developer; the cross-chain function library comprises a sending function, the first transaction comprises a call to the sending function, and the first transaction provides a first cross-chain message to the sending function when executed;
a first execution unit configured to execute the first transaction to store the first cross-chain message in the first blockchain.
12. The apparatus of claim 11, wherein the first execution unit is further configured to execute the first transaction to record the first cross-chain message in a message queue in an account state of a first contract, the cross-chain function library further comprising a query function, the apparatus further comprising:
the second acquisition unit is configured to acquire a second transaction, and the second transaction calls a query function in the first contract;
a second execution unit configured to execute a second transaction to read the first cross-chain message from the message queue;
a generating unit configured to generate first data corresponding to the second transaction, wherein the first data includes the first cross-link message;
a storage unit configured to store the first data into the first block chain.
13. The apparatus of claim 12, wherein the first data is a receipt of the second transaction.
14. The apparatus of claim 11, wherein the first execution unit comprises an execution subunit configured to execute the first transaction; a generating subunit configured to generate a receipt of the first transaction, the receipt of the first transaction including the first cross-chain message therein; a storage subunit configured to store a receipt for the first transaction in the first blockchain.
15. The apparatus of any of claims 11-14, wherein the first contract further includes a first business function therein, the first transaction invoking the first business function of the first contract, the first business function invoking the send function therein.
16. An apparatus for transferring a cross-chain message, the apparatus being deployed in a relay device, the relay device being pre-registered with a first contract in a first blockchain and a second contract in a second blockchain, wherein the first contract is used for sending the cross-chain message, the second contract is used for receiving the cross-chain message, and the first contract and the second contract both include a cross-chain function library, and the cross-chain function library is a set of a plurality of functions for transferring the cross-chain message between blockchains; the cross-chain function library is made by a library developer and distributed to a contract developer; the device comprises:
an obtaining unit configured to obtain a first cross-chain message from a first blockchain through the first contract;
a determining unit configured to determine that the received contract of the first cross-chain message is the second contract;
a sending unit, configured to send a third transaction to the second blockchain, where the third transaction invokes a receiving function in a second contract, and the third transaction provides the first cross-chain message to the receiving function, where the receiving function is a function included in the cross-chain function library.
17. The apparatus of claim 16, wherein the obtaining unit comprises:
a sending subunit, configured to send a second transaction to the first blockchain, where the second transaction invokes a query function in a first contract, an account status of the first contract includes a message queue of a cross-chain message, the query function is a function included in the cross-chain function library, and the query function is used to read the cross-chain message in the message queue;
an obtaining subunit, configured to obtain, from the first blockchain, first data corresponding to the second transaction, where the first data includes a first cross-chain message in the message queue.
18. The apparatus according to claim 16 or 17, wherein the obtaining unit is further configured to obtain a receipt of a first transaction from a first blockchain based on a first contract account, the first transaction including a call to a send function in the first contract, the send function being a function included in the cross-chain function library, the first transaction, when executed, depositing a receipt including a first cross-chain message to the first blockchain.
19. An apparatus for receiving a cross-chain message, the apparatus being deployed in a node device of a second blockchain, comprising:
an obtaining unit, configured to obtain a third transaction from a second blockchain, where the third transaction is sent by a relay device, the third transaction calls a receiving function in a second contract, and the third transaction provides a first cross-chain message to the receiving function, where the second contract includes a cross-chain function library, and the cross-chain function library is a set of a plurality of functions used for transferring cross-chain messages between blockchains; the cross-chain function library is made by a library developer and distributed to a contract developer; the receiving function is a function included in the cross-chain function library;
an execution unit configured to execute the third transaction to obtain the first cross-link message.
20. The apparatus of claim 19, wherein the second contract includes a business function, the receive function includes a call to the business function, and the execution unit is further configured to, after obtaining the first cross-chain message, execute the business function and provide the first cross-chain message to the business function.
21. A computer-readable storage medium, on which a computer program is stored which, when executed in a computer, causes the computer to carry out the method of any one of claims 1-5.
22. A computing device comprising a memory having executable code stored therein and a processor that, when executing the executable code, implements the method of any of claims 1-5.
23. A computer-readable storage medium, on which a computer program is stored which, when executed in a computer, causes the computer to carry out the method of any one of claims 6-8.
24. A computing device comprising a memory having executable code stored therein and a processor that, when executing the executable code, implements the method of any of claims 6-8.
25. A computer-readable storage medium, on which a computer program is stored which, when executed in a computer, causes the computer to carry out the method of any one of claims 9-10.
26. A computing device comprising a memory having executable code stored therein and a processor that, when executing the executable code, implements the method of any of claims 9-10.
CN202110339826.0A 2021-03-30 2021-03-30 Method and apparatus for providing cross-chain messages Active CN112804359B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110339826.0A CN112804359B (en) 2021-03-30 2021-03-30 Method and apparatus for providing cross-chain messages
PCT/CN2022/081748 WO2022206438A1 (en) 2021-03-30 2022-03-18 Method and apparatus for providing cross-chain message

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110339826.0A CN112804359B (en) 2021-03-30 2021-03-30 Method and apparatus for providing cross-chain messages

Publications (2)

Publication Number Publication Date
CN112804359A CN112804359A (en) 2021-05-14
CN112804359B true CN112804359B (en) 2021-07-06

Family

ID=75815983

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110339826.0A Active CN112804359B (en) 2021-03-30 2021-03-30 Method and apparatus for providing cross-chain messages

Country Status (2)

Country Link
CN (1) CN112804359B (en)
WO (1) WO2022206438A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112804359B (en) * 2021-03-30 2021-07-06 支付宝(杭州)信息技术有限公司 Method and apparatus for providing cross-chain messages
CN113259478B (en) * 2021-06-17 2021-11-02 支付宝(杭州)信息技术有限公司 Method and device for executing transaction in blockchain system and blockchain system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110033244A (en) * 2019-03-15 2019-07-19 阿里巴巴集团控股有限公司 Intelligent contract based on block chain executes method and device and electronic equipment
CN110430162A (en) * 2019-06-28 2019-11-08 阿里巴巴集团控股有限公司 A kind of method and apparatus that message can be certified in across chain transmission

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11188883B2 (en) * 2016-09-23 2021-11-30 International Business Machines Corporation Using ledger sensors to enable contextual contracts across various enterprise blockchain applications
US11194837B2 (en) * 2018-05-01 2021-12-07 International Business Machines Corporation Blockchain implementing cross-chain transactions
CN108881187B (en) * 2018-05-31 2021-01-29 杭州溪塔科技有限公司 Cross-link data transmission method and device suitable for permission link scene
CN110622192B (en) * 2018-11-27 2023-07-14 创新先进技术有限公司 Functional As A Service (FAAS) platform in a blockchain network
CN110266655B (en) * 2019-05-30 2021-11-12 中国工商银行股份有限公司 Cross-chain interconnection method, device and system based on block chain
CN110443704B (en) * 2019-06-28 2021-02-19 创新先进技术有限公司 Method and device for sending resources in cross-link mode
CN111800463B (en) * 2020-05-29 2023-04-07 易联众信息技术股份有限公司 Inter-block chain cross-chain information interaction method, system, medium, equipment and application
CN111769957B (en) * 2020-09-02 2020-12-15 百度在线网络技术(北京)有限公司 Block chain cross-chain query method, device, equipment and storage medium
CN112804359B (en) * 2021-03-30 2021-07-06 支付宝(杭州)信息技术有限公司 Method and apparatus for providing cross-chain messages

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110033244A (en) * 2019-03-15 2019-07-19 阿里巴巴集团控股有限公司 Intelligent contract based on block chain executes method and device and electronic equipment
CN110430162A (en) * 2019-06-28 2019-11-08 阿里巴巴集团控股有限公司 A kind of method and apparatus that message can be certified in across chain transmission

Also Published As

Publication number Publication date
CN112804359A (en) 2021-05-14
WO2022206438A1 (en) 2022-10-06

Similar Documents

Publication Publication Date Title
CN110443704B (en) Method and device for sending resources in cross-link mode
CN110430162B (en) Method and device for sending authenticable message in cross-link mode
CN110311790B (en) Method and device for sending authenticable message in cross-link mode
CN110597925B (en) Cross-chain data processing method and device based on block chain
CN110471986B (en) Bill real name getting method and device based on block chain and electronic equipment
CN111866191B (en) Message event distribution method, distribution platform, system and server
CN110430235B (en) Method, apparatus, storage medium and computing device for cross-chain transmission of authenticatable messages
CN112804359B (en) Method and apparatus for providing cross-chain messages
CN112737782B (en) Method and apparatus for providing cross-chain messages
CN112804360B (en) Method and apparatus for providing cross-chain private data
CN112732800B (en) Method and apparatus for providing cross-chain messages
CN110458538B (en) State machine maintenance method and device based on block chain, electronic equipment and storage medium
CN111429250A (en) Data management method and device in escort scene
CN110417742B (en) Method, device and storage medium for cross-link sending, transferring and receiving authenticable message
CN112801797A (en) Method and apparatus for processing ticket data using a down-link trusted device
CN113327169B (en) Claims settlement method and device based on block chain and electronic equipment
CN113095824B (en) Asset management method and device based on block chain and electronic equipment
US11582345B2 (en) Context data management interface for contact center
CN113469815A (en) Data management method and device
CN112347522B (en) UTXO architecture-based third-party data uplink realization method
US20130219396A1 (en) Transaction processing system and method
JP6062843B2 (en) Information linkage management system and information linkage management method
CN116775772A (en) Data processing method, device, equipment and readable storage medium
CN116362733A (en) Resource transfer method, device, computer equipment and storage medium
CN116957566A (en) Block chain-based data processing method and device, electronic equipment and storage medium

Legal Events

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