WO2021034603A1 - Réalisation de transactions cryptographiques à plusieurs parties sur une chaîne de blocs et utilisation de jetons fongibles - Google Patents

Réalisation de transactions cryptographiques à plusieurs parties sur une chaîne de blocs et utilisation de jetons fongibles Download PDF

Info

Publication number
WO2021034603A1
WO2021034603A1 PCT/US2020/046158 US2020046158W WO2021034603A1 WO 2021034603 A1 WO2021034603 A1 WO 2021034603A1 US 2020046158 W US2020046158 W US 2020046158W WO 2021034603 A1 WO2021034603 A1 WO 2021034603A1
Authority
WO
WIPO (PCT)
Prior art keywords
cryptographic
transaction
cryptocurrency
cryptoasset
account
Prior art date
Application number
PCT/US2020/046158
Other languages
English (en)
Inventor
Maurice Herlihy
Victor M. Luchangco
Nickolai Zeldovich
Gregory Andrew COLVIN
Naveed IHSANULLAH
Eric James Gieseke
Derek Leung
Paul Rodgers RIEGLE
Jing Chen
Original Assignee
Algorand Inc.
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 Algorand Inc. filed Critical Algorand Inc.
Publication of WO2021034603A1 publication Critical patent/WO2021034603A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash

