IP Library Granted Patent US 9,785,369
Granted Patent B1
US 9,785,369 · App. 15/596,922 · Granted Oct 10, 2017

Multiple-link blockchain

Inventors: Giuseppe Ateniese (Hoboken, NJ); Michael T. Chiaramonte (New York, NY); David Treat (Wilmington, MA); Bernardo Magri (Rome, IT); Daniele Venturi (Rome, IT)
Assignees: Accenture Global Solutions Limited; GSC Secrypt, LLC
G06F3/0619G06F3/0622G06F3/0659G06F3/0673H04L9/0637H04L9/0643H04L9/0841H04L9/0894H04L9/14H04L9/30H04L9/3226
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 9,785,369
App. No.
15/596,922
Granted
Oct 10, 2017
Kind
B1
Abstract

A system includes circuitry for rewriting blockchains in a non-tamper-evident or tamper-evident operation using a key secret held by a trusted party. The blockchains may include a series of blocks secured by multiple integrity codes that may prevent non-tamper-evident rewrites by non-trusted parties that are not in possession of the key secret. In some cases, the key may allow valid but tamper-evident rewrites of the blockchain by trusted entities. Further, in some implementations, tamper-evident rewrites may be converted to non-tamper-evident rewrites through multiple-party ratification.

Claims (76)

1. A method comprising:

in a hardware security system:

determining, with processing circuitry, to rewrite original data in a selected block of a blockchain with altered data different than the original data previously stored in the selected block;

identifying a specific block of the blockchain, the specific block comprising: a first integrity output and a second integrity output;

determining, with the processing circuitry and using a first key secret, collision data including the altered data, the collision data:

coding-consistent with the first integrity output; and

coding-inconsistent with the second integrity output, the first and second integrity outputs generated responsive to and coding-consistent with the original data; and

performing, with the processing circuitry, a tamper-evident rewrite of the blockchain by replacing the original data with the collision data.

2. The method of claim 1 , where performing the tamper-evident rewrite coding-consistent with the first integrity output comprises performing a valid rewrite of the blockchain.

3. The method of claim 1 , where performing the tamper-evident rewrite coding-inconsistent with the second integrity output comprises generating a rewrite artifact that marks the blockchain as rewritten.

4. The method of claim 1 , further comprising:

after performing the tamper-evident rewrite of the blockchain, determining to rewrite the collision data with ratification data using a second key secret, the ratification data coding-consistent with the first integrity output and the second integrity output.

5. The method of claim 4 , where:

the ratification data includes the altered data; and

determining to rewrite the collision data with the ratification data comprises determining to perform a multiple trusted-party ratification of the tamper-evident rewrite of the blockchain.

6. The method of claim 1 , further comprising:

generating the first key secret by combining multiple portions of the first key secret in a key secret exchange.

7. The method of claim 6 , where combining the multiple portions comprises combining multiple portions when a count of the multiple portions exceeds a first threshold for valid tamper-evident rewrites.

8. The method of claim 6 , where combining the multiple portions comprises combining multiple portions when a count of the multiple portions exceeds a first threshold for valid tamper-evident rewrites but does not exceed a second threshold for valid non-tamper evident rewrites.

9. A system comprising:

memory;

a blockchain stored within the memory, the blockchain comprising:

a first block comprising original data; and

a second block comprising:

a first integrity output computed using the original data as an input; and

a second integrity output computed using the original data as an input; and

rewrite circuitry configured to:

generate a rewrite artifact in the blockchain by rewriting the first block with altered data different than the original data, the altered data coding-consistent with the first integrity output but coding-inconsistent with the second integrity output.

10. The system of claim 9 , where the rewrite circuitry is configured to generate the rewrite artifact in the blockchain by rewriting the first block with the altered data by performing a valid rewrite of the blockchain.

11. The system of claim 9 , where the rewrite circuitry is further configured to remove the rewrite artifact by rewriting the first block with ratification data using a ratification key secret, the ratification data coding-consistent with the first integrity output and the second integrity output.

12. The system of claim 11 , where:

the ratification data includes the altered data; and

the rewrite circuitry is configured to rewrite the first block with the ratification data by performing a multiple trusted-party rewrite ratification for the blockchain.

13. The system of claim 9 , where the rewrite circuitry is configured to:

rewrite the first block with the altered data using a key secret; and

prior to rewriting the first block with the altered data, generate the key secret by combining multiple portions of the key secret in a key secret exchange.

14. The system of claim 13 , where the rewrite circuitry is configured to combine the multiple portions by combining the multiple portions when a count of the multiple portions exceeds a first threshold for valid tamper-evident rewrites.

