Scalable, secure, efficient, and adaptable distributed digital ledger transaction network
Abstract
The present disclosure relates to systems, methods, and non-transitory computer readable storage media for implementing a scalable, secure, efficient, and adaptable distributed digital ledger transaction network. Indeed, the disclosed systems can reduce storage and processing requirements, improve security of implementing computing devices and underlying digital assets, accommodate a wide variety of different digital programs (or “smart contracts”), and scale to accommodate billions of users and associated digital transactions. For example, the disclosed systems can utilize a host of features that improve storage, account/address management, digital transaction execution, consensus, and synchronization processes. The disclosed systems can also utilize a new programming language that improves efficiency and security of the distributed digital ledger transaction network.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A computer-implemented method comprising:
determining a first state data structure of a distributed digital ledger transaction network, wherein the first state data structure represents a current state of the distributed digital ledger transaction network; identifying a plurality of transactions for modifying the current state of the distributed digital ledger transaction network; performing, while maintaining the current state of the distributed digital ledger transaction network, a preliminary execution of the plurality of transactions in parallel relative to the first state data structure; generating an intermediate state data structure by applying a transaction result from the plurality of transactions to the first state data structure while maintaining the current state of the distributed digital ledger transaction network; and modifying the current state of the distributed digital ledger transaction network from the first state data structure to a second state data structure by applying an additional transaction result from the plurality of transactions to the intermediate state data structure.
2 . The computer-implemented method of claim 1 ,
further comprising determining dependencies associated with the plurality of transactions based on performing the preliminary execution of the plurality of transactions in parallel relative to the first state data structure, wherein generating the intermediate state data structure by applying the transaction result to the first state data structure comprises generating the intermediate state data structure by applying the transaction result to the first state data structure based on the dependencies associated with the plurality of transactions.
3 . The computer-implemented method of claim 2 , wherein:
determining the dependencies associated with the plurality of transactions comprises determining that a first transaction from the plurality of transactions is independent from other transactions from the plurality of transactions; and applying the transaction result to the first state data structure based on the dependencies associated with the plurality of transactions comprises applying a first transaction result of the first transaction to the first state data structure based on the first transaction being independent from the other transactions.
4 . The computer-implemented method of claim 3 , wherein:
determining the dependencies associated with the plurality of transactions comprises determining that a second transaction from the plurality of transactions is dependent upon at least one other transaction from the plurality of transactions; and applying the additional transaction result from the plurality of transactions to the intermediate state data structure comprises applying a second transaction result from the second transaction to the intermediate state data structure.
5 . The computer-implemented method of claim 4 , wherein determining that the second transaction is dependent upon the at least one other transaction comprises determining that the second transaction reads a user account that is written to by the at least one other transaction.
6 . The computer-implemented method of claim 1 , wherein modifying the current state of the distributed digital ledger transaction network from the first state data structure to a second state data structure comprises:
storing the second state data structure in temporary storage while maintaining the first state data structure as the current state of the distributed digital ledger transaction network; receiving an indication of consensus with respect to the second state data structure; and modifying, in response to receiving the indication of consensus, the current state from the first state data structure to the second state data structure.
7 . The computer-implemented method of claim 1 , further comprising determining whether each transaction from the plurality of transactions includes a valid signature while maintaining the current state of the distributed digital ledger transaction network based on performing the preliminary execution of the plurality of transactions in parallel relative to the first state data structure.
8 . The computer-implemented method of claim 1 , further comprising determining whether a user account associated with each transaction from the plurality of transactions includes sufficient digital assets to pay a transaction fee while maintaining the current state of the distributed digital ledger transaction network based on performing the preliminary execution of the plurality of transactions in parallel relative to the first state data structure.
9 . A non-transitory computer-readable medium storing instructions thereon that, when executed by at least one processor, cause the at least one processor to:
determine a first state data structure of a distributed digital ledger transaction network, wherein the first state data structure represents a current state of the distributed digital ledger transaction network; identify a plurality of transactions for modifying the current state of the distributed digital ledger transaction network; perform, while maintaining the current state of the distributed digital ledger transaction network, a preliminary execution of the plurality of transactions in parallel relative to the first state data structure; generate an intermediate state data structure by applying a transaction result from the plurality of transactions to the first state data structure while maintaining the current state of the distributed digital ledger transaction network; and modify the current state of the distributed digital ledger transaction network from the first state data structure to a second state data structure by applying an additional transaction result from the plurality of transactions to the intermediate state data structure.
10 . The non-transitory computer-readable medium of claim 9 ,
further comprising instructions that, when executed by the at least one processor, cause the at least one processor to determine dependencies associated with the plurality of transactions based on performing the preliminary execution of the plurality of transactions in parallel relative to the first state data structure, wherein the instructions, when executed by the at least one processor, cause the at least one processor to generate the intermediate state data structure by applying the transaction result to the first state data structure by generating the intermediate state data structure by applying the transaction result to the first state data structure based on the dependencies associated with the plurality of transactions.
11 . The non-transitory computer-readable medium of claim 10 , wherein:
the instructions, when executed by the at least one processor, cause the at least one processor to determine the dependencies associated with the plurality of transactions by determining that a first transaction from the plurality of transactions is independent from other transactions from the plurality of transactions; and applying the transaction result to the first state data structure based on the dependencies associated with the plurality of transactions comprises applying a first transaction result of the first transaction to the first state data structure based on the first transaction being independent from the other transactions.
12 . The non-transitory computer-readable medium of claim 11 , wherein:
the instructions, when executed by the at least one processor, cause the at least one processor to determine the dependencies associated with the plurality of transactions by determining that a second transaction from the plurality of transactions is dependent upon at least one other transaction from the plurality of transactions; and applying the additional transaction result from the plurality of transactions to the intermediate state data structure comprises applying a second transaction result from the second transaction to the intermediate state data structure.
13 . The non-transitory computer-readable medium of claim 12 , wherein determining that the second transaction is dependent upon the at least one other transaction comprises determining that the second transaction reads a user account that is written to by the at least one other transaction.
14 . The non-transitory computer-readable medium of claim 9 , wherein the instructions, when executed by the at least one processor, cause the at least one processor to modify the current state of the distributed digital ledger transaction network from the first state data structure to the second state data structure by:
storing the second state data structure in temporary storage while maintaining the first state data structure as the current state of the distributed digital ledger transaction network; receiving an indication of consensus with respect to the second state data structure; and modifying, in response to receiving the indication of consensus, the current state from the first state data structure to the second state data structure.
15 . The non-transitory computer-readable medium of claim 9 , further comprising instructions that, when executed by the at least one processor, cause the at least one processor to determine whether each transaction from the plurality of transactions includes a valid signature while maintaining the current state of the distributed digital ledger transaction network based on performing the preliminary execution of the plurality of transactions in parallel relative to the first state data structure.
16 . The non-transitory computer-readable medium of claim 9 , further comprising instructions that, when executed by the at least one processor, cause the at least one processor to determine whether a user account associated with each transaction from the plurality of transactions includes sufficient digital assets to pay a transaction fee while maintaining the current state of the distributed digital ledger transaction network based on performing the preliminary execution of the plurality of transactions in parallel relative to the first state data structure.
17 . A system comprising:
at least one processor; and at least one non-transitory computer-readable medium storing instructions thereon that, when executed by the at least one processor, cause the system to:
determine a first state data structure of a distributed digital ledger transaction network, wherein the first state data structure represents a current state of the distributed digital ledger transaction network;
identify a plurality of transactions for modifying the current state of the distributed digital ledger transaction network;
perform, while maintaining the current state of the distributed digital ledger transaction network, a preliminary execution of the plurality of transactions in parallel relative to the first state data structure;
generate an intermediate state data structure by applying a transaction result from the plurality of transactions to the first state data structure while maintaining the current state of the distributed digital ledger transaction network; and
modify the current state of the distributed digital ledger transaction network from the first state data structure to a second state data structure by applying an additional transaction result from the plurality of transactions to the intermediate state data structure.
18 . The system of claim 17 ,
further comprising instructions that, when executed by the at least one processor, cause the system to determine dependencies associated with the plurality of transactions based on performing the preliminary execution of the plurality of transactions in parallel relative to the first state data structure, wherein the instructions, when executed by the at least one processor, cause the system to generate the intermediate state data structure by applying the transaction result to the first state data structure by generating the intermediate state data structure by applying the transaction result to the first state data structure based on the dependencies associated with the plurality of transactions.
19 . The system of claim 18 , wherein:
the instructions, when executed by the at least one processor, cause the system to determine the dependencies associated with the plurality of transactions by determining that a first transaction from the plurality of transactions is independent from other transactions from the plurality of transactions; and applying the transaction result to the first state data structure based on the dependencies associated with the plurality of transactions comprises applying a first transaction result of the first transaction to the first state data structure based on the first transaction being independent from the other transactions.
20 . The system of claim 19 , wherein:
the instructions, when executed by the at least one processor, cause the system to determine the dependencies associated with the plurality of transactions by determining that a second transaction from the plurality of transactions is dependent upon at least one other transaction from the plurality of transactions; and applying the additional transaction result from the plurality of transactions to the intermediate state data structure comprises applying a second transaction result from the second transaction to the intermediate state data structure.Join the waitlist — get patent alerts
Track US2023114827A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.