Search

JP-7855090-B2 - Atomic bridge for transactions between different blockchains

JP7855090B2JP 7855090 B2JP7855090 B2JP 7855090B2JP-7855090-B2

Inventors

  • グラント, マイケル
  • ブーアスティン, マーカス
  • マリソン, レイチェル

Assignees

  • サークル インターネット フィナンシャル インコーポレイテッド

Dates

Publication Date
20260507
Application Date
20230406
Priority Date
20220513

Claims (18)

  1. Receiving a request to invoke an atomic transaction which includes an action performed on a first blockchain and an action performed on a second blockchain, wherein the atomic transaction is completed when the enumerated set of actions is completed. Initiating a first operation for the atomic transaction within the enumerated set of operations on the first blockchain, wherein initiating the first operation on the first blockchain triggers the initiation of one or more second operations for the atomic transaction on the second blockchain, and initiating the first operation for the atomic transaction on the first blockchain includes writing an entry to a tracking database which includes parameters of the first operation, an identifier of the first operation, and an indication that the first operation is waiting for the completion of one or more second operations for the atomic transaction . Detecting the completion of one or more second operations for the atomic transaction on the second blockchain, indicating that the operation for the atomic transaction related to the second blockchain has been completed on the second blockchain, A method performed by a computer, comprising confirming the atomic transaction on the first blockchain based on the detection of the completion of one or more second operations on the second blockchain.
  2. The method according to claim 1, wherein the enumerated sets of actions are enumerated in the smart contract defining the atomic transaction.
  3. The method according to claim 1, wherein the request that invokes the atomic transaction includes a request to generate a token on the first blockchain.
  4. The method according to claim 1, wherein detecting the completion of the one or more second actions for the atomic transaction includes matching one or more parameters in an entry in the tracking database for one of the actions of the one or more second actions for the atomic transaction with one or more corresponding parameters of the first action.
  5. The method according to claim 1, wherein the first blockchain includes a Layer 1 blockchain, and the second blockchain includes a Layer 2 blockchain.
  6. The method according to claim 5 , wherein the atomic transaction includes a transaction for issuing tokens on the Layer 2 blockchain.
  7. The method according to claim 6 , wherein initiating the first operation for the atomic transaction includes initiating a token issuance operation on the Layer 1 blockchain.
  8. Initiating the token issuance operation on the Layer 1 blockchain triggers the execution of one or more operations to bridge the token issuance operation on the Layer 1 blockchain to the Layer 2 blockchain. The method according to claim 7, wherein the one or more operations for bridging the token issuance operation on the Layer 1 blockchain to the Layer 2 blockchain include a transaction for depositing tokens from an address on the Layer 1 blockchain to an address on the Layer 2 blockchain, and a sweep operation on the Layer 2 blockchain for confirming that the tokens have been deposited to the address on the Layer 2 blockchain.
  9. The method according to claim 1, wherein the first blockchain includes a Layer 2 blockchain, and the second blockchain includes a Layer 1 blockchain.
  10. The method according to claim 9 , wherein the atomic transaction includes a transaction for burning tokens on the Layer 2 blockchain.
  11. The method according to claim 10 , wherein initiating the first operation for the atomic transaction includes initiating a token burning operation on the layer 2 blockchain.
  12. Initiating the token burning operation on the Layer 2 blockchain triggers the execution of one or more operations to bridge the atomic transaction to the Layer 1 blockchain. The method according to claim 11 , wherein the one or more operations include a transaction for revoking the corresponding token on the Layer 1 blockchain.
  13. It is a system, Memory that stores executable instructions, The system comprises a processor configured to execute the aforementioned executable instructions, wherein the executable instructions are configured to execute the aforementioned executable instructions. Receiving a request to invoke an atomic transaction which includes an action performed on a first blockchain and an action performed on a second blockchain, wherein the atomic transaction is completed when the enumerated set of actions is completed. Initiating a first operation for the atomic transaction within the enumerated set of operations on the first blockchain, wherein initiating the first operation on the first blockchain triggers the initiation of one or more second operations for the atomic transaction on the second blockchain, and in order to initiate the first operation for the atomic transaction on the first blockchain, the processor is configured to cause the system to write an entry to a tracking database including parameters of the first operation, an identifier of the first operation, and an indication that the first operation is waiting for the completion of one or more second operations for the atomic transaction . Detecting the completion of one or more second operations for the atomic transaction on the second blockchain, indicating that the operation for the atomic transaction related to the second blockchain has been completed on the second blockchain, A system that, based on the detection of the completion of one or more of the second operations on the second blockchain, confirms the atomic transaction on the first blockchain.
  14. The system according to claim 13, wherein, in order to detect the completion of the one or more second operations for the atomic transaction, the processor is configured to match one or more parameters in an entry in the tracking database for one of the operations of the one or more second operations for the atomic transaction with one or more corresponding parameters of the first operation.
  15. The first blockchain mentioned above includes a Layer 1 blockchain, The preceding second blockchain includes a Layer 2 blockchain, The atomic transaction includes a transaction for issuing tokens on the Layer 2 blockchain. To initiate the first operation for the atomic transaction, the processor is configured to initiate the token issuance operation on the Layer 1 blockchain, which triggers the execution of one or more operations to bridge the token issuance operation on the Layer 1 blockchain to the Layer 2 blockchain. The system according to claim 13, wherein the one or more operations for bridging the token issuance operation on the Layer 1 blockchain to the Layer 2 blockchain include a transaction for depositing tokens from an address on the Layer 1 blockchain to an address on the Layer 2 blockchain, and a sweep operation on the Layer 2 blockchain for confirming that the tokens have been deposited to the address on the Layer 2 blockchain.
  16. The aforementioned first blockchain includes a Layer 2 blockchain, The aforementioned second blockchain includes a Layer 1 blockchain, The atomic transaction includes a transaction to burn tokens on the Layer 2 blockchain. To initiate the first operation for the atomic transaction, the processor is configured to initiate a token burning operation on the Layer 2 blockchain, which triggers the execution of one or more operations to bridge the atomic transaction to the Layer 1 blockchain. The system according to claim 13 , wherein the one or more operations include a transaction for revoking the corresponding token on the Layer 1 blockchain.
  17. The system according to claim 13 , wherein the enumerated sets of actions are enumerated in a smart contract that defines the atomic transaction.
  18. A computer-readable medium storing instructions, wherein the instructions, when executed by a processor, Receiving a request to invoke an atomic transaction which includes an action performed on a first blockchain and an action performed on a second blockchain, wherein the atomic transaction is completed when the enumerated set of actions is completed. Initiating a first operation for the atomic transaction within the enumerated set of operations on the first blockchain, wherein initiating the first operation on the first blockchain triggers the initiation of one or more second operations for the atomic transaction on the second blockchain, and initiating the first operation for the atomic transaction on the first blockchain includes writing an entry to a tracking database which includes parameters of the first operation, an identifier of the first operation, and an indication that the first operation is waiting for the completion of one or more second operations for the atomic transaction . Detecting the completion of one or more second operations for the atomic transaction on the second blockchain, indicating that the operation for the atomic transaction related to the second blockchain has been completed on the second blockchain, A computer-readable medium that performs an operation including confirming the atomic transaction on the first blockchain based on the detection of the completion of one or more of the second operations on the second blockchain.