15. The system of claim 13 , where the rewrite circuitry is configured to combine the multiple portions by combining the multiple portions when a count of the multiple portions exceeds a first threshold for valid tamper-evident rewrites but does not exceed a second threshold for valid non-tamper evident rewrites coding-consistent with the second integrity output.

16. A method comprising:

in a hardware security system:

accessing a blockchain stored in memory, the blockchain comprising:

a first block comprising original data; and

a second block comprising:

a first integrity output computed using the original data as an input; and

a second integrity output computed using the original data as an input; and

generating, using rewrite circuitry, a rewrite artifact in the blockchain by rewriting the first block with altered data different than the original data, the altered data coding-consistent with the first integrity output but coding-inconsistent with the second integrity output.

17. The method of claim 16 , where generating the rewrite artifact in the blockchain comprises rewriting the first block with the altered data by performing a valid rewrite of the blockchain.

18. The method of claim 16 , further comprising:

removing the rewrite artifact by rewriting the first block with ratification data using a ratification key secret, the ratification data coding-consistent with the first integrity output and the second integrity output.

19. The method of claim 18 , where:

the ratification data includes the altered data; and

rewriting the first block with the ratification data by performing a multiple trusted-party rewrite ratification for the blockchain.

20. The method of claim 16 , where:

rewriting the first block with the altered data comprises rewriting the first block with the altered data using a key secret; and

the method further comprises, generating the key secret by combining multiple portions of the key secret in a key secret exchange prior to rewriting the first block with the altered data.

21. The method of claim 20 , where combining the multiple portions comprises combining multiple portions when a count of the multiple portions exceeds a first threshold for valid tamper-evident rewrites.

22. The method of claim 20 , where combining the multiple portions comprises combining multiple portions when a count of the multiple portions exceeds a first threshold for valid tamper-evident rewrites but does not exceed a second threshold for valid non-tamper evident rewrites coding-consistent with the second integrity output.

23. A product comprising:

a machine-readable medium, other than a transitory signal; and

instructions stored on the machine-readable medium, the instructions configured to, when executed, cause processing circuitry to:

determine to rewrite original data in a selected block of a blockchain with altered data different than the original data previously stored in the selected block;

identify a specific block of the blockchain, the specific block comprising:

a first integrity output and a second integrity output;

determine, using a first key secret, collision data including the altered data, the collision data:

coding-consistent with the first integrity output; and

coding-inconsistent with the second integrity output, the first and second integrity outputs generated responsive to and coding-consistent with the original data; and

perform a tamper-evident rewrite of the blockchain by replacing the original data with the collision data.

24. The product of claim 23 , where the instructions are configured to cause the processing circuitry to perform the tamper-evident rewrite coding-consistent with the first integrity output by performing a valid rewrite of the blockchain.

25. The product of claim 23 , where the instructions are configured to cause the processing circuitry to perform the tamper-evident rewrite coding-inconsistent with the second integrity output by generating a rewrite artifact that marks the blockchain as rewritten.

26. The product of claim 23 , where the instructions are further configured to cause the processing circuitry to determine to rewrite the collision data with ratification data using a second key secret after performing the tamper-evident rewrite of the blockchain, the ratification data coding-consistent with the first integrity output and the second integrity output.

27. The product of claim 26 , where:

the ratification data includes the altered data; and

the instructions are configured to cause the processing circuitry to determine to rewrite the collision data with the ratification data by determining to perform a multiple trusted-party ratification of the tamper-evident rewrite of the blockchain.

28. The product of claim 23 , where the instructions are further configured to cause the processing circuitry to generate the first key secret by combining multiple portions of the first key secret in a key secret exchange.

29. The product of claim 28 , where the instructions are configured to cause the processing circuitry to combine the multiple portions by combining multiple portions when a count of the multiple portions exceeds a first threshold for valid tamper-evident rewrites.

30. The product of claim 28 , where the instructions are configured to cause the processing circuitry to combine the multiple portions by combining multiple portions when a count of the multiple portions exceeds a first threshold for valid tamper-evident rewrites but does not exceed a second threshold for valid non-tamper evident rewrites coding-consistent with the second integrity output.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2018
From: MAGRI, BERNARDO; VENTURI, DANIELE
To: GSC SECRYPT, LLC
Reel/Frame 047134/0154 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 21, 2017
From: ATENIESE, GIUSEPPE
To: GSC SECRYPT, LLC
Reel/Frame 043345/0575 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 21, 2017
From: CHIARAMONTE, MICHAEL T; TREAT, DAVID
To: ACCENTURE GLOBAL SOLUTIONS LIMITED
Reel/Frame 043345/0613 →
Priority Claims (3)
EP 16425044 · May 23, 2016 · regional
EP 16425086 · Aug 11, 2016 · regional
EP 17425018 · Feb 17, 2017 · regional