Registry and automated management method for blockchain-enforced smart contracts
US-2019057382-A1 · Feb 21, 2019 · US
US12361394B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12361394-B2 |
| Application number | US-202418637311-A |
| Country | US |
| Kind code | B2 |
| Filing date | Apr 16, 2024 |
| Priority date | Apr 18, 2016 |
| Publication date | Jul 15, 2025 |
| Grant date | Jul 15, 2025 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method and system are provided to support a decentralized distributed ledger in which transactions are recorded by parties to the transactions without the use of a blockchain. A distributed ledger system provides a protocol framework that supports the development of protocol flows. A protocol flow is computer code that controls the performance of a transaction by the party or parties to the transaction. Protocol flows can be developed for different types of transactions. The distributed ledger system allows transactions to be proposed, accepted, and notarized by a notary and stored without the use of a blockchain ledger. The distributed ledger system can avoid the expense of the computational and storage resources needed to redundantly verify a transaction and store evidence on the many nodes of a blockchain distributed ledger.
Opening claim text (preview).
The invention claimed is: 1. One or more computing systems for proposing a transaction between parties, the computing system comprising: one or more computer-readable storage mediums for storing computer-executable instructions for controlling the one or more computing systems to: propose a transaction between a first computing node of a distributed ledger system and a second computing node of the distributed ledger system by: generating a proposed transaction that specifies a state and an identifier of a notary computing node of the distributed ledger system; signing the proposed transaction with a signature of the first computing node; and sending, via a messaging service, the proposed transaction to the second computing node, the messaging service configured to establish an encryption session with the second computing node; receive, from a notary computing node of the distributed ledger system, a notarized transaction that indicates acceptance of the proposed transaction by the second computing node; and upon verification that the notarized transaction has been signed by the second computing node and the notary computing node, record the notarized transaction in a decentralized storage associated with the distributed ledger system so that the notarized transaction is accessible by the first computing node; and one or more processors for executing the computer-executable instructions stored in the one or more computer-readable storage mediums. 2. The one or more computing systems of claim 1 wherein the decentralized storage allows notarized transactions to be recorded by the computing nodes to the notarized transactions as proof of the notarized transactions without the need for third parties to record the notarized transactions. 3. The one or more computing systems of claim 1 wherein a signature is a hash of a transaction that is signed using a private key of a signer. 4. The one or more computing systems of claim 1 wherein the proposed transaction is between the first computing node, the second computing node, and a third computing node and wherein the computer-executable instructions further control the one or more computing systems to verify that the notarized transaction has been accepted by the third computing node by ensuring that the notarized transaction has been signed by the third computing node. 5. The one or more computing systems of claim 1 wherein the computer-executable instructions further include instructions of a protocol framework that control the one or more computing systems to: generate checkpoints during execution of a protocol flow, each checkpoint including state of the protocol flow at a time corresponding to the checkpoint; and store the checkpoints persistently so that if execution of the protocol flow is suspended, execution can be resumed from a previous checkpoint. 6. The one or more computing systems of claim 5 wherein the generating of the checkpoints is transparent to the protocol flow. 7. The one or more computing systems of claim 1 wherein the computer-executable instructions further include instructions of a protocol framework that control the one or more computing systems to track a status of a protocol flow for reporting to the first computing node. 8. The one or more computing systems of claim 1 wherein the computer-executable instructions further include instructions of a protocol framework that control the one or more computing systems to prior to execution of the instructions of a protocol flow, rewrite the instructions of the protocol flow so that the protocol flow is resumable. 9. The one or more computing systems of claim 1 wherein the proposed transaction includes multiple input states and multiple output states. 10. The one or more computing systems of claim 1 , wherein the state having contract code for verifying the proposed transaction complies with terms of a contract, and wherein the transaction further includes a command as an input parameter to the contract code. 11. The one or more computing systems of claim 10 wherein the command has one or more associated identification of computing nodes and wherein verification of the proposed transaction by the contract code ensures that the proposed transaction has been signed by the identified computing nodes. 12. The one or more computing systems of claim 1 wherein an identification of a computing node is a public key. 13. The one or more computing systems of claim 1 , wherein the state having contract code for verifying the proposed transaction complies with terms of a contract, and wherein the transaction further includes an attachment with content that is accessible by the contract code. 14. The one or more computing systems of claim 1 wherein the one or more processors executes the instructions by executing a virtual machine the executes bytecodes of the instructions. 15. The one or more computing systems of claim 14 wherein the virtual machine is a Java virtual machine. 16. The one or more computing systems of claim 1 wherein the computer-executable instructions further include instructions that control the one or more computing systems to receive a request to provide a notarized transaction on which the proposed transaction depends, retrieve the notarized transaction on which the proposed transaction depends from the decentralized storage, and provide the retrieved notarized transaction to the second computing node. 17. The one or more computing systems of claim 1 wherein the computer-executable instructions further include instructions of a protocol flow to further control the one or more computing systems to request assistance for the protocol flow when an error condition is detected. 18. The one or more computing systems of claim 1 wherein the computer-executable instructions further include instructions of a protocol framework that controls the one or more computing systems to securely and reliably send messages between the first computing node and the second computing node. 19. The one or more computing systems of claim 18 wherein the computer-executable instructions further include instructions of the protocol framework to further control the one or more computing systems to provide receipts to confirm delivery of messages. 20. A method performed by one or more computing systems for proposing a transaction, the method comprising: generating a proposed transaction between a first computing node of a distributed ledger system and a second computing node of the distributed ledger system; sending, via a messaging service, the proposed transaction to the second computing node, the messaging service configured to establish an encryption session with the second computing node; receiving, from a notary computing node of the distributed ledger system, a notarized transaction that indicates acceptance of the proposed transaction by the second computing node; and upon verification that the notarized transaction has been signed by the second computing node and the notary computing node, recording the notarized transaction so that the notarized transaction is accessible by the first computing node. 21. The method of claim 20 wherein the proposing of the transaction is controlled by a protocol flow for proposing a transaction. 22. The method of claim 21 wherein the protocol flow includes originator computer code for controlling proposing a transaction and responder computer code for responding to a proposed transaction. 23. The method o
using hash chains, e.g. blockchains or hash trees · CPC title
using cryptographic hash functions · CPC title
involving time stamps, e.g. generation of time stamps · CPC title
Business processing using cryptography · CPC title
Financial cryptography, e.g. electronic payment or e-cash · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.