IP Library Granted Patent US 10,529,042
Granted Patent B2
US 10,529,042 · App. 15/243,902 · Granted Jan 7, 2020

System and method for managing transactions in dynamic digital documents

Inventors: Richard Gendal Brown (London, GB); Michael Christopher Hearn (Zurich, CH); James William George Carlyle (Winchester, GB)
Assignee: RS LTD.
G06Q50/18G06Q20/02G06Q20/3825G06Q20/3827G06Q40/12H04L9/3247
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 10,529,042
App. No.
15/243,902
Granted
Jan 7, 2020
Kind
B2
Abstract

System and methods for managing dynamic electronic documents on a private distributed ledger comprise establishing a dynamic electronic document comprising a first state object, wherein the state object references a prior approved first transaction; proposing a second transaction comprising as an input the first state object and as an output a transaction command to alter the state object as well as what parameters are required to validate the second transaction; validating the proposed second transaction; and updating the state object on a private distributed ledger to reference the second transaction.

Claims (31)

1. A method performed by a first computing system of a first node of a first entity for ensuring privacy of a dynamic electronic document, the first node being a node of a private distributed ledger, the method comprising:

creating, by the first computing system, a dynamic electronic document having state, having machine-readable instructions of a smart contract for performing permissible actions applicable to the dynamic electronic document, and having identifications of the first entity and a second entity, the first entity and the second entity having permission to access the dynamic electronic document, the dynamic electronic document being signed by the first entity using a private key of the first entity, the dynamic electronic document stored in a first data store of the first entity and a second data store of the second entity such that the first entity and the second entity control access to the dynamic electronic document, the first data store and the second data store being part of the private distributed ledger wherein the private distributed ledger is not a blockchain;

generating, by the first computing system, a proposed change to the state of the dynamic electronic document, the proposed change identifying an output state for the dynamic electronic document and identifying an input state for the dynamic electronic document, the proposed change being signed using the private key of the first entity;

executing, by the first computing system, the machine-readable instructions of the smart contract to validate the proposed change;

sending, by the first computing system, the validated proposed change to a second computing system of a second node of the second entity so that the second computing system can return to the first computing system a signed validated proposed change that is signed by a private key of the second entity, the second node being a node of the private distributed ledger;

sending, by the first computing system, the signed validated proposed change to a verification service to the private distributed ledger to verify that the signed validated proposed change is signed by the first entity and the second entity and that the input state is not in a register of consumed input states maintained by the verification service, to sign the signed validated proposed change to generate a verified proposed change, and to return the verified proposed change to the first computing system;

storing, by the first computing system, the verified proposed change in the first data store to record a new state for the dynamic electronic document; and

sending, by the first computing system, the verified proposed change the second computing system so that the second computing system can store the verified proposed change in the second data store.

2. The method of claim 1 , wherein the dynamic electronic document is not accessible by entities not involved with the dynamic electronic document.

3. The method of claim 1 , wherein the verification service records the input state in the register of consumed input states.

4. The method of claim 1 , wherein the computing system executes the machine-readable instructions of the smart contract using a sandboxed virtual machine.

5. The method of claim 1 , wherein the dynamic electronic document includes a hash of the machine-readable instructions.

6. The method of claim 1 , wherein the verification service ensures uniqueness of the proposed change.

7. The method of claim 6 , wherein the uniqueness is ensured using timestamps of proposed changes.

8. A first computing system of a first node of a first entity for ensuring privacy of a dynamic electronic document, the first node being a node of a private distributed ledger, the first computing system comprising:

one or more computer-readable storage medium storing

a first data store of the first entity that include a dynamic electronic document having state, having machine-readable instructions of a smart contract for performing permissible actions applicable to the dynamic electronic document, and having identifications of the first entity and a second entity, the first entity and the second entity having permission to access the dynamic electronic document, the dynamic electronic document being signed by the first entity using a private key of the first entity, the dynamic electronic document stored in a second data store of the second entity such that the first entity and the second entity control access to the dynamic electronic document, the first data store and the second data store being part of the private distributed ledger wherein the private distributed ledger is not a blockchain;

computer-executable instructions for controlling the computing system to:

generate, by the first computing system, a proposed change to the state of the dynamic electronic document, the proposed change identifying an output state for the dynamic electronic document and identifying an input state for the dynamic electronic document, the proposed change being signed using the private key of the first entity;

executes the machine-readable instructions of the smart contract to validate the proposed change;

send, by the first computing system, the validated proposed change to a second computing system of a second node of the second entity so that the second computing system can return to the first computing system a signed validated proposed change that is signed by a private key of the second entity, the second node being a node of the private distributed ledger;

send, by the first computing system, the signed validated proposed change to a verification service to the private distributed ledger to verify that the signed validated proposed change is signed by the first entity and the second entity and that the input state is not in a register of consumed input states maintained by the verification service, to sign the signed validated proposed change to generate a verified proposed change, and to return the verified proposed change to the first computing system;

store, by the first computing system, the verified proposed change in the first data store to record a new state for the dynamic electronic document; and

send, by the first computing system, the verified proposed change the second computing system so that the second computing system can store the verified proposed change in the second data store; and

one or more processors for executing the computer-executable instructions stored in the one or more computer-readable storage mediums.

9. The first computing system of claim 8 , wherein the dynamic electronic document is not accessible by entities not involved with the dynamic electronic document.

10. The first computing system of claim 8 , wherein the verification service records the input state in the register of consumed input states.

11. The first computing system of claim 8 , wherein the first computing system executes the machine-readable instructions of the smart contract using a sandboxed virtual machine.

12. The first computing system of claim 8 , wherein the dynamic electronic document includes a hash of the machine-readable instructions.

13. The first computing system of claim 8 , wherein the verification service ensures uniqueness of the proposed change.

14. The first computing system of claim 13 , wherein the uniqueness is ensured using timestamps of proposed changes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 14, 2017
From: BROWN, RICHARD GENDAL; HEARN, MICHAEL CHRISTOPHER; CARLYLE, JAMES WILLIAM GEORGE
To: R3 LTD.
Reel/Frame 042012/0625 →
Continuity (2)
Provisional Application 62323952 · Apr 18, 2016
Related Publication 20170300872A1 · Oct 19, 2017
Cited By (8)
US 12,327,285 US 12,346,898 US 12,361,394 US 12,406,312 US 12,443,953 US 12,469,088 US 12,657,585 US 12,667,178