Definitions

  • This description relates generally to performing multi-party cryptographic transactions on a blockchain and the use of fungible tokens.
  • a public ledger is a tamperproof sequence of data that can be read and augmented. Shared public ledgers can revolutionize the way a modem society operates. Traditional transactions —such as payments, asset transfers, and titling — can be secured in an order in which they occur. New transactions — such as cryptocurrencies and smart contracts can be enabled. Corruption can be reduced, intermediaries removed, and a new paradigm for trust can be ushered in.
  • Methods, systems, and apparatus for performing multi-party cryptographic transactions and the use of fungible tokens include a cryptographic application configured to aggregate one or more cryptographic transactions into a multi-party cryptographic transaction.
  • the multi-party cryptographic transaction is associated with a multi-party cryptographic transaction identifier.
  • a node of a cryptocurrency blockchain is configured to determine that the multi-party cryptographic transaction is valid, responsive to determining that each cryptographic transaction of the multi-party cryptographic transaction is valid. Responsive to determining that the multi-party cryptographic transaction is valid, the multi party cryptographic transaction is performed on the cryptocurrency blockchain.
  • each cryptographic transaction is associated with a respective transaction identifier.
  • the cryptographic application is further configured to generate the multi-party cryptographic transaction identifier based on a cryptographic function of the respective transaction identifier associated with each cryptographic transaction.
  • the cryptographic function is a hash of the respective transaction identifier associated with each cryptographic transaction.
  • one or more computer devices are configured to generate the cryptographic transactions.
  • Each cryptographic transaction is associated with a first cryptoasset account, a second cryptoasset account, a transaction amount, and the respective transaction identifier.
  • a node of the cryptocurrency blockchain is configured to determine that each cryptographic transaction is valid by determining that the first computer device and the second computer device are associated with a respective cryptoasset account on the cryptocurrency blockchain. It is determined that the cryptoasset account associated with the first computer device includes at least the transaction amount. It is verified that the transaction amount includes a transaction fee associated with each cryptographic transaction.
  • the computer devices are further configured to sign each cryptographic transaction by a respective private key of a respective first cryptoasset account associated with the cryptographic transaction.
  • each computer device is communicably coupled to a node of the cryptocurrency blockchain and configured to execute, on the computer device, a respective copy of the cryptographic application.
  • a cryptographic server is communicably coupled to the computer devices and to a node of the cryptocurrency blockchain.
  • the cryptographic server is configured to execute the cryptographic application.
  • each cryptographic transaction is associated with a different transaction fee.
  • a node of the cryptocurrency blockchain is configured to determine that each cryptographic transaction of the multi-party cryptographic transaction is valid, responsive to determining that the cryptographic transaction is signed by a respective private key of a respective first computer device associated with the cryptographic transaction.
  • a node of the cryptocurrency blockchain is further configured to determine that the multi-party cryptographic transaction is invalid, responsive to determining that at least one cryptographic transaction of the multi-party cryptographic transaction is invalid.
  • a node of the cryptocurrency blockchain is configured to determine that the multi-party cryptographic transaction is valid by processing each cryptographic transaction of the multi-party cryptographic transaction in accordance with an order specified by the multi-party cryptographic transaction.
  • a node of the cryptocurrency blockchain is configured to perform the multi-party cryptographic transaction on the cryptocurrency blockchain by adding each cryptographic transaction to a single, current block of the cryptocurrency blockchain.
  • the single, current block is processed.
  • a node of the cryptocurrency blockchain is further configured to add each cryptographic transaction to a single, next block of the cryptocurrency blockchain for processing, responsive to a size of the single, current block of the cryptocurrency blockchain being exceeded.
  • the cryptocurrency blockchain includes a currency exchange.
  • the multi-party cryptographic transaction includes exchanging a first amount of a first currency for a second amount of a second currency on the currency exchange.
  • the cryptocurrency blockchain includes a non-fungible token (NFT) exchange.
  • the multi-party cryptographic transaction includes exchanging an NFT for a particular amount of fungible tokens on the NFT exchange.
  • the cryptocurrency blockchain includes an NFT exchange.
  • the processing of the single, current block includes exchanging an NFT for a different NFT.
  • the cryptographic application is configured to aggregate the cryptographic transactions into the multi-party cryptographic transaction in accordance with a consensus protocol associated with a hierarchical layer of the cryptocurrency blockchain.
  • each cryptographic transaction of the multi-party cryptographic transaction is associated with a different cryptocurrency.
  • a first computer device generates fungible cryptocurrency tokens associated with a cryptocurrency.
  • the first computer device stores the fungible cryptocurrency tokens in a first cryptoasset account associated with the cryptocurrency.
  • the first computer device transmits a request to transfer a fungible cryptocurrency token to a second computer device.
  • the request references the cryptocurrency.
  • the second computer device allocates a second cryptoasset account associated with the cryptocurrency.
  • the second computer device transmits a response referencing the second cryptoasset account to the first computer device.
  • the first computer device transfers the fungible cryptocurrency token to the second cryptoasset account.
  • the transfer is performed on a cryptocurrency blockchain.
  • each fungible cryptocurrency token has a same digital specification. Thus, each fungible token is indistinguishable from every other fungible token of the same cryptocurrency.
  • the first computer device stores a copy of the first cryptoasset account on a first node of the cryptocurrency blockchain.
  • the second computer device stores a copy of the second cryptoasset account on a second node of the cryptocurrency blockchain.
  • the first computer device stores a record of the transfer of the fungible cryptocurrency token in a distributed transaction ledger of the cryptocurrency blockchain.
  • the record references the first cryptoasset account and the second cryptoasset account.
  • the first computer device receives the one or more transferred fungible cryptocurrency tokens, such that the first cryptoasset account includes all the fungible cryptocurrency tokens. Responsive to the first cryptoasset account including all the fungible cryptocurrency tokens, the first computer device deletes the fungible tokens. If a cryptoasset account is not the owner of the cryptocurrency, the cryptoasset account can be deallocated whenever it has no fungible cryptocurrency tokens.
  • the first computer device removes a fungible cryptocurrency token from circulation on the cryptocurrency blockchain.
  • the removing includes transferring, by the first computer device, the fungible cryptocurrency token to a third cryptoasset account associated with the cryptocurrency.
  • the first computer device transfers ownership of the cryptocurrency to the second computer device. Responsive to receiving the ownership, the second computer device determines whether the second cryptoasset account includes all the fungible cryptocurrency tokens based on a distributed transaction ledger of the cryptocurrency blockchain. Responsive to determining that the second cryptoasset account includes all the fungible cryptocurrency tokens, the second computer device deletes the fungible tokens. If a cryptoasset account is not the owner of the cryptocurrency, the cryptoasset account can be deallocated whenever it has no fungible cryptocurrency tokens. [00030]
  • the benefits and advantages of the embodiments disclosed herein include improved security, scalability, and decentralization of the cryptographic transaction protocol compared to traditional methods.
  • a single block of the cryptocurrency blockchain is produced in a shorter time compared to traditional methods and its transactions are immediately finalized.
  • the embodiments can be used for implementing a point-of-sale system, for example, a restaurant bill where multiple diners can pay and the transaction includes a tip paid to the waiter as well as tax.
  • Multi-party cryptographic transactions can address many scenarios and reduce the need for more complex and computationally expensive smart contracts.
  • a currency exchange can be implemented where a transaction includes exchanging some amount of one currency for another.
  • a non-fungible token (NFT) exchange can be implemented where an NFT (e.g., CryptoKitty) is exchanged for some amount of a fungible token (e.g., Algo). Credit swaps can also be implemented using multi party transactions.
  • NFT non-fungible token
  • fungible tokens for representing undifferentiated objects such as currencies and commodities.
  • the embodiments are implemented at the first hierarchical layer of the blockchain by adding the functionality to Algorand’s consensus protocol. The embodiments thus make fungible tokens and multi-party cryptographic transactions secure, efficient, and easy-to-use.
  • the supply consists of billions of tokens
  • the fungible tokens owned by a given user can be readily specified by just a few bytes, e.g., by her balance.
  • FIG. 1 illustrates an example block diagram of a cryptoasset system for performing multi-party cryptographic transactions and the use of fungible tokens.
  • FIG. 2 illustrates example use cases of performing multi-party cryptographic transactions on a blockchain and the use of fungible tokens.
  • FIG. 3 illustrates a class diagram for performing multi-party cryptographic transactions on a blockchain.
  • FIG. 4 illustrates an instance diagram for performing multi-party cryptographic transactions on a blockchain.
  • FIG. 5 illustrates a process for performing multi-party cryptographic transactions on a blockchain.
  • FIG. 6 illustrates a process for the use of fungible tokens
  • FIG. 7 is a high-level block diagram showing an example of a hardware architecture of a processing system that can be used to implement some or all of the cryptoasset system, a blockchain, a cryptographic server, or a computer device.
  • connecting elements such as solid or dashed lines or arrows
  • the absence of any such connecting elements is not meant to imply that no connection, relationship, or association can exist.
  • some connections, relationships, or associations between elements are not shown in the drawings so as not to obscure the disclosure.
  • a single connecting element is used to represent multiple connections, relationships or associations between elements.
  • a connecting element represents a communication of signals, data, or instructions
  • such element represents one or multiple signal paths (e.g., a bus), as may be needed, to affect the communication.
  • FIG. 1 illustrates an example block diagram of a cryptoasset system 100 for performing multi-party cryptographic transactions 116 and the use of fungible tokens.
  • a cryptographic transaction transfers a particular amount of a cryptoasset from one cryptoasset account to another.
  • a cryptoasset refers to a cryptocurrency, e.g., Algo or Bitcoin, that is designed to work as a medium of exchange that uses cryptography to secure financial transactions, control the creation of additional units, and verify the transfer of cryptoassets.
  • a cryptoasset account allows a user to store cryptocurrencies manage their balances of cryptocurrencies.
  • a cryptoasset account has an account identifier, which is a unique identifier.
  • a user can access their cryptoasset account by logging into a cryptocurrency blockchain or by downloading and accessing a mobile application.
  • the cryptoasset account shows the current balance for the cryptocurrency and displays the user’s transactions.
  • a user can send a request to another party having another cryptoasset account for a specific amount of cryptocurrency.
  • the purpose of a multi-party transaction 116 is to support an atomic set of payments with multiple payers and receivers.
  • the set of transactions in a multi-party transaction 116 is atomic, meaning that the multi-party transaction 116 is isolated from other transactions that may be happening at the same time.
  • the multi-party transaction 116 is thus indivisible, such that all the included two-party transactions 108, 140 are performed together without any other transaction appearing in between.
  • the atomic multi-party transaction 116 provides benefits compared to traditional methods when dealing with shared crypto resources, such as the blockchain, the cryptographic server 124 and the cryptographic application 128.
  • the cryptoasset system 100 includes a first computer device 104, a second computer device 136, a network 112, a cryptographic server 124, and a blockchain node 120.
  • the network 112 includes portions of the Internet 728 and network link 720 illustrated and described in more detail with reference to FIG. 7.
  • the cryptoasset system 100 may include additional or fewer components, and the components can be connected in a different manner.
  • the first computer device 104 and the second computer device 136 are configured to generate the cryptographic transactions 108, 140.
  • Each cryptographic transaction 108 transfers a particular amount of a cryptocurrency or tokens from a sending cryptoasset account to a receiving cryptoasset account 148.
  • the same computer device can be used to initiate the transfer between the two accounts.
  • a user of the cryptoasset system can transfer a particular amount of a cryptocurrency or tokens from an account 148 to the same account 148; thus the sending cryptoasset account 148 would be the same as the receiving cryptoasset account 148.
  • a computer device 136 that is associated with a cryptoasset account 148 can sign a cryptographic transaction for the account 148.
  • Each cryptographic transaction 108 is associated with a first computer device 104 or a sending (first) cryptoasset account. Each cryptographic transaction 108 is also associated with a second computer device 136 or a receiving (second) cryptoasset account 148. Each cryptographic transaction 108 is also associated with a particular transaction amount of cryptocurrency. Each cryptographic transaction 108 is also associated with a respective transaction identifier (e.g., an identifying number, alphanumeric string, hex string, etc.). In some embodiments, each cryptographic transaction 108 is associated with a different transaction fee. For example, the cryptographic transaction 108 is associated with a transaction fee of 0.75% while cryptographic transaction 140 is associated with a transaction fee of 2.29%. In some embodiments, each cryptographic transaction 108 can be associated with a different cryptocurrency.
  • Each sending computer device is configured to sign the cryptographic transaction that it generates to endorse the transaction.
  • the first computer device 104 signs the cryptographic transaction 104 by a respective private key 144 of the first computer device 104 associated with the cryptographic transaction 108.
  • a cryptographic application 128 is configured to aggregate one or more cryptographic transactions 108, 140 into a multi-party cryptographic transaction 116 that is associated with a multi-party cryptographic transaction identifier.
  • each computer device 108 is communicably coupled to a node 120 of a cryptocurrency blockchain.
  • Different computer devices 136 can be coupled to a different node of the cryptocurrency blockchain.
  • Each computer device 108, 136 is configured to execute a respective copy of the cryptographic application 128.
  • a cryptographic server 124 can be communicably coupled to the one or more computer devices 104, 136.
  • the cryptographic server 124 is coupled to the nodes 120 of the cryptocurrency blockchain.
  • the cryptographic server 124 is configured to execute the cryptographic application 128.
  • the cryptographic application 128 is configured to generate a multi-party cryptographic transaction identifier based on a cryptographic function of the respective transaction identifier associated with each cryptographic transaction 108, 136.
  • the cryptographic function can be a cryptographic hash of the respective transaction identifier associated with each cryptographic transaction 108, 140.
  • the multi-party cryptographic transaction identifier is then associated with each cryptographic transaction 108, 140 such that the cryptographic transactions 108, 140 can be grouped into a single multi-party cryptographic transaction 116.
  • each transaction 108, 140 includes a field called “group ID” at the end.
  • a transaction’s own ID, denoted by “txID”, is the hash of the transaction not including the groupID field.
  • a “multi-party cryptographic transaction header” includes an ordered list of all txIDs in the group, and the groupID is the hash of this list. All transactions in the group include this groupID in its corresponding field, and the sender of a transaction signs the transaction including the groupID.
  • the multi-party cryptographic transaction header is not signed by anybody, but the header and all transactions in the group are always treated as a whole when propagated in the network, accepted into any user’s transaction pool, and included in a single block 132.
  • the multi-party cryptographic transaction 116 is processed atomically and its component transactions 108, 140 are not split up across more than one block. That is, all component transactions 108, 140 must be added to a single, current block
  • a node of the cryptocurrency blockchain (e.g., node 120) is configured to process the multi-party cryptographic transaction 116 as a single block of the blockchain.
  • all the contained transactions 108, 140 in the multi-party cryptographic transaction 116 are validated and processed atomically.
  • Atomic validation of the multi-party cryptographic transaction 116 means that the included two-party cryptographic transactions 108, 140 are performed together (in an order) without any other transaction or processing between the cryptographic transactions 108, 140. Thus no other process or transaction is allowed to occur between the cryptographic transactions 108, 140.
  • the cryptocurrency blockchain functions as a currency exchange.
  • the multi-party cryptographic transaction 116 is implemented to exchange a first amount of a first cryptocurrency for a second amount of a second cryptocurrency on the currency exchange.
  • the cryptocurrency blockchain is implemented to function as a non-fungible token (NFT) exchange.
  • NFT non-fungible token
  • the cryptographic application 128 is configured to aggregate the one or more cryptographic transactions 108, 140 into the multi-party cryptographic transaction 116 in accordance with a consensus protocol associated with a first hierarchical layer (Layer 1) of the cryptocurrency blockchain.
  • Layer 1 handles basic payments and the consensus protocol, while Layer 2 includes smart contracts and any other functionality not directly connected to the generation of new blocks.
  • Implementing the core functionalities at Layer 1 provides improved security.
  • the functionality implemented at Layer 1 enjoys the highest level of security: that of the consensus protocol itself.
  • Layer- 1 transactions are designed, tested thoroughly, verified by auditors, and inspected by contributors everywhere. Attack vectors such as double spending, denial of service, etc., are countered by the same mechanisms put in place for native currency.
  • Layer- 1 functionality is interpreted in the same way by all blockchain participants.
  • the core consensus protocol can be augmented in a decentralized consensual manner, all participating software works with the same consensus protocol. This promotes compatibility. If two users use the same Layer- 1 implementation to launch their own fungible tokens, then an application developed for one token will also work for the other.
  • a node 120 of the cryptocurrency blockchain is configured to atomically determine whether each cryptographic transaction 108, 140 of the multi-party cryptographic transaction 116 is valid.
  • a valid cryptographic transaction obeys particular transaction rules. For example, the cryptographic transaction (a) identifies a first (sending) cryptoasset account and a second (receiving) cryptoasset account, (b) identifies an amount of cryptoassets to transact, and (c) is signed by a private key of the first cryptoasset account (to denote an intended and consensual transfer of cryptoassets).
  • the balance in the first cryptoasset account (d) must have at least the amount of cryptoassets to perform the transaction and (e) may be required to have sufficient cryptoassets to pay a transaction fee over and above the amount of cryptoassets to perform the transaction. If any of the rules (a)-(e) are violated, the cryptographic transaction is determined to be invalid. If any included two-party cryptographic transaction 108, 140 is determined to be invalid, the multi-party cryptographic transaction is determined to be invalid.
  • validity of a cryptographic transaction 108 depends on whether the cryptographic transaction 108 is signed by a respective private key 144 of a respective (a) first computer device 144, (b) a user associated with the cryptographic transaction 108, or (c) a sending cryptoasset account.
  • a node 120 of the cryptocurrency blockchain is configured to determine that a cryptographic transaction 108 is valid by determining that the first (sending) computer device 104 and the second (receiving) computer device 136 are associated with a respective account each on the cryptocurrency blockchain.
  • the cryptographic transaction 108 should be associated with a sending account and a receiving account 148 for a transfer of funds to take place.
  • a node 120 determines whether the cryptoasset account associated with the first computer device 104 contains at least the amount of cryptocurrency to be transacted or transferred. A node 120 verifies that the transaction amount includes the particular transaction fee associated with the cryptographic transaction 108. Only when the conditions are satisfied for each cryptographic transaction 108, does a node 120 determine that the cryptographic transaction 108 is valid. [00059] Responsive to determining that each cryptographic transaction 108, 140 of the multi-party cryptographic transaction 116 is valid, a node 120 determines that the multi-party cryptographic transaction 116 is itself valid. A node 120 processes each cryptographic transaction 108, 140 of the multi-party cryptographic transaction 116 in accordance with an order specified in the multi-party cryptographic transaction 116.
  • a node 120 Responsive to determining that the multi-party cryptographic transaction 116 is valid, a node 120 performs the multi-party cryptographic transaction 116 on the cryptocurrency blockchain.
  • a node 120 is configured to perform the multi-party cryptographic transaction 116 by adding each cryptographic transaction 108, 140 to a single, current block 132 of the cryptocurrency blockchain. Thus all the underlying cryptographic transactions 108, 140 are added to a single block 132. The block 132 is then processed to execute the multi-party cryptographic transaction 116. If the size of the current block 132 of the cryptocurrency blockchain is exceeded, a node 120 of the cryptocurrency blockchain is configured to add (cache) the cryptographic transactions to a single, next block 152 of the cryptocurrency blockchain for processing.
  • a limit is implemented wherein each transaction 108, 140 in the multi-party cryptographic transaction 116 group cannot exceed the upper-bound for the size of the node field.
  • a block proposer has an upper-bound on how much time it spends in assembling a block, which inherently limits the number of transactions in a group because a group has to appear in a block as a whole.
  • upper-bounds can also be imposed on the number of transactions in a group.
  • a node 120 of the cryptocurrency blockchain is configured to determine that the multi-party cryptographic transaction 116 is invalid, responsive to determining that at least one cryptographic transaction of the multi-party cryptographic transaction 116 is invalid.
  • the cryptoasset system 100 is used to generate and transact fungible cryptocurrency tokens associated with a particular cryptocurrency.
  • a token is fungible if any two of its units are interchangeable.
  • An example of a fungible token is when any two units have the same purchasing power.
  • the embodiments disclosed herein enable computer devices to generate their own fungible tokens, thus becoming their token managers.
  • a token manager can generate a supply of new tokens, increase the circulating supply of the new tokens, freeze the tokens (generated by her) in a given account, and transfer her abilities to a new token manager.
  • the functionalities are implemented at Layer 1. The benefits of a Layer- 1 approach are especially valuable when fungible tokens are used to launch a new cryptocurrency.
  • the first computer device 104 generates (creates) one or more fungible cryptocurrency tokens associated with a new cryptocurrency.
  • Each fungible cryptocurrency token of the one or more fungible cryptocurrency tokens has the same digital specification. Thus, each fungible token is indistinguishable from every other fungible token of the same cryptocurrency.
  • the first computer device 104 stores the one or more fungible cryptocurrency tokens in a first cryptoasset account associated with the cryptocurrency. In some embodiments, the first computer device 104 stores (backs up) a copy of the first cryptoasset account on a first node 120 of the cryptocurrency blockchain.
  • the first computer device 104 transmits a request to transfer a fungible cryptocurrency token of the one or more fungible cryptocurrency tokens to a second computer device 136. The request references the new cryptocurrency.
  • the same computer device e.g., 104) can be used to perform the transaction, as described above; the transaction is between two different cryptoasset accounts using the same computer device.
  • the second computer device 136 allocates a second cryptoasset account 148 associated with the cryptocurrency. For example, a number of memory blocks are allocated to store fungible tokens. In some embodiments, the second computer device 136 stores (backs up) a copy of the second cryptoasset account 148 on a second node of the cryptocurrency blockchain. The first node 120 can also be used. The second computer device 136 transmits a response referencing the second cryptoasset account 148 to the first computer device 104.
  • the first computer device 104 transfers the fungible cryptocurrency token to the second cryptoasset account 148.
  • the transfer is performed on the cryptocurrency blockchain.
  • the transfer is performed by adding the transaction to a single, current block 132 of the cryptocurrency blockchain.
  • the node 120 processes the block 132.
  • the first computer device 104 stores a record of the transfer of the fungible cryptocurrency token in a distributed transaction ledger of the cryptocurrency blockchain.
  • the record references the first computer device 104 and the second computer device 136.
  • the record references the first (creating) cryptoasset account and the second cryptoasset account 148.
  • the record references the transaction amount.
  • the first computer device 104 destroys the cryptocurrency. For example, the first computer device 104 receives all transferred fungible cryptocurrency tokens. Thus the first (creating) cryptoasset account contains the one or more fungible cryptocurrency tokens created. Responsive to the first cryptoasset account containing the one or more fungible cryptocurrency tokens, the first computer device 104 deletes the one or more fungible tokens to destroy the cryptocurrency. If a cryptoasset account is not the owner of the cryptocurrency, the cryptoasset account can be deallocated whenever it has no fungible cryptocurrency tokens. Thus orphan memory blocks or orphan accounts associated with the cryptocurrency do not remain.
  • some fungible cryptocurrency tokens are removed from circulation.
  • the first computer device 104 can remove a fungible cryptocurrency token of the one or more fungible cryptocurrency tokens from circulation on the cryptocurrency blockchain.
  • the removal includes allocating, by the first computer device 104, a third (holding account or special account) cryptoasset account associated with the cryptocurrency.
  • the first computer device 104 transfers one or more fungible cryptocurrency tokens to the third cryptoasset account.
  • the removed one or more fungible cryptocurrency tokens thus cannot be transacted.
  • a copy of the third cryptoasset account can be stored on a node of the cryptocurrency blockchain.
  • ownership of the created cryptocurrency is transferred from one owner to another, such that the new owner can destroy the cryptocurrency if it wishes.
  • the first computer device 104 transfers ownership of the cryptocurrency to the second computer device 136.
  • the second computer device 136 determines whether the second cryptoasset account 148 includes all the created fungible cryptocurrency tokens based on a distributed transaction ledger of the cryptocurrency blockchain. This is to make sure that no orphan tokens remain in any other pending accounts. Responsive to determining that the second cryptoasset account 148 includes all the fungible cryptocurrency tokens, the second computer device 136 can delete the one or more fungible tokens. If a cryptoasset account is not the owner of the cryptocurrency, the cryptoasset account can be deallocated whenever it has no fungible cryptocurrency tokens.
  • a multi-party cryptographic transaction can be performed using fungible tokens.
  • Multiple users that hold different fungible tokens and have negotiated off-chain a set of transfers of these tokens can execute the transfers by posting on-chain a single atomic transaction.
  • Valid transactions include (A transfers to B xl units of Tl; C transfers to D x2 units of T2, etc.). Once each user digitally signs her own transfer, either (a) none of the transfers is executed by a given time, or (b) all of the transfers are executed by that time.
  • a bilateral exchange can be implemented.
  • USDT USD-backed stable coin
  • a multi-party cryptographic transaction enables B and A to trade, e.g., 1000 Algos for 1,500 USDTs.
  • the exchange is immediate and unmediated. If each party has the right amount of currency, a bilateral exchange can be executed within seconds, by atomically posting the proper data in the next block.
  • the ability to execute a bilateral exchange by a single transaction ensures that no user can cheat the other by failing to post its own transfer.
  • Bilateral exchanges are fundamental transactions, and their speedy and safe simultaneity is an advantage of the Algorand blockchain over other blockchains.
  • a multi-party cryptographic transaction enables multiple users to execute inter-dependent trades.
  • a multi-party cryptographic transaction enables the following circular trade: User A transfers x units of token T1 to user B if and only if B transfers y units of token T2 to user C if and only if C transfers z units of token T3 to A.
  • crowdfunding is implemented.
  • a multi-party cryptographic transaction enables a group of users to contribute pre-specified amounts of different currencies to the same project (e.g., a given charitable organization) such that each user in the group ends up making her payment if and only if everyone else in the group also does so.
  • a multi-party cryptographic transaction provides powerful building blocks for constructing a decentralized exchange where users trade with each other without having to trust any intermediaries.
  • FIG. 2 illustrates example use cases 200 of performing multi-party cryptographic transactions 116 on a blockchain and the use of fungible tokens.
  • the example 200 illustrated in FIG. 2 shows the actors and use cases supported by a multi-party cryptographic transaction 116.
  • the actors include the users (computer devices 104) that represent individuals who use the cryptocurrency blockchain (e.g., the Algorand blockchain) to create, sign and submit cryptographic transactions 108 to the Algorand blockchain.
  • the cryptocurrency blockchain e.g., the Algorand blockchain
  • the actors include the cryptographic application 128 that can execute on the cryptographic server 124 as a third-party application or on the computer devices 104. Many third-party applications 128 can be created to perform different types of transactions using different cryptocurrencies.
  • the cryptographic applications 128 represent the services that create, sign and submit (a) regular two-party transaction 108 and (b) multi-party cryptographic transactions 116.
  • the actors in the example 200 also includes the blockchain node 120 instances that make up the cryptocurrency blockchain (e.g., the Algorand blockchain network).
  • the individual Algod nodes 120 process both (a) regular two-party transaction 108 and (b) multi party cryptographic transactions 116.
  • a multi-party cryptographic transactions 116 is processed on a single, current block 132 as illustrated and described in more detail above with reference to FIG. 1.
  • the node 120 validates the multi-party transaction 116.
  • the validation includes processing each transaction 108, 140 in order and (a) confirming that the payer and receiver accounts exist and (b) the payer's balance is sufficient to cover the associated transaction amount and fee.
  • the group validation is in addition to any regular transaction validation including but not limited to verifying minimum fee and transaction signature. If any check fails, the entire multi-party transaction is rejected.
  • the entire multi-party transaction 116 is added to the single, current block 132. If adding the multi-party transaction 116 to the block 132 results in the block 132 exceeding the maximum block size, then the transactions 108, 140 are cached for processing in the single, next block 152.
  • certain constraints are enforced when processing the multi party transaction 116. For example, there may be a limit on the number of transactions 108, 140 within the multi-party transaction 116.
  • the processing of the multi-party transaction 116 is atomic; either all or none of the cryptographic transactions 108, 140 of the multi-party transaction 116 group will be added to a single block 132.
  • the cryptographic transactions 108, 140 are not distributed over more than one block.
  • the individual child transactions 108, 140 must be added in the order specified by the multi-party transaction 116 parent transaction.
  • Each individual transaction 108 within the multi-party transaction 116 group must be valid according to regular transaction processing rules.
  • FIG. 3 illustrates a class diagram 300 for performing multi-party cryptographic transactions 116 on a blockchain.
  • the multi-party cryptographic transaction 116 is created by the cryptographic application 128.
  • the computer device 104 signs the cryptographic transaction 108 by a respective private key 212.
  • the multi-party cryptographic transaction 116 contains an ordered list 204 of transactions and also includes the multi-party cryptographic transaction identifier.
  • the order is defined by the creator of the multi-party cryptographic transaction 116, e.g., computer device 104.
  • the order is observed since funds transferred from one account (e.g., account 208) to another can be used for an additional transfer within the same multi-party cryptographic transaction 116.
  • the payer account balance (e.g., associated with the computer device 104) must be equal or be greater than the minimum account balance, otherwise, the transaction 108 will be rejected.
  • a multi-party transaction object exists having one or more transactions 108, 140.
  • the regular two-party transaction format is augmented to include a new field called groupld to denote the multi-party cryptographic transaction identifier. All the transactions 108, 140 that make up the multi-party cryptographic transaction 116 share the same multi-party cryptographic transaction identifier. [00080] In some embodiments, all the cryptographic transactions 108, 140 that make up the multi-party transaction 116 are located. The parent multi-party transaction 116 is determined and all the associated child transactions are found. If all transactions 108, 140 are found, the transactions are processed.
  • FIG. 4 illustrates an instance diagram 400 for performing a multi-party cryptographic transaction 116 on a blockchain.
  • the instance diagram 400 shows an example multi-party cryptographic transaction 116 for a restaurant bill, including the restaurant account 404, the diner account 408, and the waiter account 412.
  • the multi-party cryptographic transaction 116 is created by aggregating two cryptographic transactions 108, 140.
  • the cryptographic transaction 108 is signed with a signature 211 of the associate account 408.
  • the multi-party cryptographic transaction 116 is created and the required fields are populated.
  • the receiver (e.g., waiter account 412) and payer account 408 are set to the account that will sign the multi-party cryptographic transaction 116 (also known as parent transaction).
  • the group id is set to the multi party cryptographic transaction identifier described in more detail with referenced to FIG. 1.
  • the payer account 408 is requested to sign the child transaction 108.
  • the parent multi-party cryptographic transaction 116 is signed.
  • the “parent” is not a transaction that needs to be signed.
  • the parent multi-party transaction 116 functions as a “container” for the component transactions 108, 140 whose name (the groupld) is a hash of the list of transaction identifiers for its components (and sometimes other metadata, such as the number of transaction components).
  • the parent multi-party cryptographic transaction 116 and the child transactions 108, 140 are submitted to the Algorand blockchain, which returns a set of candidate transaction identifiers.
  • a multi-party cryptographic transaction 116 is a first-class entity in the system 100.
  • a transaction pool thus accepts a whole group rather than individual transaction components 108, 140.
  • Single-payment transactions are treated as a group that has only one component transaction.
  • the transaction group is the unit (e.g., the multi-party transaction 116) that the transaction pool (e.g., node 120) handles.
  • the transaction pool thus processes the group (e.g., transactions 108, 140) as a unit and will not admit any transaction component (e.g., transaction 108) without the others.
  • the individual transaction components 108, 140 are handled when they are created (they must be signed by the payer's account 408).
  • the multi-party cryptographic transaction 116 is implemented as a first-class object that contains the transaction components 108, 140. Each group multi-party cryptographic transaction 116 is processed as a unit. Thus, when the node 120 processes any part of a transaction group 116, all components 108, 140 of that multi party cryptographic transaction 116 are available to the node 120. The parent multi-party cryptographic transaction 116 thus acts as a wrapper for the child transactions 108, 140.
  • FIG. 5 illustrates a process 500 for performing multi-party cryptographic transactions 116. In some embodiments, the process 500 of FIG. 5 is performed by the cryptoasset system 100. The cryptoasset system 100 is illustrated and described in more detail with reference to FIG. 1. Other entities perform some or all of the steps of the process 500 in other embodiments. Likewise, embodiments may include different and/or additional steps, or perform the steps in different orders.
  • the cryptoasset system 100 uses one or more computer devices 104, 136 to generate 504 one or more cryptographic transactions 108, 140.
  • Each cryptographic transaction 108 is associated with a first computer device 104, a second computer device 136, a transaction amount (e.g., an amount of cryptocurrency), and a respective transaction identifier associated with each cryptographic transaction.
  • two users can use the same computer device 104 to perform a transaction.
  • the first computer device and the second computer device can be the same device (e.g., a laptop shared between two users).
  • Each cryptographic transaction 108 is also associated with a first cryptoasset account (e.g., sender) and a second cryptoasset account (e.g., receiver).
  • a user may transfer cryptocurrency tokens to herself from a single account to the single account.
  • the first cryptoasset account and the second cryptoasset account can be the same account.
  • the one or more cryptographic transactions 108, 140 are to be performed on a cryptocurrency blockchain.
  • the cryptocurrency blockchain is a currency exchange.
  • the transactions include exchanging a first amount of a first currency for a second amount of a second currency on the currency exchange.
  • the cryptoasset system 100 aggregates 508 the one or more cryptographic transactions 108, 140 into a multi-party cryptographic transaction 116 associated with a multi-party cryptographic transaction identifier.
  • the multi-party cryptographic transaction identifier is based on a cryptographic function of the respective transaction identifier associated with each cryptographic transaction 108, 140.
  • the cryptographic function can be a cryptographic hash of the respective transaction identifier associated with each cryptographic transaction 108, 140.
  • the multi-party cryptographic transaction identifier is then associated with each cryptographic transaction 108, 140 such that the cryptographic transactions 108, 140 can be grouped into a single multi-party cryptographic transaction 116.
  • the cryptoasset system 100 determines 512, by a node 120 of a cryptocurrency blockchain, that each cryptographic transaction 108 of the multi-party cryptographic transaction 116 is valid, responsive to determining that the cryptographic transaction 108 is signed by a respective private key of a respective first computer device 105 associated with the cryptographic transaction. [00090] The cryptoasset system 100 determines 516, by the node 120 of the cryptocurrency blockchain, that the multi-party cryptographic transaction 116 is valid, responsive to determining that each cryptographic transaction 108 of the multi-party cryptographic transaction is valid 116.
  • validity is determined for a cryptographic transaction 108 responsive to determining that the cryptographic transaction 108 is signed by a respective private key 144 of a respective (a) first computer device 144, (b) a user associated with the cryptographic transaction 108, or (c) a sending cryptoasset account.
  • the cryptoasset system 100 adds 520 the multi-party cryptographic transaction 116 to a single, current block 132 of the cryptocurrency blockchain, responsive to determining that the multi-party cryptographic transaction 116 is valid. Thus all the underlying cryptographic transactions 108, 140 are added to a single, current block 132. The single, current block 132 is then processed to execute the multi-party cryptographic transaction 116. If the size of the current block 132 of the cryptocurrency blockchain is exceeded, a node 120 of the cryptocurrency blockchain is configured to add (cache) the cryptographic transactions to a single, next block 152 of the cryptocurrency blockchain for processing.
  • FIG. 6 illustrates a process 600 for generating and using fungible tokens.
  • the process 600 of FIG. 6 is performed by the cryptoasset system 100.
  • the system 100 is illustrated and described in more detail with reference to FIG. 1.
  • Other entities perform some or all of the steps of the process 600 in other embodiments.
  • embodiments may include different and/or additional steps, or perform the steps in different orders.
  • the cryptoasset system 100 generates 604, by a first computer device 104, one or more fungible cryptocurrency tokens associated with a cryptocurrency.
  • Each fungible cryptocurrency token of the one or more fungible cryptocurrency tokens has the same digital specification. Thus, each fungible token is indistinguishable from every other fungible token of the same cryptocurrency.
  • the cryptoasset system 100 stores 608, by the first computer device 104, the one or more fungible cryptocurrency tokens in a first cryptoasset account associated with the cryptocurrency.
  • the first computer device 104 stores (backs up) a copy of the first cryptoasset account on a first node 120 of the cryptocurrency blockchain.
  • the cryptoasset system 100 transmits 612, by the first computer device 104, a request to transfer a fungible cryptocurrency token of the one or more fungible cryptocurrency tokens to a second computer device 136.
  • the request references the cryptocurrency.
  • the same computer device e.g., 104 can be used to perform the transaction, as described above; the transaction is between two different cryptoasset accounts using the same computer device.
  • the cryptoasset system 100 allocates 616, by the second computer device 136, a second cryptoasset account associated with the cryptocurrency.
  • the cryptoasset system 100 transmits 620, by the second computer device 136, a response referencing the second cryptoasset account to the first computer device 104. For example, a number of memory blocks are allocated to store fungible tokens.
  • the second computer device 136 stores (backs up) a copy of the second cryptoasset account 148 on a second node of the cryptocurrency blockchain.
  • the cryptoasset system 100 transfers 624, by the first computer device 104, the fungible cryptocurrency token to the second cryptoasset account.
  • the transfer is performed on a cryptocurrency blockchain.
  • the transfer is performed by adding the transaction to a single, block 132 of the cryptocurrency blockchain.
  • the node 120 processes the block 132.
  • the first computer device 104 stores a record of the transfer of the fungible cryptocurrency token in a distributed transaction ledger of the cryptocurrency blockchain.
  • FIG. 7 is a high-level block diagram showing an example of a hardware architecture of a processing system 700 that can be used to implement some or all of the cryptoasset system 100.
  • the computer system 700 is a special purpose computing device.
  • the special-purpose computing device is hard-wired to perform multi-party cryptographic transactions, or includes digital electronic devices such as one or more application-specific integrated circuits (ASICs) or field programmable gate arrays (FPGAs) that are persistently programmed to perform the techniques herein, or include one or more general purpose hardware processors programmed to perform the techniques pursuant to program instructions in firmware, memory, other storage, or a combination.
  • ASICs application-specific integrated circuits
  • FPGAs field programmable gate arrays
  • the special-purpose computing devices are desktop computer systems, portable computer systems, handheld devices, network devices or any other device that incorporates both hard-wired or program logic to implement the techniques.
  • the computer system 700 includes a bus 702 or other communication mechanism for communicating information, and one or more computer hardware processors 704 coupled to the bus 702 for processing information.
  • the hardware processors 704 are general-purpose microprocessors.
  • the computer system 700 also includes a main memory 706, such as a random-access memory (RAM) or other dynamic storage device, coupled to the bus 702 for storing information and instructions to be executed by processors 704.
  • main memory 706 is used for storing temporary variables or other intermediate information during execution of instructions to be executed by the processors 704.
  • Such instructions when stored in non-transitory storage media accessible to the processors 704, render the computer system 700 into a special-purpose machine customized to perform the operations specified in the instructions.
  • the computer system 700 further includes a read only memory (ROM) 708 or other static storage device coupled to the bus 702 for storing static information and instructions for the processors 704.
  • ROM read only memory
  • a storage device 712 such as a magnetic disk, optical disk, solid-state drive, or three-dimensional cross point memory is provided and coupled to the bus 702 for storing information and instructions.
  • the computer system 700 is coupled via the bus 702 to a display 124, such as a cathode ray tube (CRT), a liquid crystal display (LCD), plasma display, light emitting diode (LED) display, or an organic light emitting diode (OLED) display for displaying information to a computer user.
  • a display 124 such as a cathode ray tube (CRT), a liquid crystal display (LCD), plasma display, light emitting diode (LED) display, or an organic light emitting diode (OLED) display for displaying information to a computer user.
  • An input device 714 is coupled to bus 702 for communicating information and command selections to the processors 704.
  • a cursor controller 716 such as a mouse, a trackball, a touch-enabled display, or cursor direction keys for communicating direction information and command selections to the processors 704 and for controlling cursor movement on the display 124.
  • the techniques herein are performed by the computer system 700 in response to the processors 704 executing one or more sequences of one or more instructions contained in the main memory 706. Such instructions are read into the main memory 706 from another storage medium, such as the storage device 712. Execution of the sequences of instructions contained in the main memory 706 causes the processors 704 to perform the process steps described herein. In alternative implementations, hard-wired circuitry is used in place of or in combination with software instructions.
  • Non-volatile media includes, such as optical disks, magnetic disks, solid-state drives, or three-dimensional cross point memory, such as the storage device 712.
  • Common forms of storage media include, such as a floppy disk, a flexible disk, hard disk, solid-state drive, magnetic tape, or any other magnetic data storage medium, a CD-ROM, any other optical data storage medium, any physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, NV-RAM, or any other memory chip or cartridge.
  • Storage media is distinct from but is used in conjunction with transmission media.
  • Transmission media participates in transferring information between storage media. Transmission media includes coaxial cables, copper wire and fiber optics, including the wires that include the bus 702.
  • various forms of media are involved in carrying one or more sequences of one or more instructions to the processors 704 for execution.
  • the instructions are initially carried on a magnetic disk or solid-state drive of a remote computer.
  • the remote computer loads the instructions into its dynamic memory and send the instructions over a telephone line using a modem.
  • a modem local to the computer system 700 receives the data on the telephone line and use an infrared transmitter to convert the data to an infrared signal.
  • An infrared detector receives the data carried in the infrared signal and appropriate circuitry places the data on the bus 702.
  • the bus 702 carries the data to the main memory 706, from which processors 704 retrieves and executes the instructions.
  • the instructions received by the main memory 706 are optionally stored on the storage device 712 either before or after execution by processors 704.
  • the computer system 700 also includes a communication interface 718 coupled to the bus 702.
  • the communication interface 718 provides a two-way data communication coupling to a network link 720 connected to a local network 722.
  • the communication interface 718 is an integrated service digital network (ISDN) card, cable modem, satellite modem, or a modem to provide a data communication connection to a corresponding type of telephone line.
  • ISDN integrated service digital network
  • the communication interface 718 is a local area network (LAN) card to provide a data communication connection to a compatible LAN.
  • LAN local area network
  • wireless links are also implemented.
  • the network link 720 typically provides data communication through one or more networks to other data devices.
  • the network link 720 provides a connection through the local network 722 to a host computer 724 or to a cloud data center or equipment operated by an Internet Service Provider (ISP) 726.
  • ISP 726 provides data communication services through the world-wide packet data communication network now commonly referred to as the "Internet” 728.
  • the local network 722 and Internet 728 both use electrical, electromagnetic or optical signals that carry digital data streams.
  • Machine-readable medium includes any mechanism that can store information in a form accessible by a machine (a machine may be, for example, a computer, network device, cellular phone, personal digital assistant (PDA), manufacturing tool, any device with one or more processors, etc.).
  • a machine-accessible medium includes recordable/non-recordable media (e.g., RAM or ROM; magnetic disk storage media; optical storage media; flash memory devices; etc.), etc.
  • logic means: i) special-purpose hardwired circuitry, such as one or more application-specific integrated circuits (ASICs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), or other similar device(s); ii) programmable circuitry programmed with software and/or firmware, such as one or more programmed general-purpose microprocessors, digital signal processors (DSPs) and/or microcontrollers, system-on-a-chip systems (SOCs), or other similar device(s); or iii) a combination of the forms mentioned in i) and ii).
  • ASICs application-specific integrated circuits
  • PLDs programmable logic devices
  • FPGAs field programmable gate arrays
  • firmware such as one or more programmed general-purpose microprocessors, digital signal processors (DSPs) and/or microcontrollers, system-on-a-chip systems (SOCs), or other similar device(s); or iii) a combination of the forms mentioned in

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

