Converting processes into multiple blockchain smart contracts

US11205178B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11205178-B2
Application numberUS-201715856138-A
CountryUS
Kind codeB2
Filing dateDec 28, 2017
Priority dateDec 28, 2017
Publication dateDec 21, 2021
Grant dateDec 21, 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.

An example operation may include one or more of identifying a workflow specification including a number of entities and state elements, selecting two or more entities designated as a subset of entities among the entities, where the subset of entities share one or more of the state elements of the workflow specification among the state elements, and creating a first smart contract identifying the one or more state elements.

First claim

Opening claim text (preview).

What is claimed is: 1. A method, comprising: receiving, by a processor, a machine-readable workflow specification including a plurality of entities and a plurality of state elements; based on the received machine-readable workflow specification, identifying, by the processor, for a first sub-process, a first entity and a second entity of the plurality of the entities, a first state variable and a second state variable of the plurality of the state elements, and a first access control data, wherein the first access control data comprises a write access of the first state variable and a read access of the second state variable for the first entity, and a read access of the first state variable and a write access of the second state variable for the second entity; based on the received machine-readable workflow specification, identifying, by the processor, for a second sub-process, the second entity and a third entity of the plurality of the entities, the second state variable and a third state variable of the plurality of the state elements, and a second access control data, wherein the second access control data comprises the write access of the second state variable and a read access of the third state variable for the second entity, and a read access of the second state variable and a write access of the third state variable for the third entity; based on the first and second sub-processes, automatically generating, by the processor, for the first sub-process, a first smart contract which comprises the first and second variables, the first and second entities, and a first access rule based on the first access control data, and, for the second sub-process, a second smart contract which comprises the second and third variables, the second and third entities, and a second access rule based on the second access control data, wherein the second smart contract further comprises a subscription to an event of the second state variable of the first contract; storing, by the processor, in a smart contract registry, the event of the first smart contract and the subscription of the second smart contract; deploying, by the processor, the first and second smart contracts on a blockchain node; receiving, by the processor, a request from the second entity to update the second state variable of the first smart contract; determining, by the processor that the second entity has the write access to the second variable of the first contract based on the first access rule; in response to the determining, updating, by the processor, the second state variable of the first smart contract by executing the first smart contract; detecting, by the processor, the event of the second state variable from the first smart contract; generating, by the processor, a notification to the second smart contract based on the detected event of the second state variable of the first contract; and updating, by the processor, the second state variable of the second smart contract by executing the second smart contract based on the second access rule. 2. The method of claim 1 , wherein the generating comprises generating the first smart contract based on a smart contract template. 3. The method of claim 2 , wherein the generating comprises populating the smart contract template with respective state elements of the machine-readable workflow to generate the first smart contract. 4. The method of claim 1 , further comprising storing the first and second smart contracts on a blockchain. 5. The method of claim 1 , wherein the generating comprises generating different access control rules for the first smart contract and the second smart contract. 6. An apparatus, comprising: a processor configured to: receive a machine-readable workflow specification including a plurality of entities and a plurality of state elements; based on the received machine-readable workflow specification, identify, for a first sub-process, a first entity and a second entity of the plurality of the entities, a first state variable and a second state variable of the plurality of the state elements, and a first access control data, wherein the first access control data which comprises a write access of the first state variable and a read access of the second state variable for the first entity, and a read access of the first state variable and a write access of the second state variable for the second entity; based on the received machine-readable workflow specification, identify, for a second sub-process, the second entity and a third entity of the plurality of the entities, the second state variable and a third state variable of the plurality of the state elements, and a second access control data, wherein the second access control data comprises the write access of the second state variable and a read access of the third state variable for the second entity, and a read access of the second state variable and a write access of the third state variable for the third entity; based on the first and second sub-processes, automatically generate, for the first sub-process, a first smart contract-which comprises the first and second variables, the first and second entities, and a first access rule based on the first access control data, and, for the second sub-process, a second smart contract comprises the second and third variables, the second and third entities, and a second access rule based on the second access control data, wherein the second smart contract further comprises a subscription to an event of the second state variable of the first contract; store, in a smart contract registry, the event of the first smart contract and the subscription of the second smart contract; deploy the first and second smart contracts on a blockchain node; receive a request from the second entity to update the second state variable of the first smart contract; determinine that the second entity has the write access to the second variable of the first contract based on the first access rule; in response to the determining, update the second state variable of the first smart contract by executing the first smart contract; detect the event of the second state variable from the first smart contract; generate a notification to the second smart contract based on the detected event of the second state variable of the first contract; and update the second state variable of the second smart contract by executing the second smart contract based on the second access rule. 7. The apparatus of claim 6 , wherein the processor is configured to generate the first smart contract based on a smart contract template. 8. The apparatus of claim 7 , wherein the processor is configured to populate the smart contract template with respective state elements of the machine readable workflow to generate the first smart contract. 9. The apparatus of claim 6 , wherein the processor is further configured to store the first and second smart contracts on a blockchain. 10. The apparatus of claim 6 , wherein the processor is further configured to generate different access control rules for the first smart contract and the second smart contract. 11. A non-transitory computer readable storage medium that stores instructions that, when executed by a processor, cause the processor to perform a method comprising: receiving a machine-readable workflow specification including a plurality of entities and a plurality of state elements; based on the received machine-readable workflow specification, identifying, for a first sub-process, a first entity and a second entity of the plurality of the entities, a first state variable and a second state variable of the plurality of the state elements, and a first access c

Assignees

Inventors

Classifications

  • Workflow analysis · CPC title

  • Legal services · CPC title

  • Use of message hashing · CPC title

  • Business processing using cryptography · CPC title

  • Establishing or using transaction specific rules · 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 US11205178B2 cover?
An example operation may include one or more of identifying a workflow specification including a number of entities and state elements, selecting two or more entities designated as a subset of entities among the entities, where the subset of entities share one or more of the state elements of the workflow specification among the state elements, and creating a first smart contract identifying th…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06Q10/0633. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 21 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 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).