Search

EP-4736099-A1 - EXECUTING TRANSACTIONS IN BLOCKCHAIN SYSTEMS VIA TOKEN POOLS WITH CONVERTIBLE TOKENS

EP4736099A1EP 4736099 A1EP4736099 A1EP 4736099A1EP-4736099-A1

Abstract

Certain aspects provide techniques and apparatus for efficiently executing reversible transactions on a blockchain. An example method generally includes aggregating tokens from a plurality of wallets into a global pool of tokens. Generally, the global pool of tokens comprises a. first type of token and a second type of token. A request to exchange a first quantity of the first type of token stored in a wallet to a second type of token is received. A second quantity of the second type of token to transfer to the wallet is calculated based, at least in part, on a ratio of the first type of token to the second type of token in the global pool of tokens. The first quantity of the first type of token is transferred to the global pool of tokens, and the second quantity of the second type of token is transferred to the wallet.

Inventors

  • CAI, Calvin
  • GRANT, MICHAEL
  • WANG, Keri Kaili

Assignees

  • Circle Internet Financial Limited

Dates

Publication Date
20260506
Application Date
20240610

Claims (1)

  1. CIFI/0018PC WHAT IS CLAIMED IS: 1. A computer-implemented method, comprising: aggregating tokens from a plurality of wallets into a global pool of tokens, wherein the global pool of tokens comprises a first type of token and a second type of token; receiving a request to exchange a first quantity of the first type of token stored in a wallet to a second type of token; calculating a second quantity of the second type of token to transfer to the wallet based, at least in part, on a ratio of the first type of token to the second type of token in the global pool of tokens; transferring the first quantity of the first type of token to the global pool of tokens; and transferring the second quantity of the second type of token to the wallet. 2. The method of Claim 1, wherein: the first type of token comprises tokens encapsulating a base token and in a recoverable state, and the second type of token comprises tokens encapsulating the base token and in a non-recoverable state. 3. The method of Claim 2, wherein transferring the second quantity of the second type of token to the wallet comprises: unwrapping the second quantity of the second type of token to the second quantity of the base token; and transferring the second quantity of the base token to the wallet. 4. The method of Claim 2, further comprising: receiving an indication that a third quantity of the first type of token is frozen; and removing the third quantity of the first type of token from the global pool of tokens. 5. The method of Claim 2, wherein the second type of token comprises a fungible token issued by any of a plurality of issuers. CIFI/0018PC 6. The method of claim 2, further comprising: segregating the first type of token in the global pool based on issuers of the first type of token. 7. The method of Claim 1, wherein the second quantity of the second type of token is less than the first quantity of the first type of token, and wherein the method further comprises allocating a delta between the first quantity and the second quantity for distribution to the plurality of wallets from which the global pool is drawn. 8. The method of Claim 7, wherein the delta between the first quantity and the second quantity increases as a proportion of the first type of token to the second type of token increases in the global pool. 9. The method of Claim 7, further comprising distributing tokens to the plurality of wallets from which the global pool of tokens is drawn. 10. A system, comprising: a memory having executable instructions stored thereon; and a processor configured to execute the executable instructions in order to cause the system to: aggregate tokens from a plurality of wallets into a global pool of tokens, wherein the global pool of tokens comprises a first type of token and a second type of token; receive a request to exchange a first quantity of the first type of token stored in a wallet to a second type of token; calculate a second quantity of the second type of token to transfer to the wallet based, at least in part, on a ratio of the first type of token to the second type of token in the global pool of tokens; transfer the first quantity of the first type of token to the global pool of tokens; and transfer the second quantity of the second type of token to the wallet. 11. The system of Claim 10, wherein: the first type of token comprises tokens encapsulating a base token and in a recoverable state, and the second type of token comprises tokens encapsulating the base token and in a non-recoverable state. CIFI/0018PC 12. The system of Claim 11, wherein in order to transfer the second quantity of the second type of token to the wallet, the processor is configured to cause the system to: unwrap the second quantity of the second type of token to the second quantity of the base token; and transfer the second quantity of the base token to the wallet. 13. The system of Claim 11, wherein the processor is configured to cause the system to: receive an indication that a third quantity of the first type of token is frozen; and remove the third quantity of the first type of token from the global pool of tokens. 14. The system of Claim 11, wherein the second type of token comprises a fungible token issued by any of a plurality of issuers. 15. The system of claim 11, wherein the processor is further configured to cause the system to segregate the first type of token in the global pool based on issuers of the first type of token. 16. The system of Claim 10, wherein the second quantity of the second type of token is less than the first quantity of the first type of token, and wherein the processor is further configured to cause the system to allocate a delta between the first quantity and the second quantity for distribution to the plurality of wallets from which the global pool is drawn. 17. The system of Claim 16, wherein the delta between the first quantity and the second quantity increases as a proportion of the first type of token to the second type of token increases in the global pool. 18. The system of Claim 16, wherein the processor is further configured to cause the system to distribute tokens to the plurality of wallets from which the global pool of tokens is drawn. 19. A computer-readable medium having instructions stored thereon which, when executed by a processor, performs an operation comprising: CIFI/0018PC aggregating tokens from a plurality of wallets into a global pool of tokens, wherein the global pool of tokens comprises a first type of token and a second type of token; receiving a request to exchange a first quantity of the first type of token stored in a wallet to a second type of token; calculating a second quantity of the second type of token to transfer to the wallet based, at least in part, on a ratio of the first type of token to the second type of token in the global pool of tokens; transferring the first quantity of the first type of token to the global pool of tokens; and transferring the second quantity of the second type of token to the wallet. 20. The computer-readable medium of Claim 19, , wherein: the first type of token comprises tokens encapsulating a base token and in a recoverable state, and the second type of token comprises tokens encapsulating the base token and in a non-recoverable state.