L'invention concerne des procédés, des systèmes et un appareil permettant d'effectuer des transactions cryptographiques à plusieurs parties et l'utilisation de jetons fongibles, comprenant une application cryptographique configurée pour agréger de multiples transactions cryptographiques dans une transaction cryptographique à plusieurs parties associée à un identifiant de transaction cryptographique à plusieurs parties. Un nœud d'une chaîne de blocs de cryptomonnaie est configuré pour déterminer que la transaction cryptographique à plusieurs parties est valide, en réponse à la détermination selon laquelle chaque transaction cryptographique de la transaction cryptographique à plusieurs parties est valide. En réponse à la détermination selon laquelle la transaction cryptographique à plusieurs parties est valide, la transaction cryptographique à plusieurs parties est effectuée sur la chaîne de blocs de cryptomonnaie.
PCT/US2020/046158 2019-08-22 2020-08-13 Réalisation de transactions cryptographiques à plusieurs parties sur une chaîne de blocs et utilisation de jetons fongibles WO2021034603A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962890486P 2019-08-22 2019-08-22
US62/890,486 2019-08-22

Publications (1)

Publication Number Publication Date
WO2021034603A1 true WO2021034603A1 (fr) 2021-02-25

Family

ID=74660261

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2020/046158 WO2021034603A1 (fr) 2019-08-22 2020-08-13 Réalisation de transactions cryptographiques à plusieurs parties sur une chaîne de blocs et utilisation de jetons fongibles

