Systems and methods for interception of smart contracts

US10984494B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10984494-B2
Application numberUS-201715707571-A
CountryUS
Kind codeB2
Filing dateSep 18, 2017
Priority dateSep 19, 2016
Publication dateApr 20, 2021
Grant dateApr 20, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Intervention in the operation of a smart contract in a distributed ledger system may include: launching execution of the smart contract; upon launching execution of the smart contract, executing a judgment checking function to determine whether a judgment against the smart contract exists in a judgment database; in response to a judgment against the smart contract existing in the judgment database, intervening in the operation of the smart contract to prevent the execution of the smart contract; and in response to no judgment against the smart contract existing in the judgment database, continuing execution of the smart contract.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of intervening in the operation of a smart contract in a distributed ledger system, the method comprising: launching, by a processor of a distributed node of the distributed ledger system, execution of program instructions of the smart contract, the program instructions being stored in a ledger structure of the distributed ledger system; upon launching execution of the smart contract, executing by the processor a judgment checking function of the program instructions of the smart contract to determine whether a judgment against the smart contract exists in a judgment database, wherein the judgment is that the smart contract is illegal or contains a logical error, and wherein the program instructions of the judgment checking function invoke execution of a second smart contract by the processor of the distributed node, the program instructions of the second smart contract being stored in a ledger structure of the distributed ledger system, the execution of the program instructions of the second smart contract performing a read of a data structure in which the second smart contract has stored the judgment database in the distributed ledger system, the invoking of the second smart contract by the program instructions of the smart contract including communicating by the smart contract an input to the second smart contract including an identifier of the smart contract, and receiving by the smart contract an output from the second smart contract indicating whether the judgment against the smart contract exists in the judgment database; in response to a judgment against the smart contract existing in the judgment database, intervening by the program instructions of the smart contract in the operation of the smart contract to prevent further execution of the smart contract by the distributed node, the intervening including executing a first set of the program instructions of the smart contract, the first set of the program instructions including at least one of: (i) a throw function, or (ii) a self destruct function that deletes data of the smart contract from the distributed ledger system; and in response to no judgment against the smart contract existing in the judgment database, continuing execution of the smart contract by the distributed node, the continuing executing including executing a second set of the program instructions of the smart contract, the second set being different than the first set. 2. The method of claim 1 , wherein continuing execution of the smart contract by the distributed node includes at least one of: completing a financial transaction by the smart contract, or identifying an individual by the smart contract. 3. The method of claim 1 , wherein the executing the judgment checking function is performed as a program function of the smart contract. 4. The method of claim 1 , wherein the intervening in the operation of the smart contract includes executing a self destruct function by the smart contract. 5. The method of claim 1 , wherein the executing of the judgment checking function is performed by a virtual machine of a distributed node of the distributed ledger system. 6. The method of claim 5 , wherein the intervening in the operation of the smart contract includes at least one of: preventing execution of the smart contract by the virtual machine, or stopping execution of the smart contract by the virtual machine. 7. The method of claim 1 , wherein executing the judgment checking function includes reading the judgment database in a server system external to the distributed ledger system. 8. The method of claim 7 , wherein the reading the judgment database in the server system includes executing at least one program instruction of the smart contract to trigger the reading the judgment database. 9. The method of claim 7 , wherein the reading the judgment database in the server system is triggered by a virtual machine of the distributed ledger system. 10. The method of claim 1 , further comprising: determining the judgment of a validity of a complaint against the smart contract based on input received from one or more judge systems; in response to the judgment upholding the validity of the complaint against the smart contract, recording the judgment in the judgment database; receiving a request, from the judgment checking function, to determine whether the judgment against the smart contract exists in the judgment database in response to launching execution of the smart contract; and transmitting a response to the request indicating whether the judgment exists in the judgment database. 11. The method of claim 10 , wherein recording the judgment in the judgment database includes generating a transaction addressed to a second smart contract of the distributed ledger system, the transaction containing an instruction to write the judgment and an identifier of the smart contract to a data structure of the second smart contract, and transmitting the transaction to a distributed node of the distributed ledger system. 12. The method of claim 1 , further comprising: determining, by a server system, the judgment that the smart contract is illegal or contains a logical error; recording the judgment in a judgment database, wherein recording the judgment in the judgment database includes generating a transaction addressed to the second smart contract of the distributed ledger system, the transaction containing an instruction to write by the second smart contract the judgment and an identifier of the smart contract to a data structure of the second smart contract stored in the distributed ledger system, and transmitting the transaction to a distributed node of the distributed ledger system; storing, by the second smart contract in response to the transaction, the judgment and identifier of the smart contract in the data structure of the second smart contract in the distributed ledger system; receiving a request, by the second smart contract from the judgment checking function of the program instructions of the smart contract, to determine whether the judgment against the smart contract exists in the judgment database in response to launching execution of the smart contract; and transmitting by the second smart contract a response to the request indicating whether the judgment exists in the judgment database. 13. The method of claim 12 , further comprising receiving, by the server system from the one or more judge systems, input regarding the complaint from one or more judges, and determining the judgment of the validity of the complaint against the smart contract based on the received input. 14. The method of claim 12 , further comprising receiving, by the server system from a complainant system, the complaint regarding the smart contract. 15. The method of claim 12 , wherein the complaint includes an identification of at least one legal rule and at least one assertion that the smart contract violates the identified legal rule. 16. A system, comprising: at least one processor; and at least one non-transitory, machine-readable storage medium having program instructions, which when executed by the at least one processor cause a method for intervening in the operation of a smart contract in a distributed ledger system to be performed, the method including: launching, by a distributed node of the distributed ledger system, execution of program instructions of the smart contract, the program instructions being stored in a ledger structure of the distributed ledger system; upon launching execution of the smart contract, executing a judgment checking function of t

Assignees

Inventors

Classifications

  • Office automation; Time management · CPC title

  • G06Q50/18Primary

    Legal services · CPC title

  • Information retrieval; Database structures therefor; File system structures therefor · CPC title

  • Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines · CPC title

  • involving authentication · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10984494B2 cover?
Intervention in the operation of a smart contract in a distributed ledger system may include: launching execution of the smart contract; upon launching execution of the smart contract, executing a judgment checking function to determine whether a judgment against the smart contract exists in a judgment database; in response to a judgment against the smart contract existing in the judgment datab…
Who is the assignee on this patent?
Refinitiv Us Organization Llc
What technology area does this patent fall under?
Primary CPC classification G06Q50/18. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 20 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).