Description

CIFI/0018PC EXECUTING TRANSACTIONS IN BLOCKCHAIN SYSTEMS VIA TOKEN POOLS WITH CONVERTIBLE TOKENS INTRODUCTION [0001] Aspects of the present disclosure relate to transactions in blockchain systems, and more specifically to transactions executed via token pools. BACKGROUND [0002] Blockchains can be used in various decentralized systems to provide a ledger of transactions that have occurred within these decentralized systems. Generally, a blockchain may include a chain of blocks, in which latest block includes some information about a transaction that occurred and a reference to an immediate predecessor block, which may be a hashed value of the previous block. Because the reference to the immediate predecessor block may be a value derived from the immediate predecessor block, verification of the transactions in the blockchain may be performed by ensuring that a hash of a block resolves to the same value as that stored as a reference to the immediate predecessor block in a succeeding block in the blockchain. If there is a mismatch between a computed hash of a block and the hashed value of the block in a succeeding block in the blockchain, validation of the blockchain may fail. [0003] Generally, transactions recorded on a blockchain may be performed using one or more tokens which may be native to a blockchain or may be transacted on the blockchain. These different types of tokens may be exchangeable with each other; however, the supply of these tokens may vary for any number of reasons. Further, while some transactions may be executed based on multiple types of tokens, some transactions may be defined such that only a defined token can be used to execute these transactions. Thus, in order to execute a transaction, a user may exchange a first type of token for a second type of token, which may cause additional transactions to be executed on a blockchain and increase the amount of time and computational resources involved in executing a transaction on the blockchain. [0004] Generally, transactions recorded on a blockchain are also immutable and irreversible once recorded and validated on the blockchain. Because transactions recorded on a blockchain are immutable and irreversible, the blockchain may be considered a source of truth for transactions that are recorded on the blockchain. Thus, performing transactions on a blockchain may allow for trust to be established between potentially unknown parties performing transactions on the blockchain. For example, the source of tokens transferred CIFI/0018PC between parties on the blockchain may be trusted by virtue of users participating in these transactions recording such transactions on the blockchain. [0005] However, the immutability and irreversibility of transactions on the blockchain may also create various security risks. For example, in a 51% attack, the transaction records stored on a blockchain may be modified if more than half of the nodes participating in processing transactions on the blockchain include a false record. In another example, because of the immutability and irreversibility of transactions on the blockchain, transactions that occur due to malicious attacks (e.g., transfers of tokens to attackers who demand cryptocurrency payments in order to reverse the effects of a ransomware attack) may not be reversed, and the victims of such attacks may not be able to recover tokens that are lost due to such attacks. [0006] Accordingly, techniques are needed to improve the security and efficiency of transactions occurring on the blockchain. BRIEF SUMMARY [0007] Certain embodiments provide a computer-implemented method for efficiently executing reversible transactions on a blockchain. An example method generally includes aggregating tokens from a plurality of wallets into a global pool of tokens. Generally, the global pool of tokens comprises a first type of token and a second type of token. A request to exchange a first quantity of the first type of token stored in a wallet to a second type of token is received. A second quantity of the second type of token to transfer to the wallet is calculated based, at least in part, on a ratio of the first type of token to the second type of token in the global pool of tokens. The first quantity of the first type of token is transferred to the global pool of tokens, and the second quantity of the second type of token is transferred to the wallet. [0008] Other embodiments provide processing systems configured to perform the aforementioned methods as well as those described herein; non-transitory, computer-readable media comprising instructions that, when executed by one or more processors of a processing system, cause the processing system to perform the aforementioned methods as well as those described herein; a computer program product embodied on a computer readable storage medium comprising code for performing the aforementioned methods as well as those further described herein; and a processing system comprising me