Country Status (1)

Country Link
WO (1) WO2021034603A1 (fr)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115102964A (zh) * 2022-06-23 2022-09-23 Oppo广东移动通信有限公司 基于通信的资源共享方法、装置、系统、产品及设备
US20230045669A1 (en) * 2019-11-20 2023-02-09 Eygs Llp Systems, apparatus and methods for identifying and securely storing distinguishing characteristics in a distributed ledger within a distributed ledger-based network based on fungible and non-fungible tokens
WO2023059415A1 (fr) * 2021-10-05 2023-04-13 Zelus Wallet Llc Transactions automatisées à travers de multiples chaînes de blocs avec échanges de cryptomonnaies
US11783333B2 (en) 2020-04-15 2023-10-10 Eygs Llp Intelligent assertion tokens for authenticating and controlling network communications using a distributed ledger
US11972420B2 (en) 2019-08-09 2024-04-30 Eygs Llp Methods and systems for preventing transaction tracing on distributed ledger-based networks

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180006831A1 (en) * 2016-02-04 2018-01-04 Nasdaq Technology Ab Systems and methods for storing and sharing transactional data using distributed computing systems
US20190058709A1 (en) * 2017-08-16 2019-02-21 Telefonaktiebolaget Lm Ericsson (Publ) Tenant management method and system in a cloud computing environment
US20190130701A1 (en) * 2017-10-31 2019-05-02 Jordan Simons Management Of Virtual Goods In Distributed Multi-Ledger Gambling Architecture
US20190220854A1 (en) * 2018-01-17 2019-07-18 Spera, Inc. Techniques for Blockchain Transactions

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180006831A1 (en) * 2016-02-04 2018-01-04 Nasdaq Technology Ab Systems and methods for storing and sharing transactional data using distributed computing systems
US20190058709A1 (en) * 2017-08-16 2019-02-21 Telefonaktiebolaget Lm Ericsson (Publ) Tenant management method and system in a cloud computing environment
US20190130701A1 (en) * 2017-10-31 2019-05-02 Jordan Simons Management Of Virtual Goods In Distributed Multi-Ledger Gambling Architecture
US20190220854A1 (en) * 2018-01-17 2019-07-18 Spera, Inc. Techniques for Blockchain Transactions

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11972420B2 (en) 2019-08-09 2024-04-30 Eygs Llp Methods and systems for preventing transaction tracing on distributed ledger-based networks
US20230045669A1 (en) * 2019-11-20 2023-02-09 Eygs Llp Systems, apparatus and methods for identifying and securely storing distinguishing characteristics in a distributed ledger within a distributed ledger-based network based on fungible and non-fungible tokens
US11783333B2 (en) 2020-04-15 2023-10-10 Eygs Llp Intelligent assertion tokens for authenticating and controlling network communications using a distributed ledger
WO2023059415A1 (fr) * 2021-10-05 2023-04-13 Zelus Wallet Llc Transactions automatisées à travers de multiples chaînes de blocs avec échanges de cryptomonnaies
CN115102964A (zh) * 2022-06-23 2022-09-23 Oppo广东移动通信有限公司 基于通信的资源共享方法、装置、系统、产品及设备
CN115102964B (zh) * 2022-06-23 2024-03-08 Oppo广东移动通信有限公司 基于通信的资源共享方法、装置、系统、产品及设备

