IP Library › Granted Patent US 12,072,991
Granted Patent B2
US 12,072,991 · App. 16/792,862 · Granted Aug 27, 2024

Preservation of privacy in large datasets

Inventors: Yedendra Shrinivasan (Yorktown Heights, NY); Krishna Chaitanya Ratakonda (Yorktown Heights, NY); Rak-Joon Choi (Forest Hills, NY)
Assignee: International Business Machines Corporation
G06F21/6209H04L9/0822H04L9/3236H04L9/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 12,072,991
App. No.
16/792,862
Granted
Aug 27, 2024
Kind
B2
Abstract

An example operation may include one or more of receiving, by a file processing node, a document file identification (ID) from a file owner node over a blockchain, acquiring, by the file processing node, a file storage plan executable script and an encrypted symmetric key for the document, decrypting the symmetric key by the file processing node, and executing the file storage plan executable script using the decrypted symmetric key as an input.

Claims (50)

1. A file processing node comprising:

a memory storing instructions; and

a processor configured to execute one or more of the instructions in the memory to cause the processor to:

execute a blockchain consensus process among a plurality of peers of a blockchain network to record a hash of a document, an encrypted storage plan of the document, and an encrypted symmetric key for the document, in a blockchain ledger shared among the plurality of peers;

receive an identifier of the document via the blockchain ledger of the blockchain network, wherein the document comprises a plurality of data chunks stored at a plurality of data stores within a peer to peer (P2P) network of the plurality of peers which are not shared among the plurality of peers;

acquire a file storage plan executable script for the file storage plan of the document and the encrypted symmetric key for the document;

decrypt the encrypted symmetric key for the document to obtain a symmetric key;

validate the symmetric key, the file storage plan, and the document based on the encrypted symmetric key for the document, the encrypted storage plan of the document, and the encrypted document previously recorded to the blockchain ledger;

and

acquire the plurality of data chunks from the plurality of data stores on the P2P network based on execution of the file storage plan executable script on the decrypted symmetric key, reconstruct the document from the plurality of data chunks acquired from the plurality of data stores on the P2P network, respectively, and deliver the document to a computing device.

2. The file processing node of claim 1 , wherein the processor is further configured to:

commit the encrypted storage plan to a world state database of the blockchain ledger; and

validate the file storage plan based on the encrypted storage plan committed to the world state database of the blockchain ledger.

3. The file processing node of claim 1 , wherein the symmetric key is encrypted by a public key of the file processing node.

4. The file processing node of claim 1 , wherein the processor is further configured to:

identify the plurality of data chunks using the identifier of the document in response to the execution of the file storage plan executable.

5. The file processing node of claim 1 , wherein the processor is further configured to:

retrieve the hash of the document from the blockchain ledger and validate the reconstructed document based on the hash.

6. A method, comprising:

executing a blockchain consensus process among a plurality of peers of a blockchain network to record a hash of a document, an encrypted storage plan of the document, and an encrypted symmetric key for the document, in a blockchain ledger shared among the plurality of peers;

receiving an identifier of the document via the blockchain ledger of the blockchain network, wherein the document comprises a plurality of data chunks stored at a plurality of data stores within a peer to peer (P2P) network of the plurality of peers which are not shared among the plurality of peers;

acquiring, by the file processing node, a file storage plan executable script for the file storage plan of the document and the encrypted symmetric key for the document;

decrypting the encrypted symmetric key for the document to obtain a symmetric key;

validating the symmetric key, the file storage plan, and the document based on the encrypted symmetric key for the document, the encrypted storage plan of the document, and the encrypted document previously recorded to the blockchain ledger;

and

acquiring the plurality of data chunks from the plurality of data stores on the P2P network based on execution of the file storage plan executable script based on the plurality of locations read from the file storage plan, reconstructing the document from the plurality of data chunks acquired from the plurality of data stores on the P2P network, respectively, and delivering the document to a computing device.

7. The method of claim 6 , further comprising:

committing the encrypted storage plan to a world state database of the blockchain ledger; and

validating the file storage plan based on the encrypted storage plan committed to the world state database of the blockchain ledger.

8. The method of claim 6 , wherein the symmetric key is encrypted by a public key of the file processing node.

9. The method of claim 6 , further comprising:

identifying the plurality of data chunks using the document identifier in response to the executing the file storage plan executable script.

10. The method of claim 9 , further comprising:

retrieving the hash of the document from the blockchain ledger and validating the reconstructed document based on the hash.

11. A non-transitory computer readable medium comprising one or more instructions that when executed by a processor of a file processing node cause the processor to perform:

executing a blockchain consensus process among a plurality of peers of a blockchain network to record a hash of a document, an encrypted storage plan of the document, and an encrypted symmetric key for the document, in a blockchain ledger shared among the plurality of peers;

receiving an identifier of the document via the blockchain ledger of the blockchain network, wherein the document comprises a plurality of data chunks stored at a plurality of data stores within a peer to peer (P2P) network of the plurality of peers which are not shared among the plurality of peers;

acquiring a file storage plan executable script for the file storage plan of the document and the encrypted symmetric key for the document;

decrypting the encrypted symmetric key for the document to obtain a symmetric key;

validating the symmetric key, the file storage plan, and the document based on the encrypted symmetric key for the document, the encrypted storage plan of the document, and the encrypted document previously recorded to the blockchain ledger;

and

acquiring the plurality of data chunks from the plurality of data stores on the P2P network based on execution of the file storage plan executable script on the decrypted symmetric key, reconstructing the document from the plurality of data chunks acquired from the plurality of data stores on the P2P network, respectively, and delivering the document to a computing device.

12. The non-transitory computer readable medium of claim 11 , wherein the one or more instructions further cause the processor to perform:

committing the encrypted storage plan to a world state database of the blockchain ledger; and

validating the file storage plan based on the encrypted storage plan committed to the world state database of the blockchain ledger.

13. The non-transitory computer readable medium of claim 11 , wherein the symmetric key is encrypted by a public key of a file processing node.

14. The non-transitory computer readable medium of claim 11 , wherein the one or more instructions further cause the processor to perform:

identifying the plurality of data chunks using the document identifier in response to the executing the file storage plan executable script.

15. The non-transitory computer readable medium of claim 14 , wherein the one or more instructions further cause the processor to perform:

retrieving the hash of the document from the blockchain ledger and validating the reconstructed document based on the hash.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2020
From: SHRINIVASAN, YEDENDRA; RATAKONDA, KRISHNA CHAITANYA; CHOI, RAK-JOON
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 051834/0823 →
Continuity (1)
Related Publication 20210256145A1 · Aug 19, 2021
Cited By (1)
US 12,484,034