Description

This disclosure relates to transaction processing in a blockchain system for improving processing and resource utilization efficiency. Blockchains are used within various decentralized systems and can provide a ledger of transactions that occur within these systems. Generally, a blockchain may contain a chain of blocks, where the most recent block contains some information about the transaction that occurred and a reference value to the preceding block, which may be the hash value of the previous block. Since the reference value to the preceding block can be a value derived from the preceding block, transaction verification within the blockchain can be performed by ensuring that the hash of the block results in the same value as the reference value to the preceding block stored in subsequent blocks within the blockchain. If there is a mismatch between the calculated hash of a block and the hash value of the block in subsequent blocks within the blockchain, blockchain verification may fail. In some cases, transactions may be recorded on multiple blockchains. For example, a transaction may be first recorded on a first blockchain and then transferred or "bridged" to a second blockchain. Generally, the process of recording a transaction on a first blockchain and bridging this transaction to a second blockchain may be performed as a series of asynchronous, independent transactions involving multiple parties. Bridging a transaction from a first blockchain to a second blockchain generally involves multiple independent transactions, which can increase the overall processing cost of bridging the transaction and the risk of transaction failure. For example, a transaction may be partially completed, leading to an inconsistent state in the system (e.g., the first blockchain contains a record of the transaction, but the second blockchain does not contain the corresponding record or only contains a partial record that does not complete the bridging process). Furthermore, the use of multiple independent transactions may require coordination between different parties to complete the transaction, which can impose significant processing overhead when generating and processing overhead messages within the blockchain system. Therefore, techniques are needed to enable the efficient processing of transactions bridged across multiple blockchains. Several embodiments provide a computer implementation method for bridging transactions between blockchains. This method generally includes receiving a request to invoke an atomic transaction, which includes an action performed on a first blockchain and an action performed on a second blockchain. Generally, an atomic transaction completes when the enumerated set of actions is completed. A first action relating to the atomic transaction within the enumerated set of actions is initiated on the first blockchain. Initiating the first action on the first blockchain triggers the initiation of one or more second actions relating to the atomic transaction on the second blockchain. Completion of one or more second actions relating to the atomic transaction on the second blockchain is detected, indicating that the actions for the atomic transaction related to the second blockchain have been completed on the second blockchain. Based on the detection of the completion of one or more second actions on the second blockchain, the atomic transaction on the first blockchain is confirmed. Other embodiments provide a processing system configured to perform the methods described above and the methods described herein; a non-temporary computer-readable medium containing instructions that, when executed by one or more processors of the processing system, cause the processing system to perform the methods described above and the methods described herein; a computer program product embodied on a computer-readable storage medium containing code for performing the methods described above and the methods further described herein; and a processing system comprising means for performing the methods described above and the methods further described herein. The following description and related drawings detail some exemplary features of one or more embodiments. The attached figures illustrate some aspects of one or more embodiments and should therefore not be considered to limit the scope of this disclosure. This figure illustrates an exemplary computing system for bridging transactions between a first blockchain and a second blockchain using atomic transactions.This is a message flow diagram showing the transaction processor and the messages exchanged between the first blockchain and the second blockchain in order to perform an atomic token issuance operation that bridges tokens issued on the first blockchain to the second blockchain.This is a message flow diagram showing the transaction processor and the messages exchanged between the first blockchain and the second blockchain in order to perform an atomic token burn