Similar Documents

Publication Publication Date Title
WO2021034603A1 (fr) Réalisation de transactions cryptographiques à plusieurs parties sur une chaîne de blocs et utilisation de jetons fongibles
EP3594884A1 (fr) Procédé de gestion de facture électronique, dispositif et support de stockage
US11971879B2 (en) Systems and methods for recording data representing multiple interactions
US20170132615A1 (en) Block chain alias for person-to-person payments
US20220374886A1 (en) Performing transactions using private and public blockchains
US20210097532A1 (en) Systems and methods for recording assets and transactions thereof in blockchains
US11374935B2 (en) Block chain alias person-to-person resource allocation
US11645634B2 (en) Blockchain-based supply chain payment network
WO2022262527A1 (fr) Procédé de paiement à base de devise numérique, plateforme, terminal et système de paiement
CN110458561B (zh) 区块链网络中实现机密交易的方法及装置
US20220156725A1 (en) Cross-chain settlement mechanism
CN110008716A (zh) 区块链交易方法及装置、电子设备、存储介质
US20210398112A1 (en) Computer-Implemented Method and System for Digital Signing of Transactions
Kim et al. Autochain platform: expert automatic algorithm Blockchain technology for house rental dApp image application model
US20230013119A1 (en) Tainted asset marker management
TW201905813A (zh) 具權限分級和避免重複執行的智能合約執行系統及其方法
CN110009492A (zh) 区块链交易方法及装置、电子设备、存储介质
WO2021165817A1 (fr) Plateforme pour une pluralité de services associés à une chaîne de blocs
US20230252466A1 (en) Facilitation of real-time payment network transactions
KR20220071241A (ko) 컴퓨터-구현 시스템 및 방법
CN114531941A (zh) 多标准区块链协议
WO2023201359A2 (fr) Procédé, contrôleur et support lisible par ordinateur pour détecter l'expiration d'un identifiant cryptographique unique sur un réseau de transfert distribué
Hefny et al. Open banking api framework to improve the online transaction between local banks in egypt using blockchain technology
US20210374843A1 (en) Debt Resource Management in a Distributed Ledger System
WO2021011893A1 (fr) Système de relais pour chaîne de blocs

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20855053

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20855053

Country of ref document: EP

Kind code of ref document: A1