WO2025006847A2 - Conception d'échange crédible par l'intermédiaire d'une règle de séquençage vérifiable - Google Patents
Conception d'échange crédible par l'intermédiaire d'une règle de séquençage vérifiable Download PDFInfo
- Publication number
- WO2025006847A2 WO2025006847A2 PCT/US2024/035970 US2024035970W WO2025006847A2 WO 2025006847 A2 WO2025006847 A2 WO 2025006847A2 US 2024035970 W US2024035970 W US 2024035970W WO 2025006847 A2 WO2025006847 A2 WO 2025006847A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- transactions
- transaction
- ordered
- token
- price
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/02—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION 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
- G06Q2220/00—Business processing using cryptography
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Definitions
- Decentralized financial transactions are typically performed on distributed ledgers (e.g., blockchains), with transactions being made directly between participants or mediated by smart contract programs.
- distributed ledgers e.g., blockchains
- the techniques described herein relate to a computer-implemented method for implementing a verifiable transaction block on an exchange of a liquidity pool of two or more tokens, the computer-implemented method including: receiving transaction information specifying a set of transactions, wherein: transactions of the set of transactions are to be ordered prior to execution, and each of the transactions in the set of transactions indicates a purchase or a sale of at least one token of the two or more tokens; ordering, using a verifiable sequencing rule, the transactions of the set of transactions to obtain a transaction block of ordered transactions; and causing the execution of the ordered transactions.
- the techniques described herein relate to a computer-implemented method, wherein causing the execution of the ordered transactions includes transmitting, from a first computer to a second computer, the transaction block for execution.
- the techniques described herein relate to a computer-implemented method, wherein the verifiable sequencing rule is arranged to ensure that: (i) an execution price of a first transaction of the set of transactions is as good as a standalone price for the first transaction, where the standalone price is a price of the first transaction if the transaction block were to include only the first transaction, (ii) the execution price of the first transaction is worse than the standalone price, but a builder assembling the transaction block does not gain profit from including the first transaction in the transaction block, or (iii) actions by the builder to subvert the verifiable sequencing rule and to gain profit are observable by third parties.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule includes, if the set of transactions includes both purchases and sales: if a current price of a token is equal to an initial price of the token, appending any sale transaction or any purchase transaction in the set of transactions to an end of the ordered transactions in the transaction block; if a current price of a token is less than an initial price of the token, appending any purchase transaction in the set of transactions to an end of the ordered transactions in the transaction block; or if a current price of a token is greater than an initial price of the token, appending any sale transaction in the set of transactions to an end of the ordered transactions in the transaction block.
- the techniques described herein relate to a computer-implemented method, further including, after appending the purchase or sale transaction to the end of the ordered transactions in the transaction block: removing the appended purchase or sale transaction from the set of transactions to obtain an updated set of transactions.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule further includes: if the updated set of transactions includes only one of purchases or sales: appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule further includes, if the updated set of transactions includes both purchases and sales: if a current price of a token is equal to an initial price of the token, appending any sale transaction or any purchase transaction in the updated set of transactions to an end of the ordered transactions in the transaction block; if a current price of a token is less than an initial price of the token, appending any purchase transaction in the updated set of transactions to an end of the ordered transactions in the transaction block; or if a current price of a token is greater than an initial price of the token, appending any sale transaction in the updated set of transactions to an end of the ordered transactions in the transaction block.
- the techniques described herein relate to a computer-implemented method, wherein ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule includes: if the set of transactions includes only one of purchases or 2 12557119.1 Attorney Docket No.: H0776.70157WO00 sales: appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block.
- the techniques described herein relate to a computer-implemented method, wherein ordering the transactions of the set of transactions further includes executing a smart contract, the smart contract being configured to order the transactions of the set of transactions according to the verifiable sequencing rule.
- the techniques described herein relate to at least one non-transitory computer readable medium storing processor-executable instructions that, when executed by at least one processor, cause the at least one processor to perform a method of implementing a verifiable transaction block on an exchange of a liquidity pool of two or more tokens, the method including: receiving transaction information specifying a set of transactions, wherein: transactions of the set of transactions are to be ordered prior to execution, and each of the transactions in the set of transactions indicates a purchase or a sale of at least one token of the two or more tokens; ordering, using a verifiable sequencing rule, the transactions of the set of transactions to obtain a transaction block of ordered transactions; and causing the execution of the ordered transactions.
- the techniques described herein relate to an at least one non-transitory computer readable medium, wherein causing the execution of the ordered transactions includes transmitting, from the at least one processor to another at least one processor, the transaction block for execution.
- the techniques described herein relate to an at least one non-transitory computer readable medium, wherein the verifiable sequencing rule is arranged to ensure that: (i) an execution price of a first transaction of the set of transactions is as good as a standalone price for the first transaction, where the standalone price is a price of the first transaction if the transaction block were to include only the first transaction, (ii) the execution price of the first transaction is worse than the standalone price, but a builder assembling the transaction block does not gain profit from including the first transaction in the transaction block, or (iii) actions by the builder to subvert the verifiable sequencing rule and to gain profit are observable by third parties.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule includes, if the set of transactions includes both purchases and sales: if a current price of a token is equal to an initial price of the token, appending any sale transaction or any purchase transaction in the set of transactions to an end of 3 12557119.1 Attorney Docket No.: H0776.70157WO00 the ordered transactions in the transaction block; if a current price of a token is less than an initial price of the token, appending any purchase transaction in the set of transactions to an end of the ordered transactions in the transaction block; or if a current price of a token is greater than an initial price of the token, appending any sale transaction in the set of transactions to an end of the ordered transactions in the transaction block.
- the techniques described herein relate to an at least one non-transitory computer readable medium, further including, after appending the purchase or sale transaction to the end of the ordered transactions in the transaction block: removing the appended purchase or sale transaction from the set of transactions to obtain an updated set of transactions.
- the techniques described herein relate to an at least one non-transitory computer readable medium, wherein ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule further includes: if the updated set of transactions includes only one of purchases or sales: appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule further includes, if the updated set of transactions includes both purchases and sales: if a current price of a token is equal to an initial price of the token, appending any sale transaction or any purchase transaction in the updated set of transactions to an end of the ordered transactions in the transaction block; if a current price of a token is less than an initial price of the token, appending any purchase transaction in the updated set of transactions to an end of the ordered transactions in the transaction block; or if a current price of a token is greater than an initial price of the token, appending any sale transaction in the updated set of transactions to an end of the ordered transactions in the transaction block.
- the techniques described herein relate to an at least one non-transitory computer readable medium, wherein ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule includes: if the set of transactions includes only one of purchases or sales: appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block.
- the techniques described herein relate to an at least one non-transitory computer readable medium, wherein ordering the transactions of the set of transactions further 4 12557119.1 Attorney Docket No.: H0776.70157WO00 includes executing a smart contract, the smart contract being configured to order the transactions of the set of transactions according to the verifiable sequencing rule.
- the techniques described herein relate to a system for implementing a verifiable transaction block on an exchange of a liquidity pool of two or more tokens, the system including: at least one processor; and at least one non-transitory computer readable medium storing processor-executable instructions that, when executed by the at least one processor, cause the at least one processor to perform a method including: receiving transaction information specifying a set of transactions, wherein: transactions of the set of transactions are to be ordered prior to execution, and each of the transactions in the set of transactions indicates a purchase or a sale of at least one token of the two or more tokens; ordering, using a verifiable sequencing rule, the transactions of the set of transactions to obtain a transaction block of ordered transactions; and causing the execution of the ordered transactions.
- the techniques described herein relate to a system, wherein causing the execution of the ordered transactions includes transmitting, from the at least one processor to another at least one processor, the transaction block for execution.
- the techniques described herein relate to a system, wherein the verifiable sequencing rule is arranged to ensure that: (i) an execution price of a first transaction of the set of transactions is as good as a standalone price for the first transaction, where the standalone price is a price of the first transaction if the transaction block were to include only the first transaction, (ii) the execution price of the first transaction is worse than the standalone price, but a builder assembling the transaction block does not gain profit from including the first transaction in the transaction block, or (iii) actions by the builder to subvert the verifiable sequencing rule and to gain profit are observable by third parties.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule includes, if the set of transactions includes both purchases and sales: if a current price of a token is equal to an initial price of the token, appending any sale transaction or any purchase transaction in the set of transactions to an end of the ordered transactions in the transaction block; if a current price of a token is less than an initial price of the token, appending any purchase transaction in the set of transactions to an end of the ordered transactions in the transaction block; or if a current price of a token is greater than an initial price of the token, appending any sale transaction in the set of transactions to an end of the ordered transactions in the transaction block.
- the techniques described herein relate to a system, wherein ordering the transactions of the set of transactions further includes, after appending the purchase or sale transaction to the end of the ordered transactions in the transaction block: removing the appended purchase or sale transaction from the set of transactions to obtain an updated set of transactions. [0026] In some aspects, the techniques described herein relate to a system, wherein ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule further includes: if the updated set of transactions includes only one of purchases or sales: appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule further includes, if the updated set of transactions includes both purchases and sales: if a current price of a token is equal to an initial price of the token, appending any sale transaction or any purchase transaction in the updated set of transactions to an end of the ordered transactions in the transaction block; if a current price of a token is less than an initial price of the token, appending any purchase transaction in the updated set of transactions to an end of the ordered transactions in the transaction block; or if a current price of a token is greater than an initial price of the token, appending any sale transaction in the updated set of transactions to an end of the ordered transactions in the transaction block.
- the techniques described herein relate to a system, wherein ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule includes: if the set of transactions includes only one of purchases or sales: appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block. [0029] In some aspects, the techniques described herein relate to a system, wherein ordering the transactions of the set of transactions further includes executing a smart contract, the smart contract being configured to order the transactions of the set of transactions according to the verifiable sequencing rule.
- the techniques described herein relate to a computer-implemented method for implementing a verifiable transaction service on a decentralized exchange of a liquidity pool of two or more tokens, the computer-implemented method including: transmitting, from trading computers to one or more building computers, transaction information specifying a 6 12557119.1 Attorney Docket No.: H0776.70157WO00 set of transactions, wherein: transactions of the set of transactions are to be ordered prior to execution, and each of the transactions in the set of transactions indicates a purchase or a sale of at least one token of the two or more tokens; ordering, at each of the one or more building computers and using a verifiable sequencing rule, transactions of the set of transactions to obtain a transaction block of ordered transactions; transmitting, from the one or more building computers to a transmitting computer, ordered transaction blocks; selecting, using the transmitting computer, a transaction block of the ordered transaction blocks; transmitting, from the transmitting computer to an executing computer, the selected transaction block; and executing, using
- the techniques described herein relate to a computer-implemented method, wherein the verifiable sequencing rule is arranged to ensure that: (i) an execution price of a first transaction of the set of transactions is as good as a standalone price for the first transaction, where the standalone price is a price of the first transaction if the transaction block were to include only the first transaction, (ii) the execution price of the first transaction is worse than the standalone price, but a builder assembling the transaction block does not gain from the transaction block, or (iii) actions by the builder to subvert the verifiable sequencing rule and to gain profit are observable by third parties.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule includes, if the set of transactions includes both purchases and sales: if a current price of a token is equal to an initial price of the token, appending any sale transaction or any purchase transaction in the set of transactions to an end of the ordered transactions in the transaction block; if a current price of a token is less than an initial price of the token, appending any purchase transaction in the set of transactions to an end of the ordered transactions in the transaction block; or if a current price of a token is greater than an initial price of the token, appending any sale transaction in the set of transactions to an end of the ordered transactions in the transaction block.
- the techniques described herein relate to a computer-implemented method, further including, after appending the purchase or sale transaction to the end of the ordered transactions in the transaction block: removing the appended purchase or sale transaction from the set of transactions to obtain an updated set of transactions. 7 12557119.1 Attorney Docket No.: H0776.70157WO00 [0034]
- the techniques described herein relate to a computer-implemented method, wherein ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule further includes: if the updated set of transactions includes only one of purchases or sales: appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule further includes, if the updated set of transactions includes both purchases and sales: if a current price of a token is equal to an initial price of the token, appending any sale transaction or any purchase transaction in the updated set of transactions to an end of the ordered transactions in the transaction block; if a current price of a token is less than an initial price of the token, appending any purchase transaction in the updated set of transactions to an end of the ordered transactions in the transaction block; or if a current price of a token is greater than an initial price of the token, appending any sale transaction in the updated set of transactions to an end of the ordered transactions in the transaction block.
- the techniques described herein relate to a computer-implemented method, wherein ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule includes: if the set of transactions includes only one of purchases or sales: appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block. [0037] In some aspects, the techniques described herein relate to a computer-implemented method, wherein ordering the transactions of the set of transactions further includes executing a smart contract, the smart contract being configured to order the transactions of the set of transactions according to the verifiable sequencing rule.
- the techniques described herein relate to a plurality of non-transitory computer readable media storing processor-executable instructions that, when executed by at least one processor, cause the at least one processor to perform a method of implementing a verifiable transaction on a decentralized exchange of a liquidity pool of two or more tokens, the method including: transmitting, from trading computers to one or more building computers, transaction information specifying a set of transactions, wherein: transactions of the set of transactions are to be ordered prior to execution, and each of the transactions in the set of transactions indicates a purchase or a sale of at least one token of the two or more tokens; ordering, at each of the one or 8 12557119.1 Attorney Docket No.: H0776.70157WO00 more building computers and using a verifiable sequencing rule, transactions of the set of transactions to obtain a transaction block of ordered transactions; transmitting, from the one or more building computers to a transmitting computer, ordered transaction blocks; selecting, using the transmitting computer, a transaction block of
- the verifiable sequencing rule is arranged to ensure that: (i) an execution price of a first transaction of the set of transactions is as good as a standalone price for the first transaction, where the standalone price is a price of the first transaction if the transaction block were to include only the first transaction, (ii) the execution price of the first transaction is worse than the standalone price, but a builder assembling the transaction block does not gain from the transaction block, or (iii) actions by the builder to subvert the verifiable sequencing rule and to gain profit are observable by third parties.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule includes, if the set of transactions includes both purchases and sales: if a current price of a token is equal to an initial price of the token, appending any sale transaction or any purchase transaction in the set of transactions to an end of the ordered transactions in the transaction block; if a current price of a token is less than an initial price of the token, appending any purchase transaction in the set of transactions to an end of the ordered transactions in the transaction block; or if a current price of a token is greater than an initial price of the token, appending any sale transaction in the set of transactions to an end of the ordered transactions in the transaction block.
- the techniques further include, after appending the purchase or sale transaction to the end of the ordered transactions in the transaction block: removing the appended purchase or sale transaction from the set of transactions to obtain an updated set of transactions.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule further includes: if the updated set of transactions includes only one of purchases or sales: appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule further includes, if the updated set of transactions includes both purchases and sales: if a current price of a token is equal to an initial price of the 9 12557119.1 Attorney Docket No.: H0776.70157WO00 token, appending any sale transaction or any purchase transaction in the updated set of transactions to an end of the ordered transactions in the transaction block; if a current price of a token is less than an initial price of the token, appending any purchase transaction in the updated set of transactions to an end of the ordered transactions in the transaction block; or if a current price of a token is greater than an initial price of the token, appending any sale transaction in the updated set of transactions to an end of the ordered transactions in the transaction block.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule includes: if the set of transactions includes only one of purchases or sales: appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block. [0045] In some aspects, ordering the transactions of the set of transactions further includes executing a smart contract, the smart contract being configured to order the transactions of the set of transactions according to the verifiable sequencing rule.
- the techniques described herein relate to a distributed system including: a plurality of processors; and a plurality of non-transitory computer readable medium storing processor-executable instructions that, when executed sequentially by each processor of the plurality of processors, cause the plurality of processors to perform a method of implementing a verifiable transaction on a decentralized exchange of a liquidity pool of two or more tokens, the method including: transmitting, from trading computers to one or more building computers, transaction information specifying a set of transactions, wherein: transactions of the set of transactions are to be ordered prior to execution, and each of the transactions in the set of transactions indicates a purchase or a sale of at least one token of the two or more tokens; ordering, at each of the one or more building computers and using a verifiable sequencing rule, transactions of the set of transactions to obtain a transaction block of ordered transactions; transmitting, from the one or more building computers to a transmitting computer, ordered transaction blocks; selecting, using the transmitting computer, a transaction block
- the techniques described herein relate to a distributed system, wherein the verifiable sequencing rule is arranged to ensure that: (i) an execution price of a first transaction of the set of transactions is as good as a standalone price for the first transaction, where the standalone price is a price of the first transaction if the transaction block were to include only the 10 12557119.1 Attorney Docket No.: H0776.70157WO00 first transaction, (ii) an execution price of the first transaction is worse than the standalone price, but a builder assembling the transaction block does not gain profit from including the first transaction in the transaction block, or (iii) actions by the builder to subvert the verifiable sequencing rule and to gain profit are observable by third parties.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule includes, if the set of transactions includes both purchases and sales: if a current price of a token is equal to an initial price of the token, appending any sale transaction or any purchase transaction in the set of transactions to an end of the ordered transactions in the transaction block; if a current price of a token is less than an initial price of the token, appending any purchase transaction in the set of transactions to an end of the ordered transactions in the transaction block; or if a current price of a token is greater than an initial price of the token, appending any sale transaction in the set of transactions to an end of the ordered transactions in the transaction block.
- the techniques described herein relate to a distributed system, wherein ordering the transactions of the set of transactions further includes, after appending the purchase or sale transaction to an end of the ordered transactions in the transaction block: removing the appended purchase or sale transaction from the set of transactions to obtain an updated set of transactions. [0050] In some aspects, the techniques described herein relate to a distributed system, wherein ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule further includes: if the updated set of transactions includes only one of purchases or sales: appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule further includes, if the updated set of transactions includes both purchases and sales: if a current price of a token is equal to an initial price of the token, appending any sale transaction or any purchase transaction in the updated set of transactions to an end of the ordered transactions in the transaction block; if a current price of a token is less than an initial price of the token, appending any purchase transaction in the updated set of transactions to an end of the ordered transactions in the transaction block; or if a current price of a token is greater than an 11 12557119.1 Attorney Docket No.: H0776.70157WO00 initial price of the token, appending any sale transaction in the updated set of transactions to an end of the ordered transactions in the transaction block.
- the techniques described herein relate to a distributed system, wherein ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule includes: if the set of transactions includes only one of purchases or sales: appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block. [0053] In some aspects, the techniques described herein relate to a distributed system, wherein ordering the transactions of the set of transactions further includes executing a smart contract, the smart contract being configured to order the transactions of the set of transactions according to the verifiable sequencing rule.
- the techniques described herein relate to a computer-implemented method for implementing a verifiable transaction block on an exchange of a liquidity pool of two or more tokens, the computer-implemented method including: receiving transaction blocks, each including ordered transactions, wherein: the ordered transactions are to be executed according to an ordering of the transactions, and each of the transactions in the ordered transactions indicates a purchase or a sale of at least one token of the two or more tokens; verifying that the ordered transactions of the received transaction blocks were ordered in compliance with a verifiable sequencing rule; selecting a verified transaction block of the received transaction blocks; and causing the execution of the ordered transactions of the verified transaction block.
- the techniques described herein relate to a computer-implemented method, wherein causing the execution of the ordered transactions includes transmitting, from a first computer to a second computer, the transaction block for execution.
- the techniques described herein relate to a computer-implemented method, wherein the verifiable sequencing rule is arranged to ensure that: (i) an execution price of a first transaction of the ordered transactions is as good as a standalone price for the first transaction, where the standalone price is a price of the first transaction if the transaction block were to include only the first transaction, (ii) an execution price of the first transaction is worse than the standalone price, but a builder assembling the transaction block does not gain profit from including the first transaction in the transaction block, or (iii) actions by the builder to subvert the verifiable sequencing rule and to gain profit are observable by third parties.
- the techniques described herein relate to a computer-implemented method, wherein verifying that the ordered transactions were ordered in compliance with the verifiable sequencing rule includes executing a smart contract, the smart contract being configured to verify that the ordered transactions were ordered in compliance with the verifiable sequencing rule.
- the techniques described herein relate to at least one non-transitory computer readable medium storing processor-executable instructions that, when executed by at least one processor, cause the at least one processor to perform a method of implementing a verifiable transaction block on an exchange of a liquidity pool of two or more tokens, the method including: receiving transaction blocks, each including ordered transactions, wherein: the ordered transactions are to be executed according to an ordering of the transactions, and each of the transactions in the ordered transactions indicates a purchase or a sale of at least one token of the two or more tokens; verifying that the ordered transactions of the received transaction blocks were ordered in compliance with a verifiable sequencing rule; selecting a verified transaction block of the received transaction blocks; and causing the execution of the ordered transactions of the verified transaction block.
- the techniques described herein relate to a system for implementing a verifiable transaction block on an exchange of a liquidity pool of two or more tokens, the system including: at least one processor; and at least one non-transitory computer readable medium storing processor-executable instructions that, when executed by the at least one processor, cause the at least one processor to perform a method including: receiving transaction blocks, each including ordered transactions, wherein: the ordered transactions are to be executed according to an ordering of the transactions, and each of the transactions in the ordered transactions indicates a purchase or a sale of at least one token of the two or more tokens; verifying that the ordered transactions of the received transaction blocks were ordered in compliance with a verifiable sequencing rule; selecting a verified transaction block of the received transaction blocks; and causing the execution of the ordered transactions of the verified transaction block.
- FIG.1A is a schematic diagram illustrating a process for ordering and executing a set of transactions on an exchange, in accordance with some embodiments of the technology described herein.
- FIG.1B is a schematic diagram illustrating a process for ordering and executing a set of transactions on an exchange, in accordance with some embodiments of the technology described herein.
- FIG.1C is a schematic diagram illustrating another process for ordering and executing a set of transactions on an exchange, in accordance with some embodiments of the technology described herein.
- FIG. 2A is a schematic diagram of an illustrative distributed system for executing transactions on an exchange using an auction system, in accordance with some embodiments of the technology described herein.
- FIG. 2B is a schematic diagram of an illustrative distributed system for executing transactions on an exchange, in accordance with some embodiments of the technology described herein.
- FIG.2C is a schematic diagram of another illustrative distributed system for executing transactions on an exchange, in accordance with some embodiments of the technology described herein.
- FIG. 3 is a plot illustrating a liquidity pool of two tokens, in accordance with some embodiments of the technology described herein.
- FIG.4 is a schematic diagram illustrating how the ordering of transactions can cause a miner to profit at a trader’s loss.
- FIG.5 is a schematic diagram illustrating the same set of transactions of FIG.4 when ordered using a verifiable sequencing rule, in accordance with some embodiments of the technology described herein.
- FIG. 1 is a schematic diagram of another illustrative distributed system for executing transactions on an exchange, in accordance with some embodiments of the technology described herein.
- FIG. 3 is a plot illustrating a liquidity pool of two tokens, in accordance with some embodiments of the technology described herein.
- FIG.4 is a schematic diagram illustrating how the ordering of transactions can cause a miner to
- FIG. 6 is a schematic diagram illustrating another example of a set of transactions ordered using a verifiable sequencing rule, in accordance with some embodiments of the technology described herein.
- 14 12557119.1 Attorney Docket No.: H0776.70157WO00
- FIG.7 is a flowchart illustrating a process 700 of ordering a set of transactions using a verifiable sequencing rule, in accordance with some embodiments of the technology described herein.
- FIG. 8 is a flowchart illustrating a process 800 of verifying the ordering of a set of transactions in compliance with a verifiable sequencing rule, in accordance with some embodiments of the technology described herein.
- FIG.9 is a flowchart illustrating a process 900 of building and executing a transaction block of ordered transactions, in accordance with some embodiments of the technology described herein.
- FIG. 10 is a diagram of an illustrative computer system, in accordance with some embodiments.
- FIG.11 is a plot illustrating demand and supply curves for tokens available for sale or purchase on an order book, in accordance with some embodiments of the technology described herein.
- DETAILED DESCRIPTION Provided herein are techniques for executing verifiable transactions on an exchange where builders compose blocks of transactions to be executed on the exchange by selecting the ordering of transactions within the transaction blocks.
- Uniswap has a maximum supply of one billion tokens.
- traders broadcast transactions (e.g., purchases or sales) they wish to execute on the exchange, and builders compose blocks of transactions and select an ordering of execution of those transactions in the block.
- Builders may act on behalf of 15 12557119.1 Attorney Docket No.: H0776.70157WO00 miners or validators who operate the consensus protocol that determines what is written to the blockchain.
- miners, validators, or other entities could be responsible for the composition of blocks. Due to the lack of regulatory framework, it is common for builders or similar parties to exploit their position to front-run trader transactions to obtain MEV.
- Traders may implement countermeasures to mitigate losses caused by MEV, such as setting limit prices or splitting large transactions into multiple smaller transactions.
- trading on exchanges may be improved by modifying the interaction between builders and traders.
- price manipulation by builders may be limited if builders commit to respecting a verifiable sequencing rule which constrains an execution ordering of transactions within a transaction block and if price manipulation can be verified from publicly available information associated with the transactions selected to form a transaction block. Compliance with this rule is verifiable by outside observers such that non-compliant builders may be identified, either manually or automatically (e.g., through the execution of a smart contract).
- the verifiable sequencing rule ensures, for any user transaction ⁇ , that either (i) the execution price of ⁇ is at least as good as if ⁇ was the only transaction in the block (the “standalone” price), (ii) the execution price of ⁇ is worse than the standalone price but the builder does not profit when including ⁇ in the transaction block, or (iii) builder misconduct to subvert the verifiable sequencing rule is observable by third parties.
- the verifiable sequencing rule described herein provides execution price guarantees for traders and improves the user experience of trading on exchanges.
- the techniques described herein improve upon such technology by providing a guarantee that such misconduct is not present and processing multiple transactions in a batch, reducing the overall computational burden of implementing a mitigation strategy. For example, rather than implementing countermeasures to reduce losses, traders can securely request single large transactions instead of splitting a single transaction into many smaller transactions. [0081] As a result, throughput on the exchange will increase because traders will request fewer transactions overall. Additionally, each computational step to write a transaction block to the exchange will include a larger trading volume.
- transaction blocks may include at least 10, 100, 1000, 10,000, 100,000, 500,000, 1,000,000, between 10 and 1000, between 100 and 16 12557119.1 Attorney Docket No.: H0776.70157WO00 100,000, between 2 and 100,000, between 2 and 500,000, and/or between 2 and 1,000,000 transactions, or any other suitable range of transactions within these ranges.
- H0776.70157WO00 100,000, between 2 and 100,000, between 2 and 500,000, and/or between 2 and 1,000,000 transactions, or any other suitable range of transactions within these ranges.
- Such an increase in throughput will also reduce an energy cost per transaction, as a greater volume of trades will be executed in a same computational step.
- a method for ordering transactions to obtain a verifiable transaction block for executing on an exchange is provided.
- the exchange may be a liquidity pool having two or more tokens, in some embodiments.
- the method may include receiving transaction information specifying a set of transactions, and the transactions are to be ordered prior to their execution on the exchange.
- the transactions may also indicate a purchase or a sale on the exchange (e.g., of at least one token, in the example of a liquidity pool).
- the method may also include ordering, using a verifiable sequencing rule, the transactions of the set of transactions to obtain a transaction block of ordered transactions and causing the execution of the ordered transactions.
- causing the execution of the ordered transactions may include transmitting the transaction block for execution from a first computer (e.g., a building computer or a transmitting computer) to a second computer (e.g., an executing computer).
- causing the execution of the ordered transactions may include executing the ordered transactions (e.g., at a same building computer).
- the verifiable sequencing rule may be a rule or set of rules arranged to ensure that builders do not gain profit at the cost of trader execution price from assembling the transaction block if they comply with the verifiable sequencing rule.
- the verifiable sequencing rule may be arranged to ensure that: (i) an execution price of a first transaction of the set of transactions is as good as a standalone price for the first transaction, where the standalone price is a price of the first transaction if the transaction block were to include only the first transaction, (ii) an execution price of the first transaction is worse than the standalone price, but a builder assembling the transaction block does not gain profit from including the first transaction in the transaction block, or (iii) actions by the builder to subvert the verifiable sequencing rule and to gain profit are observable by third parties.
- ordering the transactions using the verifiable sequencing rule to generate a transaction block includes, if the set of transactions includes both purchases and sales and if a current price of a token is less than an initial price of the token, appending any sale transaction in the set of transactions to an end of the ordered transactions in the transaction block.
- ordering the transactions using the verifiable sequencing rule to generate 17 12557119.1 Attorney Docket No.: H0776.70157WO00 a transaction block includes, if the set of transactions includes both purchases and sales and if a current price of a token is greater than an initial price of the token, appending any sale transaction in the set of transactions to an end of the ordered transactions in the transaction block.
- ordering the transactions using the verifiable sequencing rule to generate a transaction block includes, if the set of transactions or the updated set of transactions includes only one of purchases or sales, appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block.
- ordering the transactions to generate a transaction block may comprise executing a smart contract. The smart contract may be configured to order the transactions according to the verifiable sequencing rule.
- a method for verifying the ordering of transactions in a verifiable transaction block is provided.
- the method may include receiving transaction blocks comprising ordered transactions, where the ordered transactions are to be executed according to the ordering of the transactions.
- Each of the transactions in the ordered transactions may indicate a purchase or a sale on the exchange (e.g., of at least one token, in the example of a liquidity pool).
- the method may further include verifying, using the verifiable sequencing rule, that the ordered transactions were ordered in compliance with the verifiable sequencing rule.
- verifying that the ordered transactions were ordered in compliance with the verifiable sequencing rule comprises executing a smart contract.
- the method may include selecting a verified transaction block of the received transaction blocks and causing the execution of the ordered transactions of the verified transaction block.
- a method for implementing a verifiable relay service on an exchange includes transmitting, from a trading computer to one or more building computers, transaction information specifying a set of transactions to be ordered prior to execution. Each of the transactions in the ordered transactions may indicate a purchase or a sale on the exchange (e.g., of at least one token, in the example of a liquidity pool).
- the method may include ordering, at each of the one or more building computers and using a verifiable sequencing rule, transactions of the set of transactions to obtain a transaction block of ordered transactions. Thereafter, the method may include transmitting, from the one or more building computers to a transmitting computer, the ordered transaction blocks.
- the method may include selecting, using 18 12557119.1 Attorney Docket No.: H0776.70157WO00 the transmitting computer, a transaction block of the ordered transaction blocks and transmitting, from the transmitting computer to an executing computer, the selected transaction block. Finally, the method may include executing, using the executing computer, the transaction block.
- FIG.1A is a schematic diagram illustrating a process 100a for ordering and executing a set of transactions on an exchange (e.g., a decentralized exchange, an exchange implemented using an auction system, etc.), in accordance with some embodiments of the technology described herein.
- Trading computers 110-1 through 110-N may be configured to generate transactions ⁇ ⁇ , ⁇ ⁇ , ... , where ⁇ is an integer number.
- Each of the transactions ⁇ ⁇ , ⁇ ⁇ , ... , ⁇ ⁇ may include information indicative of a purchase or sale on the exchange.
- each of the transactions ⁇ ⁇ , ⁇ ⁇ , ... , ⁇ ⁇ may include information indicative of a purchase or sale of at least one token of the liquidated pool.
- each of the transactions ⁇ ⁇ , ⁇ ⁇ , ... , ⁇ ⁇ may indicate the purchase or sale of a stock, security, and/or currency, and the exchange may be a centralized exchange.
- the trading computers 110-1 through 110-N may be computers, computing devices, or distributed computing systems associated with traders acting on the exchange.
- the trading computers may be configured to transmit transactions ⁇ ⁇ , ⁇ ⁇ , ... , ⁇ ⁇ from the trading computers 110-1 through 110-N to building computers 120-1 through 120-M, where ⁇ is an integer that may be equal to or different than the integer ⁇ .
- the building computers 120-1 through 120-M may assemble transaction blocks ⁇ ⁇ , ⁇ ⁇ , ... , ⁇ ⁇ using some or all of the transactions ⁇ ⁇ , ⁇ ⁇ , ... , ⁇ ⁇ .
- the building computers 120-1 through 120-M may also include additional transactions (e.g., transactions that the builders want to execute on the exchange) in the transaction blocks ⁇ ⁇ , ⁇ ⁇ , ... , ⁇ ⁇ . [0094] When assembling the transaction blocks ⁇ ⁇ , ⁇ ⁇ , ... , ⁇ ⁇ , the building computers 120-1 through 120-M may arrange the transactions in any order consistent with a verifiable 19 12557119.1 Attorney Docket No.: H0776.70157WO00 sequencing rule implemented on the exchange.
- the transactions may be ordered to indicate an order of execution on the exchange (e.g., a first transaction in the transaction block may be executed first, a second transaction in the transaction block may be executed second after the first transaction is executed, etc.).
- the building computers 120-1 through 120-M may be single computers and/or computing devices or may be distributed computing systems performing multiparty computation.
- a building computer of the building computers 120-1 through 120-M may build a transaction block using multiple, communicatively coupled processors housed separately from one another.
- the building computers 120-1 through 120-M may transmit the transaction blocks ⁇ ⁇ , ⁇ ⁇ , ... , ⁇ ⁇ to a transmitting computer 130.
- the transmitting computer 130 may be configured to verify that the ordering of transactions in each of the transaction blocks ⁇ ⁇ , ⁇ ⁇ , ... , ⁇ ⁇ complies with the verifiable sequencing rule.
- the transmitting computer 130 may be a computer, a computing device, or a distributed computing systems associated with transmitters (e.g., relays, auctions, or other services) acting on the exchange.
- the transmitting computer 130 may be additionally configured to select a transaction block for execution (e.g., acting as a relay or an auctioneer in an auction service).
- the transmitting computer 130 could combine more than one transaction block into a single transaction block.
- the transmitting computer 130 may then transmit the selected or combined transaction block to executing computer 140 for execution.
- the executing computer 140 may be a computer, a computing device, or a distributed computing systems associated with executors (e.g., validators, miners, or others executing transactions) acting on the exchange. [0098]
- the executing computer 140 may be configured to execute the selected transaction block.
- the executing computer 140 may be a proof of work miner, a proof of stake miner, or a validator.
- the executing computer 140 may be configured to execute the selected transaction block by completing a computational step configured to add a new block or blocks to the blockchain representing the exchange.
- the executing computer 140 may be configured to execute the selected transaction block by executing a smart contract on the blockchain representing the exchange. Alternatively, in some embodiments 20 12557119.1 Attorney Docket No.: H0776.70157WO00 the executing computer 140 may execute the transactions of the transaction block on a centralized exchange. [0099] In some embodiments, the process 100a of FIG.1A may be performed using a system 200a as illustrated by FIG.2A.
- the system 200a includes trading computers 110-1 through 110- N, building computers 120-1 through 120-M, transmitting computer 130, and executing computer 140. Each of these computers is communicatively coupled by communications network 250.
- the communications network 250 may be a local network (e.g., a local area network (LAN), wide area network (WAN), or intranet) or an open network (e.g., the internet).
- LAN local area network
- WAN wide area network
- intranet open network
- open network e.g., the internet
- Such networks may be based on any suitable technology and may operate according to any suitable protocol and may include wireless networks, wired networks or fiber optic networks.
- FIG. 1B is a schematic diagram illustrating an alternative process 100b for ordering and executing a set of transactions on an exchange, in accordance with some embodiments of the technology described herein.
- trading computers 110-1 through 110- N may be configured to generate transactions ⁇ ⁇ , ⁇ ⁇ , ... , In process 100b, however, trading computers 110-1 through 110-N may be configured to transmit transactions ⁇ ⁇ , ⁇ ⁇ , ... , ⁇ ⁇ , to a single building computer 120-1.
- the single building computer 120-1 may be configured to generate the transaction block ⁇ by arranging the transactions in any order consistent with a verifiable sequencing rule implemented on the exchange.
- the transactions may be ordered to indicate an order of execution on the exchange (e.g., a first transaction in the transaction block may be executed first, a second transaction in the transaction block may be executed second after the first transaction is executed, etc.).
- the single building computer 120-1 may be a single computer and/or computing device or may be a distributed computing system performing multiparty computation.
- the building computer 120-1 may build the transaction block ⁇ using multiple, communicatively coupled processors housed separately from one another.
- the single building computer 120-1 may be configured to transmit the transaction block ⁇ to the executing computer 140 for execution of the ordered transactions in the transaction block ⁇ .
- the executing computer 140 may be configured to verify that the ordering of the transactions in the transaction block ⁇ complies with the verifiable sequencing rule and/or to execute the transaction block ⁇ on the exchange. 21 12557119.1 Attorney Docket No.: H0776.70157WO00 [0104]
- the executing computer 140 may be a proof of work miner, a proof of stake miner, or a validator.
- the executing computer 140 may be configured to execute the selected transaction block by completing a computational step configured to add a new block or blocks to the blockchain representing the exchange.
- the executing computer 140 may be configured to execute the selected transaction block by executing a smart contract on the blockchain representing the exchange.
- the executing computer 140 may execute the transactions of the transaction block on a centralized exchange. In some embodiments, the executing computer 140, prior to executing the selected transaction block, may verify that the ordering of the transactions in the selected transaction block complies with the verifiable sequencing rule. For example, the executing computer 140 may use a smart contract to verify that the ordering of the transactions complies with the verifiable sequencing rule. [0105] In some embodiments, the process 100b of FIG.1B may be performed using a system 200b as illustrated by FIG.2B. The system 200b includes trading computers 110-1 through 110- N, a building computer 120-1, and executing computer 140. Each of these computers is communicatively coupled by communications network 250.
- the communications network 250 may be a local network (e.g., a local area network (LAN), wide area network (WAN), or intranet) or an open network (e.g., the internet).
- LAN local area network
- WAN wide area network
- intranet open network
- open network e.g., the internet
- Such networks may be based on any suitable technology and may operate according to any suitable protocol and may include wireless networks, wired networks or fiber optic networks.
- FIG. 1C is a schematic diagram illustrating an alternative process 100c for ordering and executing a set of transactions on an exchange, in accordance with some embodiments of the technology described herein.
- trading computers 110-1 through 110- N may be configured to generate transactions ⁇ ⁇ , ⁇ ⁇ , ... , In process 100c, however, trading computers 110-1 through 110-N may be configured to transmit transactions ⁇ ⁇ , ⁇ ⁇ , ... , ⁇ ⁇ , to a single building and executing computer 150.
- the building and executing computer 150 may be configured to generate the transaction block ⁇ by ordering the transactions ⁇ ⁇ , ⁇ ⁇ , ... , ⁇ ⁇ in any order consistent with a verifiable sequencing rule implemented on the exchange.
- the building and executing computer 150 may also be configured to, after generating the transaction block ⁇ , execute the transaction block ⁇ on the exchange.
- the building and executing computer 150 may be a computer, a computing device, or a distributed computing system performing multiparty computation.
- the building and executing computer 150 may build and/or execute the transaction block ⁇ using multiple, communicatively coupled processors housed separately from one another.
- the building and executing computer 150 may be a proof of work miner, a proof of stake miner, or a validator.
- the building and executing computer 150 may be configured to execute the selected transaction block by completing a computational step configured to add a new block or blocks to the blockchain representing the exchange.
- the building and executing computer 150 may be configured to execute the transaction block ⁇ by executing a smart contract on the blockchain representing the exchange. Alternatively, in some embodiments the building and executing computer 150 may execute the transactions of the transaction block on a centralized exchange.
- the process 100c of FIG.1C may be performed using a system 200c as illustrated by FIG.2C.
- the system 200c includes trading computers 110-1 through 110- N and a building and executing computer 150. Each of these computers is communicatively coupled by communications network 250.
- the communications network 250 may be a local network (e.g., a local area network (LAN), wide area network (WAN), or intranet) or an open network (e.g., the internet).
- Such networks may be based on any suitable technology and may operate according to any suitable protocol and may include wireless networks, wired networks or fiber optic networks.
- the process 100c of FIG. 1C may be implemented on a centralized exchange.
- the centralized exchange may be, for example, running an order book including bids and asks.
- the process 100c may be implemented on such a centralized exchange by matching bids and asks on the order book according to the verifiable sequencing rule described herein.
- a buy order ⁇ ( ⁇ , ⁇ ) signals the intent to purchase up to ⁇ units of token one at a maximum price of ⁇ per unit, where the price is denominated in units of token two.
- a sell order ⁇ ( ⁇ , ⁇ ) signals the intent to sell up to ⁇ units of token one at a minimum price of ⁇ per unit, where the price is denominated in units of token two.
- An order book exchange has a state, ⁇ , representing the set of buys and sells in the order book.
- a match is valid if ⁇ ′ ⁇ ⁇ ⁇ ⁇ ⁇ (e.g., the price is at least the limit price for the seller and at most the limit price of the buyer).
- a valid match results in the following transfer of assets, as well as updates to the state ⁇ : 1. Transfer ⁇ ! ⁇ , ⁇ ′ ⁇ token one units from the owner of ⁇ ( ⁇ ′, ⁇ ′) to the owner of ⁇ ( ⁇ , ⁇ ). 2. Transfer ⁇ ! ⁇ , ⁇ ′ ⁇ ⁇ ⁇ ⁇ token two units from the owner of ⁇ ( ⁇ , ⁇ ) to the owner of ⁇ ( ⁇ ′, ⁇ ′). 3. Replace ⁇ ( ⁇ , ⁇ ) with ⁇ ( ⁇ ⁇ ⁇ ! ⁇ , ⁇ ′ ⁇ , ⁇ ) in ⁇ . The new buy order has the same owner as the old buy order. 4.
- a sequencing rule is a function that takes any state ⁇ and outputs a valid matching sequence.
- a sequencing rule using a batch auction and censorship- resistant order book, may be implemented to generate a verifiable order book.
- An order book is “censorship-resistant” if whenever ⁇ is the result of tampering (e.g., the adding or removing of transactions to a sequence ⁇ ⁇ consisting of only transactions owned by traders), then ⁇ ⁇ ⁇ ⁇ . That is, a sequencer can add but not remove transactions from a censorship-resistant order book.
- FIG. 11 illustrates an example of a demand curve, .( ⁇ ), and supply curve, ⁇ ( ⁇ ), where the demand curve illustrates the amount of token one that buyers in ⁇ would purchase as a function of price, ⁇ , and the supply curve illustrates the amount of token one that sellers in ⁇ would sell as a function of price, ⁇ .
- the sequencing protocol may be arranged so that a network of agents agree about which transactions enter the order book state rather than being arranged to determine the global clock time for when a transaction enters the order book state.
- a protocol is preferable due to inherent latency in any communication network (e.g., different agents will receive transactions at different times and orders).
- Assumptions include that traders communicate with the exchange via a communication network where any message from a sender eventually reaches the designated receiver and that for each transaction ⁇ a trader wishes to include into the order book ⁇ , ⁇ will eventually enter the order book state ⁇ .
- each agent e.g., a verifier, sequencer, or external observer
- Each agent has a local view of the order book. Initially, each local view of the order book is empty.
- the trader may broadcast ⁇ to every agent by some known deadline. Once a verifier 5 + receives ⁇ , then 5 + broadcasts an acknowledgement of ⁇ to every agent.
- the agent then adds 25 12557119.1 Attorney Docket No.: H0776.70157WO00 ⁇ to their local view of the order book.
- the sequencer may then pick a matching sequence ⁇ for their local view, ⁇ , of the order book.
- ⁇ may be verified as valid by: 1. 5 + votes that ⁇ is valid if and only if ⁇ is equal to 5 + ’s local view of the order book. 2.
- ⁇ is considered valid if, and only if, the strict majority of the verifiers vote that ⁇ is valid.
- the procedure to check that M is valid requires the strict majority of participants to be honest by following the above procedure.
- a mechanism that allows any external observer to check whether the strict majority are honest may be provided. Whenever the external observer receives a transaction ⁇ , the observer broadcasts the transaction ⁇ to all verifiers. If ⁇ does not enter the order book in the observer’s view, then most verifiers are dishonest. Therefore, if the strict majority of nodes are not honest, any external observer can detect that most verifiers are dishonest. [0122] Returning to the processes of FIGs.
- these processes may be implemented on a decentralized exchange that is a liquidity pool of two or more tokens.
- a liquidity pool liquidity providers lock capital in reserves of tokens to be traded.
- An example of a decentralized exchange using a liquidity pool is Uniswap. [0123] Let be the number of tokens of a first kind and 8 ⁇ be the number of tokens of a second kind in a liquidity pool of two tokens.
- the product ⁇ 8 ⁇ defines the potential corresponding to a current state of the exchange.
- some decentralized exchanges using a liquidity pool charge a fee to implement transactions.
- ⁇ is a constant and ⁇ ⁇ 1.
- the builder implements the trader’s transaction to also purchase a number ⁇ of token 1, further raising the price of token 1.
- the builder can implement their own transaction ⁇ ? to sell a number ⁇ of token 1 at a higher price than the builder purchased token 1 in transaction ⁇ ⁇ .
- the builder makes a profit in what is known as a “sandwich attack.”
- @ AB4 or @ CDEE are empty sets: add the remaining transactions of the non-empty set of @ AB4 or @ CDEE to ⁇ in any order.
- the verifiable sequencing rule may be arranged to require appending only any @ in @ AB4 or only any @ in @ CDEE to ⁇ .
- part (1) of the above verifiable sequencing rule states that, if there are both purchase and sale transactions in the set of available transactions and a current price of a token is equal to an initial price of the token (or, alternatively, if the current reserves of a 27 12557119.1 Attorney Docket No.: H0776.70157WO00 token are equal to the initial reserves of the token), the next transaction block may be any of the purchase or sale transactions in the set of available transactions. The selected purchase or sale transaction that is appended to the transaction block may then be removed from the set of available transactions.
- the next transaction added to the transaction block should be any of the purchase transactions in the set of available transactions.
- the purchase transaction that is appended to the transaction block may then be removed from the set of available transactions.
- a current price of a token is greater than an initial price of the token (or, alternatively, if the current reserves of a token are less than the initial reserves of the token)
- the next transaction to be added to the transaction block should be any of the sale transactions in the set of available transactions.
- the sale transaction that is appended to the transaction block may then be removed from the set of available transactions.
- Part (2) of the above verifiable sequencing rule states that, if the set of available transactions includes only purchases or only sales, then the remaining transactions of the available transactions may be appended to the transaction block in any order.
- the verifiable sequencing rule may be arranged to ensure the following possibility theorem: (i) an execution price of a first transaction of the set of transactions is as good as a standalone price for the first transaction, where the standalone price is a price of the first transaction if the transaction block were to include only the first transaction, (ii) the execution price of the first transaction is worse than the standalone price, but a builder assembling the transaction block does not gain profit from including the first transaction in the transaction block, or (iii) actions by the builder to subvert the verifiable sequencing rule and to gain profit are observable by third parties.
- FIG. 5 is an illustration of the same set of transactions of FIG. 4 when executed in accordance with a transaction order determined using a verifiable sequencing rule, in accordance with some embodiments of the technology described herein.
- the set of purchase transactions, @ AB4 includes transactions ⁇ ⁇ and ⁇ ? , each of size one
- the set of sale transactions, @ CDEE includes only transaction ⁇ ⁇ , also of size one.
- any transaction in @ AB4 or @ CDEE may be initially appended to the transaction block ⁇ . Therefore, any of transactions ⁇ ⁇ , ⁇ ⁇ , or ⁇ ? may be ordered as the first transaction in the transaction block ⁇ .
- FIG. 6 is a schematic diagram illustrating another example of a set of transactions ordered using a verifiable sequencing rule, in accordance with some embodiments of the technology described herein. (a purchase of two units of a first token), ⁇ ⁇ (a sale of one unit of the first token), and ⁇ J (a sale of one unit of the first token) are transactions added to the transaction block by a builder while ⁇ ?
- @ AB4 and @ CDEE both initially include three transactions such that the verifiable sequencing rule allow for a selection of any @ in @ AB4 or @ CDEE to be appended to the transaction block ⁇ and to thereafter remove the selected @ from @ AB4 or @ CDEE .
- the builder may therefore include their purchase ⁇ ⁇ as the first transaction in the block. After this first 29 12557119.1 Attorney Docket No.: H0776.70157WO00 transaction, the token 1 reserves will decrease to 8 ⁇ ⁇ 2 ⁇ 8 ⁇ , where 8 ⁇ denotes the initial reserves of the first token, and the verifiable sequencing rule requires that the second transaction in the transaction block ⁇ be selected from @ CDEE .
- the builder may place any of ⁇ ⁇ , ⁇ ? , or ⁇ J as the second transaction in the transaction block ⁇ . In the example of FIG.6, the builder selected ⁇ ⁇ to be the second transaction.
- the token 1 reserves will be ⁇ 1 ⁇ 8 ⁇ , such that the verifiable sequencing rule requires that the third transaction in the transaction block ⁇ be selected from @ CDEE .
- the builder may therefore place either of ⁇ ? or ⁇ J as the third transaction in the transaction block ⁇ .
- the builder selected a trader’s transaction ⁇ ? to be the third transaction in the transaction block ⁇ .
- the token 1 reserves will be back at their initial value of 8 ⁇ .
- the verifiable sequencing rule therefore allows the fourth transaction of the transaction block ⁇ be selected from the remaining transactions in @ AB4 or @ CDEE .
- ⁇ K , ⁇ L , or ⁇ J could be placed as the fourth transaction in the transaction block ⁇ .
- the builder selected transaction ⁇ K the token 1 reserves are returned to 8 ⁇ ⁇ 2 ⁇ 8 ⁇ , and the verifiable sequencing rule requires that the fifth transaction in the transaction block ⁇ be selected from @ CDEE .
- the only remaining transaction in @ CDEE is ⁇ J , which is added as the fifth transaction in the transaction block ⁇ .
- @ CDEE is now empty, and the verifiable sequencing rule requires that any remaining transactions of the non-empty set of @ AB4 be appended to the transaction block ⁇ .
- FIG.7 is a flowchart illustrating a process 700 of ordering a set of transactions using a verifiable sequencing rule, in accordance with some embodiments of the technology described herein.
- the process 700 may be executed using any suitable computing device.
- the process 700 may be performed by a single computing device.
- the process 700 may be performed by a distributed computing system comprising one or more processors co-located with each other (e.g., in a same room, a same facility) or remote from one another and communicatively coupled via the internet.
- the process 700 may be executed using any one of the building computers 110-1 through 110-N or building and executing computer 150, described in connection with FIGs.1A- 2C herein.
- the process 700 may begin with an act 702 of receiving transaction information specifying a set of transactions.
- the transactions may be generated, for example, by one or more remote computers and transmitted by a communications network (e.g., communications network 250) to the computer implementing the process 700.
- a communications network e.g., communications network 250
- Each of the transactions may indicate a purchase or a sale on the exchange.
- each of the transactions in the set of received transactions may indicate a purchase or a sale of at least one token on an exchange having a liquidity pool of two or more tokens.
- the process 700 may proceed to an act 704 of ordering, using a verifiable sequencing rule, the transactions of the set of transactions to obtain a transaction block of ordered transactions.
- the verifiable sequencing rule may be arranged to ensure adherence to the possibility theorem discussed herein.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule may include appending any purchase or sale transaction in the set of transactions to an end of the ordered transactions in the transaction block if the available set of transactions includes both purchases and sales and if a current price of a token is equal to an initial price of the token (or alternatively, if the current reserves of the token are equal to the initial reserves of the token).
- ordering the transactions in the transaction block using the verifiable sequencing rule may include appending any purchase 31 12557119.1 Attorney Docket No.: H0776.70157WO00 transaction in the set of transactions to an end of the ordered transactions in the transaction block if the set of transactions includes both purchases and sales and if a current price of a token is less than an initial price of the token (or alternatively, if the current reserves of the token are greater than the initial reserves of the token).
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule may include appending any sale transaction in the set of transactions to an end of the ordered transactions in the transaction block if the set of transactions includes both purchases and sales and if a current price of a token is greater than an initial price of the token (or alternatively, if the current reserves of the token are less than the initial reserves of the token).
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule may include appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block if the initial or updated set of transactions includes only one of purchases or sales.
- the appended purchase or sale transaction may be removed from the set of transactions to obtain an updated set of transactions after the purchase or sale is appended to the transaction block.
- ordering the transactions of the set of transactions may include executing a smart contract.
- the smart contract may be arranged to order the transactions according to the verifiable sequencing rule.
- the process 700 may proceed to an act 706 of causing the execution of the ordered transactions.
- Causing the execution of the ordered transactions may include transmitting the transaction block from the computer implementing the process 700 to another computer (e.g., to a transmitting computer 130 or an executing computer 140 as described in connection with FIGs.1A-1B and 2A-2B herein) configured to further transmit or execute the transaction block.
- causing the execution of the ordered transactions may alternatively include executing the transactions of the transaction block at the computer implementing the process 700.
- FIG. 8 is a flowchart illustrating a process 800 of verifying the ordering of a set of transactions using a verifiable sequencing rule, in accordance with some embodiments of the technology described herein.
- the process 800 may be executed using any suitable computing device.
- the process 800 may be performed by a single 32 12557119.1 Attorney Docket No.: H0776.70157WO00 computing device.
- the process 800 may be performed by a distributed computing system comprising one or more processors co-located with each other (e.g., in a same room, a same facility) or remote from one another and communicatively coupled via the internet.
- the process 800 may be executed using transmitting computer 130 described in connection with FIGs.1A-1B and 2A-2B herein.
- process 800 may begin with an act 802 of receiving transaction blocks.
- the transaction blocks may include ordered transactions, where the ordered transactions are to be executed according to the ordering of the transactions in the transaction blocks.
- the transaction blocks may be generated, for example, by one or more remote computers (e.g., building computers 110-1 through 110-N) and transmitted by a communications network (e.g., communications network 250) to the computer implementing the process 700.
- Each of the transactions of the ordered transactions may indicate a purchase or a sale on the exchange.
- each of the transactions in the ordered transactions may indicate a purchase or a sale of at least one token on an exchange having a liquidity pool of two or more tokens.
- process 800 may proceed to an act 804 of verifying that the ordered transactions of the received transaction blocks were ordered in compliance with the verifiable sequencing rule described herein.
- process 800 may proceed to an act 806 of selecting a verified transaction block of the received transaction blocks.
- the transmitting computer e.g., transmitting computer 130
- 33 12557119.1 Attorney Docket No.: H0776.70157WO00 may be selected in any suitable way.
- process 800 may proceed to an act 808 of causing the execution of the ordered transactions of the verified transaction block.
- Causing the execution of the ordered transactions may include transmitting the transaction block from the computer implementing the process 800 to another computer (e.g., to an executing computer 140 as described in connection with FIGs. 1A-1B and 2A-2B herein) configured to execute the transaction block.
- causing the execution of the ordered transactions may alternatively include executing the transactions of the transaction block at the computer implementing the process 800.
- FIG.9 is a flowchart illustrating a process 900 of building and executing a transaction block of ordered transactions, in accordance with some embodiments of the technology described herein.
- the process 900 may be executed using any suitable computing devices.
- the process 900 may be performed by a distributed computing system comprising one or more processors co-located with each other (e.g., in a same room, a same facility) or remote from one another and communicatively coupled via the internet.
- the process 900 may be executed using the systems described in connection with FIGs.1A and 2A herein.
- process 900 may begin with an act 902 of transmitting, from a trading computer to one or more building computers, transaction information specifying a set of transactions.
- the transactions may be generated, for example, by one or more remote trading computers (e.g., trading computers 110-1 through 110-N) and transmitted by a communications network (e.g., communications network 250) to building computers (e.g., building computers 120- 1 through 120-M or building and executing computer 150).
- a communications network e.g., communications network 250
- building computers e.g., building computers 120- 1 through 120-M or building and executing computer 150.
- Each of the transactions may indicate a purchase or a sale on the exchange.
- each of the transactions in the set of received transactions may indicate a purchase or a sale of at least one token on an exchange having a liquidity pool of two or more tokens.
- process 900 may proceed to an act 904 of ordering the received transactions at each of the one or more building computers and using a verifiable sequencing rule.
- Ordering the transactions may generate transaction blocks of ordered transactions.
- the verifiable sequencing rule may be arranged to ensure adherence of the ordered transactions to the possibility theorem discussed herein.
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule may include appending any purchase or sale 34 12557119.1 Attorney Docket No.: H0776.70157WO00 transaction in the set of transactions to an end of the ordered transactions in the transaction block if the available set of transactions includes both purchases and sales and if a current price of a token is equal to an initial price of the token (or alternatively, if the current reserves of the token are equal to the initial reserves of the token).
- ordering the transactions in the transaction block using the verifiable sequencing rule may include appending any purchase transaction in the set of transactions to an end of the ordered transactions in the transaction block if the set of transactions includes both purchases and sales and if a current price of a token is less than an initial price of the token (or alternatively, if the current reserves of the token are greater than the initial reserves of the token).
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule may include appending any sale transaction in the set of transactions to an end of the ordered transactions in the transaction block if the set of transactions includes both purchases and sales and if a current price of a token is greater than an initial price of the token (or alternatively, if the current reserves of the token are less than the initial reserves of the token).
- ordering the transactions of the set of transactions in the transaction block using the verifiable sequencing rule may include appending, in any order, any remaining transactions of the set of transactions to an end of the ordered transactions of the transaction block if the initial or updated set of transactions includes only one of purchases or sales.
- the appended purchase or sale transaction may be removed from the set of transactions to obtain an updated set of transactions after the purchase or sale is appended to the transaction block.
- ordering the transactions of the set of transactions may include executing a smart contract. The smart contract may be arranged to order the transactions according to the verifiable sequencing rule.
- process 900 may proceed to an act 906 of transmitting, from the one or more building computers to a transmitting computer, ordered transaction blocks.
- the one or more building computers may transmit the transaction blocks to the transmitting computer (e.g., transmitting computer 130) using a communications network (e.g., communications network 250).
- a communications network e.g., communications network 250.
- process 900 may proceed to an act 908 of selecting, using the transmitting computer, a transaction block of the ordered transaction blocks.
- selecting the transaction block may include verifying that the received transaction blocks comply with the verifiable sequencing rule.
- F 1,2, ... ,
- process 900 may proceed to an act 910 of transmitting, from the transmitting computer to an executing computer, the selected transaction block.
- the transmitting computer e.g., transmitting computer 130
- may transmit the selected transaction block to an executing computer e.g., executing computer 140
- a communications network e.g., communications network 250
- act 910 may be optional and act 912 may be performed by a same computer as the computer performing act 908 (e.g., building and executing computer 150).
- process 900 may proceed to an act 912 of executing the transaction block using the executing computer.
- the executing computer may be a proof of work miner, a proof of stake miner, or a validator.
- the executing computer may be configured to execute the selected transaction block by completing a computational step configured to add a new block or blocks to the blockchain representing the exchange.
- the executing computer may be configured to execute the selected transaction block by executing a smart contract on the blockchain representing the exchange.
- the executing computer may execute the transactions of the transaction block on a centralized exchange. 36 12557119.1 Attorney Docket No.: H0776.70157WO00 [0165]
- FIG. 10 is a diagram of an illustrative computer system on which embodiments described herein may be implemented.
- FIG. 10 An illustrative implementation of a computer system 1000 that may be used in connection with any of the embodiments of the disclosure provided herein is shown in FIG. 10. In some embodiments, any one of the processes described herein may be implemented on and/or using the computer system 1000.
- the computer system 1000 may include one or more processors 1010 and one or more articles of manufacture that comprise tangible (e.g., non-transitory) computer-readable storage media (e.g., memory 1020 and one or more non- volatile storage media 1030).
- the processor 1010 may control writing data to and reading data from the memory 1020 and the non-volatile storage device 1030 in any suitable manner.
- the processor 1010 may execute one or more processor-executable instructions stored in one or more non-transitory computer-readable storage media (e.g., the memory 1020), which may serve as non-transitory computer-readable storage media storing processor-executable instructions for execution by the processor 1010.
- A. Mathematical Background [0166] Lemma A.1 (AM-GM Inequality). Let 1 ⁇ , 1 ⁇ , ... , 1 6 ⁇ 0. Then: [0167] Theorem A.1 (Intermediate Value Theorem). Let S be a real-valued continuous function with domain, dom(S), equal to the interval [W, X].
- a real-valued function f is convex if and only if epi(f ) is a convex set. [0173] Proof. Consider the case where S is convex. Let (1 ⁇ , ⁇ ), ...
- a real-valued function S is convex if dom(S) is a convex set, and for all 1, ⁇ ⁇ dom(S), and all _ ⁇ [0,1]: S ( _ ⁇ 1 + ( 1 ⁇ _ ) ⁇ ⁇ ) ⁇ _ ⁇ S ( 1 ) + ( 1 ⁇ _ ) ⁇ S ( ⁇ ) .
- Lemma B.2. Let w be strictly increasing and quasiconcave. Then there is a bijective convex function S that generates level set 0 ⁇ (w). [0187] Proof. Applying Lemma B.1 with strictly increasing function w implies the existence of a bijective function S that generates 0 ⁇ (w).
- Claim epi(S) ⁇ ⁇ (w) for superlevel set ⁇ ⁇ (w).
- S be the convex function that generates the set of reachable states 0 ⁇ (w) (Lemma B.2).
- BUY( ⁇ , ⁇ ) can successfully execute at 8 & .
- the fact that 8, 8& ⁇ 0 (w) and BUY( ⁇ , ⁇ ) can successf & ⁇ ully execute at 8 implies 8 ⁇ , 8 ⁇ , 8 ⁇ ⁇ ⁇ ⁇ dom(S)(Observation C.1).
- Note 8& ⁇ ⁇ ⁇ is a point between 8 ⁇ ⁇ ⁇ and 8& ⁇ and thus the convexity of dom(S) implies 8 ⁇ & ⁇ ⁇ ⁇ dom(S).
- SELL( ⁇ , ⁇ ) can successfully execute at 8 & then SELL( ⁇ , ⁇ ) can also successfully execute at 8 (Lemma C.1). From the Pricing Lemma (Lemma 2.2): xg8, SELL ( ⁇ ) h ⁇ xg8 & , SELL ( ⁇ ) h. This proves that SELL( ⁇ , ⁇ ) receives a better execution at X than 8 & . [0206] Proof of Theorem 5.1. First, consider the case where the token 1 reserves at 8 are smaller than those at 8 & . From Corollary C.1, any sell order receives a better execution at 8 than 8 & . Second, consider the case where the token 1 reserves at 8 are larger than at 8 & .
- One or more aspects and embodiments of the present disclosure involving the performance of processes or methods may utilize program instructions executable by a device (e.g., a computer, a processor, or other device) to perform, or control performance of, the processes or methods.
- a device e.g., a computer, a processor, or other device
- inventive concepts may be embodied as a computer readable storage medium (or multiple computer readable storage media) (e.g., a computer memory, one or more floppy discs, compact discs, optical discs, magnetic tapes, flash memories, circuit configurations in Field Programmable Gate Arrays or other semiconductor devices, or other tangible computer storage medium) encoded with one or more programs that, when executed on one or more computers or other processors, perform methods that implement one or more of the various embodiments described above.
- the computer readable medium or media can be transportable, such that the program or programs stored thereon can be loaded onto one or more different computers or other processors to implement various ones of the aspects described above.
- computer readable media may be tangible (e.g., non-transitory) computer readable media.
- the computer readable media may comprise a persistent memory.
- program or “software” are used herein in a generic sense to refer to any type of computer code or set of computer-executable instructions that can be employed to program a computer or other processor to implement various aspects as described above.
- one or more computer programs that when executed perform methods of the present disclosure need not reside on a single computer or processor but may be distributed in a modular fashion among a number of different computers or processors to implement various aspects of the present disclosure.
- Computer-executable instructions may be in many forms, such as program modules, executed by one or more computers or other devices.
- program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types.
- the functionality of the program modules may be combined or distributed as desired in various embodiments. 44 12557119.1 Attorney Docket No.: H0776.70157WO00
- data structures may be stored in computer-readable media in any suitable form.
- data structures may be shown to have fields that are related through location in the data structure. Such relationships may likewise be achieved by assigning storage for the fields with locations in a computer-readable medium that convey relationship between the fields.
- any suitable mechanism may be used to establish a relationship between information in fields of a data structure, including through the use of pointers, tags or other mechanisms that establish relationship between data elements.
- the software code can be executed on any suitable processor or collection of processors, whether provided in a single computer or distributed among multiple computers.
- a computer may be embodied in any of a number of forms, such as a rack-mounted computer, a desktop computer, a laptop computer, a quantum computer, or a tablet computer, as non-limiting examples.
- a computer may be embedded in a device not generally regarded as a computer but with suitable processing capabilities, including a Personal Digital Assistant (PDA), a smartphone, or any other suitable portable or fixed electronic device.
- PDA Personal Digital Assistant
- a computer may have one or more input and output devices. These devices can be used, among other things, to present a user interface. Examples of output devices that can be used to provide a user interface include printers or display screens for visual presentation of output and speakers or other sound generating devices for audible presentation of output.
- Examples of input devices that can be used for a user interface include keyboards, and pointing devices, such as mice, touch pads, and digitizing tablets.
- a computer may receive input information through speech recognition or in other audible formats.
- Such computers may be interconnected by one or more networks in any suitable form, including a local area network or a wide area network, such as an enterprise network, and intelligent network (IN) or the Internet.
- networks may be based on any suitable technology and may operate according to any suitable protocol and may include wireless networks, wired networks or fiber optic networks.
- some aspects may be embodied as one or more methods. The acts performed as part of the method may be ordered in any suitable way.
- embodiments may be constructed in which acts are performed in an order different than illustrated, which may 45 12557119.1 Attorney Docket No.: H0776.70157WO00 include performing some acts simultaneously, even though shown as sequential acts in illustrative embodiments. [0217] All definitions, as defined and used herein, should be understood to control over dictionary definitions, definitions in documents incorporated by reference, and/or ordinary meanings of the defined terms.
- references to “A and/or B,” when used in conjunction with open-ended language such as “comprising” can refer, in one embodiment, to A only (optionally including elements other than B); in another embodiment, to B only (optionally including elements other than A); in yet another embodiment, to both A and B (optionally including other elements); etc.
- the phrase “at least one,” in reference to a list of one or more elements, should be understood to mean at least one element selected from any one or more of the elements in the list of elements, but not necessarily including at least one of each and every element specifically listed within the list of elements and not excluding any combinations of elements in the list of elements.
- This definition also allows that elements may optionally be present other than the elements specifically identified within the list 46 12557119.1 Attorney Docket No.: H0776.70157WO00 of elements to which the phrase “at least one” refers, whether related or unrelated to those elements specifically identified.
- “at least one of A and B” can refer, in one embodiment, to at least one, optionally including more than one, A, with no B present (and optionally including elements other than B); in another embodiment, to at least one, optionally including more than one, B, with no A present (and optionally including elements other than A); in yet another embodiment, to at least one, optionally including more than one, A, and at least one, optionally including more than one, B (and optionally including other elements); etc.
- the terms “approximately” and “about” may be used to mean within ⁇ 20% of a target value in some embodiments, within ⁇ 10% of a target value in some embodiments, within ⁇ 5% of a target value in some embodiments, within ⁇ 2% of a target value in some embodiments.
- the terms “approximately” and “about” may include the target value.
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Sont proposés des systèmes et des procédés permettant de mettre en œuvre un bloc de transaction vérifiable sur un échange, le bloc de transaction vérifiable comprenant des transactions (par exemple, des achats et/ou des ventes) qui doivent être exécutées sur l'échange conformément à un ordonnancement des transactions. Les techniques proposées comprennent l'ordonnancement, à l'aide d'une règle de séquençage vérifiable, des transactions de l'ensemble de transactions pour obtenir un bloc de transaction de transactions ordonnées, et l'exécution des transactions ordonnées. Les transactions peuvent indiquer un achat et/ou une vente d'au moins un jeton parmi au moins deux jetons sur une réserve de liquidités.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202363511141P | 2023-06-29 | 2023-06-29 | |
| US63/511,141 | 2023-06-29 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2025006847A2 true WO2025006847A2 (fr) | 2025-01-02 |
| WO2025006847A3 WO2025006847A3 (fr) | 2025-04-17 |
Family
ID=93940020
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2024/035970 Ceased WO2025006847A2 (fr) | 2023-06-29 | 2024-06-28 | Conception d'échange crédible par l'intermédiaire d'une règle de séquençage vérifiable |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2025006847A2 (fr) |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10891535B1 (en) * | 2014-08-19 | 2021-01-12 | Next Level Derivatives Llc | Secure multi-server stabilized data packet exchange systems |
| US10438290B1 (en) * | 2018-03-05 | 2019-10-08 | Winklevoss Ip, Llc | System, method and program product for generating and utilizing stable value digital assets |
| US11042935B2 (en) * | 2019-01-02 | 2021-06-22 | Chicago Mercantile Exchange Inc. | Spread price scaling for implied trade matching |
| US11288736B1 (en) * | 2019-04-02 | 2022-03-29 | Homium, LLC | Blockchain-based shared appreciation note |
| US11334950B1 (en) * | 2019-07-15 | 2022-05-17 | Innovator Capital Management, LLC | System and method for managing data for delivering a pre-calculated defined investment outcome in an exchange-traded fund |
-
2024
- 2024-06-28 WO PCT/US2024/035970 patent/WO2025006847A2/fr not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| WO2025006847A3 (fr) | 2025-04-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11488245B2 (en) | Derivative contracts that settle based on transaction data | |
| US11348107B2 (en) | Virtual payment processing system | |
| EP4148642B1 (fr) | Dispositifs, systèmes et procédés pour faciliter les transferts de faible valeur de confiance et de valeur zéro | |
| US10504178B2 (en) | System for physically delivering virtual currencies | |
| US20190080411A1 (en) | Derivative contracts that settle based on a virtual currency difficulty factor or an index of virtual currency generation yield | |
| US20180218176A1 (en) | System and method of creating an asset based automated secure agreement | |
| CA2732004C (fr) | Produits et processus de distribution d'ordres | |
| US20210110474A1 (en) | Blockchain-Based Method, Apparatus, and System to Accelerate Transaction Processing | |
| US20150221034A1 (en) | Pricing a Swap Financial Product Using a Non-Par Value | |
| US10380589B2 (en) | Virtual payment processing system | |
| US20130041799A1 (en) | Pricing a Forward Rate Agreement Financial Product Using a Non-Par Value | |
| US8473402B2 (en) | Perpetual futures contracts with periodic reckonings | |
| US8626640B2 (en) | System and method for implementing and managing bundled option box futures | |
| WO2025006847A2 (fr) | Conception d'échange crédible par l'intermédiaire d'une règle de séquençage vérifiable | |
| US20150278951A1 (en) | Futures Contracts with Minimum Position Limit Approaching Delivery Period | |
| US20150112844A1 (en) | Futures Contracts with Divergent Trading and Delivery Units | |
| US11080785B1 (en) | Listed options position compression system | |
| US20110302070A1 (en) | Systems and Methods for Netting of Transactions | |
| US20150112846A1 (en) | Futures Contracts Settlement Method with Option to Roll Forward | |
| HK40091419A (en) | Devices, systems, and methods for facilitating low trust and zero trust value transfers | |
| US20130124358A1 (en) | Method to Create a Secondary Market (Exchange) Using a Web Auction to Price Annuity Payments | |
| US20170076374A1 (en) | Trading interest rate swaps on a yield basis on a futures exchange | |
| Grody et al. | Next Generation Niche Markets |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| NENP | Non-entry into the national phase |
Ref country code: DE |