Method And Apparatus For Execution Of Atomic Transactions
Abstract
The present disclosure relates to methods and systems to settle a transaction involving a plurality of digital assets, comprising receiving a notification of a proposed transaction comprising a plurality of proposed component atomic transactions that atomically transfer at least a portion of the plurality of digital assets from one or more transferring nodes to one or more receiving nodes. The method further comprises at least in part determining or verifying that each transferring and receiving computer node is cryptographically authorized to receive and/or transfer at least some of the plurality of digital assets, and that each transferring and receiving computer node has a sufficient amount of the plurality of digital assets. The method further comprises sending an authorization notification to at least one execution node to transfer the plurality of digital assets from the transferring computer nodes to the receiving computer nodes to settle the proposed transaction.
Claims
exact text as granted — not AI-modified1 . A computer system to settle a transaction that transfers a plurality of digital assets comprising:
a computational node including a processor and memory, the computational node configured to: receive a notification of a proposed transaction, wherein the proposed transaction transfers the plurality of digital assets from one or more transferring computer nodes to one or more receiving computer nodes, each of the transferring computer nodes and receiving computer nodes belonging to a network of nodes that maintain a distributed ledger, the proposed transaction comprising a plurality of proposed component atomic transactions that atomically transfer at least a portion of the plurality of digital assets from the one or more transferring nodes to the one or more receiving nodes; determine at least one digital lock associated with the proposed transaction, wherein when activated the digital lock prevents transfer of any of the plurality of digital assets to any transferring or receiving computer node that is not a participant designated to receive or transfer at least some of the plurality of digital assets for purposes of the proposed transaction;
at least in part determine or verify that:
each transferring and receiving computer node is cryptographically authorized to receive and/or transfer at least some of the plurality of digital assets, and that the digital lock is activated; and
each transferring and receiving computer node involved in the proposed transaction has a sufficient amount of the plurality of digital assets to fulfill all of the transferring or receiving computer node's obligations under each proposed component atomic transaction involving such node; and
based on the verification, send an authorization notification to at least one execution node to cryptographically unlock the activated digital lock and transfer the plurality of digital assets from the transferring computer nodes to the receiving computer nodes to settle the proposed transaction.
2 . A computer system according to claim 1 , wherein the computational node is further configured to determine the plurality of proposed component atomic transactions.
3 . A computer system according to claim 1 , wherein each of the plurality of proposed component atomic transactions is associated with one or more digital locks.
4 . A computer system according to claim 2 or 3 , wherein at least a first of the digital locks associated with the plurality of proposed component atomic transactions, when activated, is operable to prevent transfer of a first subset of the plurality of digital assets in other proposed component atomic transactions.
5 . The computer system according to claim 1 , wherein each of the proposed component atomic transactions, when executed, are configured for recordation in the distributed ledger at the same time.
6 . The computer system according to claim 5 , wherein each of the proposed component atomic transactions, when recorded to the distributed ledger, has a common time stamp.
7 . The computer system according to claim 1 , wherein the computational node or the execution node is further configured to:
schedule the cryptographic unlocking of the activated digital lock to prevent the transfer of any of the plurality of digital assets for purposes other the proposed transaction.
8 . The computer system according to claim 1 , wherein the distributed ledger is a blockchain and the proposed component atomic transactions are recorded on a same block of the blockchain.
9 . The computer system according to claim 1 further comprising:
at least one execution node to:
cryptographically unlock the activated digital lock; and
transfer the plurality of digital assets from the transferring computer nodes to the receiving computer nodes to settle the proposed transaction, wherein the transfer comprises atomically executing all of the proposed component atomic transactions.
10 . The computer system according to claim 1 , wherein the computational node and the execution node share at least one common processor.
11 . A computer-implemented method to facilitate settlement of a transaction involving a plurality of digital assets, the method comprising:
receiving a notification of a proposed transaction, wherein the proposed transaction transfers the plurality of digital assets from one or more transferring computer nodes to one or more receiving computer nodes, each of the transferring computer nodes and receiving computer nodes belonging to a network of nodes that maintain a distributed ledger, the proposed transaction comprising a plurality of proposed component atomic transactions that atomically transfer at least a portion of the plurality of digital assets from the one or more transferring nodes to the one or more receiving nodes; at least in part determining or verifying that:
each transferring and receiving computer node is cryptographically authorized to receive and/or transfer at least some of the plurality of digital assets; and
each transferring and receiving computer node involved in the proposed transaction has a sufficient amount of the plurality of digital assets to fulfill all of the transferring or receiving computer node's obligations under each proposed component atomic transaction involving such node; and
based on the verification, sending an authorization notification to at least one execution node to transfer the plurality of digital assets from the transferring computer nodes to the receiving computer nodes to settle the proposed transaction.
12 . The method of claim 11 , further comprising the steps of:
determining at least one digital lock associated with the proposed transaction, wherein when activated the digital lock prevents transfer of any of the plurality of digital assets to any transferring or receiving computer node that is not a participant designated to receive or transfer at least some of the plurality of digital assets for purposes of the proposed transaction.
13 . The method of claim 11 , wherein the computational node is further configured to:
determine the plurality of proposed component atomic transactions.
14 . The method of claim 13 , wherein the computational node determines the plurality of proposed component atomic transactions by:
mapping a route for the transfer of the plurality of digital assets from the one or more transferring computer nodes to the one or more receiving computer nodes, wherein each transfer of each of the plurality of digital assets from any transferring computer node to any receiving computer node in the network comprises a proposed component atomic transaction.
15 . The method of claim 14 , wherein the computational node determines the route by:
testing connections between transferring computer nodes and receiving computer nodes in the network to determine which nodes support the transfer of the plurality of digital assets.
16 . The method of claim 11 , wherein to at least in part determine or verify that each transferring and receiving computer node has a sufficient amount of the plurality of digital assets comprises:
for a given transferring or receiving computer node that is participant to the proposed transaction:
determining a sum of inbound digital assets that the given node is a participant designated to receive or transfer;
determining a sum of outbound digital assets that the given node is a participant designated to receive or transfer; and
determining a result by subtracting the sum of outbound digital assets from the sum of inbound digital assets.
17 . The method of claim 16 , wherein the result is determined by subtracting the sum of outbound digital assets from the sum of inbound digital assets for digital assets of a same type.
18 . The method of claim 16 , wherein:
when the result is positive or neutral, the computational node determines that the given node has a sufficient amount of the plurality of digital assets.
19 . The method of claim 16 , wherein determining or verifying that each transferring and receiving computer node has a sufficient amount of the plurality of digital assets further comprises the steps of:
determining an initial transferring node of the inbound digital assets to the given node; and determining whether the initial transferring node has a sufficient amount of the inbound digital assets available for transfer to the given node.
20 . The method of claim 16 , wherein determining or verifying that each transferring and receiving computer node has a sufficient amount of the plurality of digital assets further comprises the steps of:
determining one or more initial transferring nodes that have the plurality of digital assets for the proposed transaction; and determining whether the one or more initial transferring node(s) have the respective plurality of digital assets available for transfer to the given node.
21 . A computer-implemented method to facilitate settlement of a transaction involving a plurality of digital assets, wherein the transaction is based on a proposed transaction comprising a plurality of proposed component atomic transactions that each atomically transfer at least some of the plurality of digital assets from one or more transferring computer nodes to one or more receiving computer nodes, wherein each of the transferring computer nodes and receiving computer nodes belong to a network of nodes that maintain a distributed ledger, the method comprising:
receiving an authorization notification to transfer the plurality of digital assets from the transferring computer nodes to the receiving computer nodes to settle a proposed transaction, wherein the authorization notification is based on a verification that:
each transferring and receiving computer node is cryptographically authorized to receive and/or transfer at least some of the plurality of digital assets; and
each transferring and receiving computer node involved in the proposed transaction has a sufficient amount of the plurality of digital assets to fulfil all of the transferring or receiving computer node's obligations under each proposed component atomic transaction involving such node;
determining an authorization to transfer the plurality of digital assets from the transferring computer nodes to the receiving computer nodes; and
based on the authorization, atomically transferring the plurality of digital assets from the transferring computer nodes to the receiving computer nodes to settle the proposed transaction.
22 . A non-transitory computer-readable medium comprising program instructions that, when executed, cause a computer to perform the method of claim 11 .Join the waitlist — get patent alerts
Track US2020356991A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.