Back to results
US 12,693,998 B2Granted
Systems and methods for implementing a programming model for smart contracts within a decentralized computer network
AssigneePlatonic Holdings, Inc.
InventorsLukasz Dobrek, Adam Krellenstein, Ouziel Slama, Pankaj Surana, Aaron Todd
Life of this patent
Estimating the term…
Abstract
Computer-implemented methods and systems for implementing smart contract modules on a decentralized network are disclosed.
Claims20
A computer-implemented method for implementing smart contracts on a decentralized network, the decentralized network configured to enable peer-to-peer connection amongst a plurality of nodes on the decentralized network, the computer-implemented method comprising:
- executing, in a virtual machine execution environment of a first node of the plurality of nodes, a client-side functionality that (1) includes read access to storage of the first node and (2) excludes write access to the storage of the first node, based on client-side contract logic within a smart contract module of the first node;
- in response to executing the client-side functionality, at the first node of the plurality of nodes:
- retrieving a state of the first node from the storage of the first node, and
- constructing an electronic message including commands that cause, when executed, execution of a server-side functionality of a second node to read from and write to a storage of a the second node of the plurality of nodes;
- sending, to the second node of the plurality of nodes on the decentralized network, the electronic message to cause execution of the server-side functionality of the second node to modify a state of the second node;
- receiving an electronic message (1) from a third node of the plurality of nodes and (2) including commands that cause, when executed, execution of a server-side functionality of the first node to read from and write to the storage of the first node, based on server-side logic within the smart contract module of the first node;
- and
- in response to receiving the electronic message from the third node, executing, in the virtual machine execution environment of the first node, the server-side functionality of the first node to modify the state of the first node.
5 more elements
A non-transitory, processor-readable medium storing instructions that, when executed by a processor, cause the processor to:
- execute a client-side functionality of a smart contract module in a stateless virtual machine execution environment and in response to a request placed via an application programming interface (API), to perform a read-only query of a state stored in a persistent storage volume or a volatile system memory;
- in response to executing the client-side functionality, construct an electronic message that represents a transaction, based on the state determined from executing the client-side functionality, the electronic message further encoding commands that, when executed, cause execution of server-side contract functionality on at least one first node of a decentralized network to read from and write to a storage of at least one additional smart contract module;
- broadcast, on the decentralized network, the electronic message that includes an identifier associated with a server-side functionality to cause execution of the server-side functionality in at least one stateless virtual machine execution environment of the at least one first node of the decentralized network to modify a state of the at least one first node based on the transaction and a state of the storage of the at least one additional smart contract module;
- receive an electronic message (1) from a second node of the decentralized network and (2) including commands that cause, when executed, execution of a server-side functionality of the smart contract module to read from and write to the persistent storage volume or the volatile system memory, based on server-side logic within the smart contract module;
- and
- in response to receiving the electronic message from the second node of the decentralized network, execute, in the stateless virtual machine execution environment, the server-side functionality of the smart contract module to modify the state stored in the persistent storage volume or the volatile system memory.
3 more elements
A method, comprising:
- executing, via a processor, a client-side functionality of a smart contract module in a stateless virtual machine execution environment and in response to a request placed via an application programming interface (API), to perform a read-only query of a state stored in a persistent storage volume or volatile system memory;
- in response to executing the client-side functionality, constructing, via the processor, an electronic message that represents a transaction, based on the state determined from executing the client-side functionality, the electronic message further encoding commands that, when executed, cause execution of server-side contract functionality on at least one first node of a decentralized network to read from and write to a storage of at least one additional smart contract module;
- broadcasting, via the processor and on the decentralized network, the electronic message that include an identifier associated with a server-side functionality to cause execution of the server-side functionality in at least one stateless virtual machine execution environment of the at least one first node of the decentralized network to modify a state of the at least one first node based on the transaction and a state of the storage of the at least one additional smart contract module;
- receiving, at the processor, an electronic message (1) from a second node of the decentralized network and (2) including commands that cause, when executed, execution of a server-side functionality of the smart contract module to read from and write to the persistent storage volume or the volatile system memory, based on server-side logic within the smart contract module;
- and
- in response to receiving the electronic message from the second node of the decentralized network, executing, via the processor and in the stateless virtual machine execution environment, the server-side functionality of the smart contract module to modify the state stored in the persistent storage volume or the volatile system memory.
3 more elements
Dependencies are inferred from the claim text.