IP Library Granted Patent US 11,973,857
Granted Patent B2
US 11,973,857 · App. 16/862,356 · Granted Apr 30, 2024

Data archive

Inventors: Anuj Kumar Garg (Ghaiziabad, IN); Himanshu Gupta (New Delhi, IN); Mukesh Kumar Mohania (Waramanga, AU); Neeraj Kumar Gupta (Gurugram, IN)
Assignee: Kyndryl, Inc.
H04L9/0637H04L9/3297
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,973,857
App. No.
16/862,356
Granted
Apr 30, 2024
Kind
B2
Abstract

An example operation includes one or more of identifying, by an archiving server node, a unique archival policy for each of a plurality of blockchain nodes, executing, by the archiving server node, a consensus mechanism to determine at least one block from a plurality of blocks of the plurality of the blockchain nodes to be archived, and running the unique archival policy to archive the at least one block from the plurality of the blocks.

Claims (58)

1. An archiving node in a blockchain network, the archiving node comprising:

a memory comprising a blockchain ledger of the blockchain network; and

a processor coupled to the memory and configured to:

identify a plurality of unique archival policies of a plurality of blockchain nodes of the blockchain network, wherein at least a subset of unique archival policies of the plurality of the unique archival policies comprises archival requirements that are unique to a respective blockchain node from among the plurality of blockchain nodes based on one or more of time, storage remaining, or performance;

identify a set of blocks previously recorded on the blockchain ledger which are to be archived based on common archival requirements shared among at least the subset of the plurality of the unique archival policies;

generate an archive block that includes block hashes of the set of blocks which are to be archived and a hash of a previous block;

archive the set of blocks to a secondary storage based on the common archival requirements; and

commit the archive block to the blockchain ledger in sequence with the previous block.

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

periodically execute an archiving process on the blockchain ledger to identify blocks to be archived based on the common archival requirements shared among at least the subset of the plurality of the unique archival policies.

3. The archiving node of claim 1 , wherein the processor is further configured to:

identify the set of blocks to be archived based on an intersection of the plurality of data archival policies within the plurality of the unique archival policies of the plurality of blockchain nodes.

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

execute a smart contract to identify the plurality of the unique archival policies.

5. The archiving node of claim 4 , wherein the processor is further configured to:

execute the smart contract to identify the set of blocks to be archived.

6. The archiving node of claim 1 , wherein the processor is further configured to:

store the set of blocks in a secondary storage that is different than the blockchain; and

store the block hashes of the set of blocks in a Merkle tree within the archive block.

7. The archiving node of claim 1 , wherein the processor is further configured to:

execute a time-bound consensus mechanism based on an archiving interval defined in a genesis block of the blockchain ledger.

8. A method, comprising:

storing a blockchain ledger of a blockchain network in a memory;

identifying, by an archiving node, a plurality of unique archival policies of a plurality of blockchain nodes of the blockchain network, wherein at least a subset of unique archival policies of the plurality of the unique archival policies comprises archival requirements Hall that are unique to a respective blockchain node from among the plurality of blockchain nodes based on one or more of time, storage remaining, or performance;

identifying, by the archiving node, a set of blocks previously recorded on the blockchain ledger which are to be archived based on common archival requirements shared among at least the subset of the plurality of the unique archival policies;

generating an archive block that includes block hashes of the set of blocks which are to be archived and a hash of a previous block;

archiving, by the archiving node, the set of blocks based on the common archival requirements; and

committing the archive block to the blockchain ledger in sequence with the previous block.

9. The method of claim 8 , further comprising:

periodically executing an archiving process on the blockchain ledger to identify the set of blocks to be archived based on the common archival requirements shared among at least the subset of the plurality of the unique archival policies.

10. The method of claim 8 , wherein the identifying the set of blocks to be archived further comprises:

identifying the set of blocks to be archived based on an intersection of data archival policies within the plurality of the unique archival policies of the plurality of blockchain nodes.

11. The method of claim 8 , further comprising:

executing a smart contract to identify the plurality of the unique archival policies.

12. The method of claim 11 , further comprising:

executing the smart contract to identify the set of blocks to be archived.

13. The method of claim 8 , further comprising:

storing the block hashes of the set of blocks in a Merkle tree within the archive block.

14. The method of claim 8 , further comprising:

executing a time-bound consensus mechanism based on an archiving interval defined in a genesis block of the blockchain ledger.

15. A non-transitory computer readable medium comprising one or more instructions that when executed by a processor of an archiving node in a blockchain network cause the processor to perform:

storing a blockchain ledger of the blockchain network in a memory;

identifying a plurality of unique archival policies of a plurality of blockchain nodes of the blockchain network, wherein at least a subset of unique archival policies of the plurality of the unique archival policies comprises archival requirements that are unique to a respective blockchain node from among the plurality of blockchain nodes based on one or more of time, storage remaining, or performance;

identifying a set of blocks previously recorded on the blockchain ledger which are to be archived based on common archival requirements shared among at least the subset of the plurality of the unique archival policies;

generating an archive block that includes block hashes of the set of blocks which are to be archived and a hash of a previous block;

archiving the set of blocks to a secondary storage based on the unique archival policy to the blockchain common archival requirements; and

committing the archive block to the blockchain ledger in sequence with the previous block.

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

periodically executing an archiving process on the blockchain ledger to identify blocks to be archived based on the common archival requirements shared among at least the subset of the plurality of the unique archival policies.

17. The non-transitory computer readable medium of claim 15 , wherein the identifying the set of blocks to be archived further comprises

identifying the set of blocks to be archived based on an intersection of data archival policies within the plurality of the unique archival policies of the plurality of blockchain nodes.

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

executing a smart contract to identify the plurality of the unique archival policies.

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

executing the smart contract to identify the set of blocks to be archived.

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

storing the set of blocks in a secondary storage that is different than the blockchain; and

storing the block hashes of the set of blocks in a Merkle tree within the archive block.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 058213/0912 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2020
From: GARG, ANUJ KUMAR; GUPTA, HIMANSHU; MOHANIA, MUKESH KUMAR; GUPTA, NEERAJ KUMAR
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 052530/0438 →
Continuity (1)
Related Publication 20210342291A1 · Nov 4, 2021