IP Library Granted Patent US 11,734,682
Granted Patent B2
US 11,734,682 · App. 17/901,641 · Granted Aug 22, 2023

Systems and methods for creating multiple records based on an ordered smart contract

Inventors: Ajith Thekadath (San Ramon, CA); Timothy P. Tidwell (San Mateo, CA); Venkata Javaji (Union City, CA); Mondo Jacobs (San Ramon, CA)
Assignee: Visa International Service Association
G06Q20/389G06F16/27G06F21/602H04L9/0637H04L9/30H04L9/3247G06Q20/3825G06Q2220/00H04L9/50
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,734,682
App. No.
17/901,641
Granted
Aug 22, 2023
Kind
B2
Abstract

A method for creating a smart contract detailing an ordered set of events is disclosed. A smart contract can include information about multiple events and responses for each event. The events and response can be arranged in a predefined order. The responses can include adding new records to a blockchain.

Claims (72)

1. A method comprising:

receiving, by an administrative node computer, a smart contract indicating that an ordered set of interactions will take place in response to an ordered set of events, wherein the smart contract indicates that each interaction in the ordered set of interactions corresponds to an event in the ordered set of events, and wherein the smart contract indicates that each interaction in the ordered set of interactions will take place in response to a corresponding event only if the corresponding event occurs within a specific event order;

receiving, by the administrative node computer, a first notification that a first event of the ordered set of events has taken place;

verifying, by the administrative node computer, based on the smart contract, that the first event is supposed to occur first within the ordered set of events;

determining, by the administrative node computer, based on the smart contract, that a first interaction of the ordered set of interactions is to take place in response to the first event;

in response to the first event of the ordered set of events, transmitting, by the administrative node computer, to a second node computer, an instruction to generate a first data package for the first interaction of the ordered set of interactions, wherein the smart contract indicates that the first interaction will take place in response to the first event;

receiving, by the administrative node computer, from the second node computer, the first data package for the first interaction;

generating, by the administrative node computer, a first block for a blockchain, the first block including the first data package for the first interaction;

receiving, by the administrative node computer, a second notification that a second event of the ordered set of events has taken place;

verifying, by the administrative node computer, based on the smart contract, that the second event is supposed to occur second within the ordered set of events; and

determining, by the administrative node computer, based on the smart contract, that a second interaction of the ordered set of interactions is to take place in response to the second event;

in response to the second event of the ordered set of events, transmitting, by the administrative node computer, to the second node computer, an instruction to generate a second data package for the second interaction of the ordered set of interactions, wherein the smart contract indicates that the second interaction will take place in response to the second event;

receiving, by the administrative node computer, from the second node computer, the second data package for the second interaction; and

generating, by the administrative node computer, a second block for the blockchain, the second block including the second data package for the second interaction.

2. The method of claim 1 , wherein the first notification that the first event has taken place is received from a third node computer, wherein the first interaction is between the second node computer and the third node computer, wherein the second notification that the second event has taken place is received from a fourth node computer, and wherein the second interaction is between the second node computer and the fourth node computer.

3. The method of claim 2 , wherein the first event comprises a first task completed by a third user associated with the third node computer, and wherein the second event comprises a second task completed by a fourth user associated with the fourth node computer.

4. The method of claim 1 , wherein the first notification that the first event has taken place is received from a third node computer, wherein the second notification that the second event has taken place is received from a fourth node computer, and further comprising:

receiving, by the administrative node computer, a first digital signature for the first notification that the first event has taken place from the third node computer;

verifying, by the administrative node computer, the first digital signature using a first public key associated with the third node computer, wherein the instruction to generate the first data package is transmitted in response to verifying the first digital signature;

receiving, by the administrative node computer, a second digital signature for the second notification that the second event has taken place from the fourth node computer; and

verifying, by the administrative node computer, the second digital signature using a second public key associated with the fourth node computer, wherein the instruction to generate the second data package is transmitted in response to verifying the second digital signature.

5. The method of claim 1 , wherein the second node computer generates a first digital signature for the first data package, and a second digital signature for the second data package, and further comprising:

receiving, by the administrative node computer, from the second node computer, the first digital signature for the first data package, wherein the first block includes the first digital signature; and

receiving, by the administrative node computer, from the second node computer, the second digital signature for the second data package, wherein the second block includes the second digital signature.

6. The method of claim 1 , wherein the second node computer generates a first digital signature for the smart contract, a second digital signature for the first data package, and a third digital signature for the second data package, and further comprising:

receiving, by the administrative node computer, from the second node computer, the first digital signature for the smart contract;

receiving, by the administrative node computer, from the second node computer, the second digital signature for the first data package, wherein the first block includes the second digital signature; and

receiving, by the administrative node computer, from the second node computer, the third digital signature for the second data package, wherein the second block includes the third digital signature.

7. The method of claim 6 , wherein the second node computer uses a first private key to generate the first digital signature for the smart contract, the second digital signature for the first data package, and the third digital signature for the second data package, and further comprising:

receiving, by the administrative node computer, from a first node computer, an additional digital signature for the smart contract, wherein the first node computer generated the additional digital signature using an additional private key.

8. The method of claim 1 , further comprising:

in response to receiving the first notification that the first event has taken place, marking, by the administrative node computer, the first event as complete; and

before transmitting the instruction to generate the second data package for the second interaction, verifying, by the administrative node computer, that the first event is marked as complete.

9. The method of claim 1 , wherein the first interaction is a first transaction, and the second interaction is a second transaction.

10. The method of claim 9 , wherein the first event is a first service, and the second event is a second service.

11. An administrative node computer, comprising:

a processor; and

a computer readable medium, the computer readable medium comprising code, executable by the processor, for implementing a method comprising:

receiving a smart contract indicating that an ordered set of interactions will take place in response to an ordered set of events, wherein the smart contract indicates that each interaction in the ordered set of interactions corresponds to an event in the ordered set of events, and wherein the smart contract indicates that each interaction in the ordered set of interactions will take place in response to a corresponding event only if the corresponding event occurs within a specific event order;

receiving a first notification that a first event of the ordered set of events has taken place;

verifying, based on the smart contract, that the first event is supposed to occur first within the ordered set of events;

determining, based on the smart contract, that a first interaction of the ordered set of interactions is to take place in response to the first event;

in response to the first event of the ordered set of events, transmitting, to a second node computer, an instruction to generate a first data package for the first interaction of the ordered set of interactions, wherein the smart contract indicates that the first interaction will take place in response to the first event;

receiving, from the second node computer, the first data package for the first interaction;

generating a first block for a blockchain, the first block including the first data package for the first interaction;

receiving a second notification that a second event of the ordered set of events has taken place;

verifying, based on the smart contract, that the second event is supposed to occur second within the ordered set of events; and

determining, based on the smart contract, that a second interaction of the ordered set of interactions is to take place in response to the second event;

in response to the second event of the ordered set of events, transmitting, to the second node computer, an instruction to generate a second data package for the second interaction of the ordered set of interactions, wherein the smart contract indicates that the second interaction will take place in response to the second event;

receiving, from the second node computer, the second data package for the second interaction; and

generating a second block for the blockchain, the second block including the second data package for the second interaction.

12. The administrative node computer of claim 11 , wherein the first notification that the first event has taken place is received from a third node computer, wherein the first interaction is between the second node computer and the third node computer, wherein the second notification that the second event has taken place is received from a fourth node computer, and wherein the second interaction is between the second node computer and the fourth node computer.

13. The administrative node computer of claim 12 , wherein the first event comprises a first task completed by a third user associated with the third node computer, and wherein the second event comprises a second task completed by a fourth user associated with the fourth node computer.

14. The administrative node computer of claim 11 , wherein the first notification that the first event has taken place is received from a third node computer, wherein the second notification that the second event has taken place is received from a fourth node computer, and the method further comprising:

receiving a first digital signature for the first notification that the first event has taken place from the third node computer;

verifying the first digital signature using a first public key associated with the third node computer, wherein the instruction to generate the first data package is transmitted in response to verifying the first digital signature;

receiving a second digital signature for the second notification that the second event has taken place from the fourth node computer; and

verifying the second digital signature using a second public key associated with the fourth node computer, wherein the instruction to generate the second data package is transmitted in response to verifying the second digital signature.

15. The administrative node computer of claim 11 , wherein the second node computer generates a first digital signature for the first data package, and a second digital signature for the second data package, and the method further comprising:

receiving, from the second node computer, the first digital signature for the first data package, wherein the first block includes the first digital signature; and

receiving, from the second node computer, the second digital signature for the second data package, wherein the second block includes the second digital signature.

16. The administrative node computer of claim 11 , wherein the second node computer generates a first digital signature for the smart contract, a second digital signature for the first data package, and a third digital signature for the second data package, and the method further comprising:

receiving, from the second node computer, the first digital signature for the smart contract;

receiving, from the second node computer, the second digital signature for the first data package, wherein the first block includes the second digital signature; and

receiving, from the second node computer, the third digital signature for the second data package, wherein the second block includes the third digital signature.

17. The administrative node computer of claim 11 , further comprising:

in response to receiving the first notification that the first event has taken place, marking the first event as complete; and

before transmitting the instruction to generate the second data package for the second interaction, verifying that the first event is marked as complete.

18. The administrative node computer of claim 11 , wherein the first interaction is a first transaction, and the second interaction is a second transaction.

19. The administrative node computer of claim 18 , wherein the first event is a first service, and the second event is a second service.

20. The administrative node computer of claim 11 , the method further comprising:

in response to receiving the smart contract, transmitting messages to each computer associated with the ordered set of interactions indicating that an interaction will take place if a certain event takes place.

Continuity (4)
Continuation 16928832 · Jul 14, 2020
Continuation 16618776
Provisional Application 62519802 · Jun 14, 2017
Related Publication 20220414653A1 · Dec 29, 2022