IP Library Granted Patent US 11,489,663
Granted Patent B2
US 11,489,663 · App. 16/779,334 · Granted Nov 1, 2022

Correlation-based hash tree verification

Inventor: Ryo Kawahara (Tokyo, JP)
Assignee: International Business Machines Corporation
H04L9/0637G06F16/9027H04L9/0643H04L9/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,489,663
App. No.
16/779,334
Granted
Nov 1, 2022
Kind
B2
Abstract

An example operation may include one or more of receiving a request to verify a data store which stores key-value pairs, mapping values of key-value pairs of the data store to nodes of a hash tree structure based on a key-bucket map in which correlated key-value pairs are mapped to a same bucket or adjacent buckets within the hash tree structure, generating a root hash of the hash tree structure based on the values of the key-value pairs mapped to the nodes of the hash tree structure, and storing the generated root hash with a storage.

Claims (31)

1. An apparatus comprising

a processor configured to

receive a request associated with a data store which stores key-value pairs,

map values of key-value pairs of the data store to nodes of a hash tree structure based on a key-bucket map in which a plurality of key-value pairs that are updated by a same blockchain transaction are mapped to a same node within the hash tree structure, and

generate a root hash of the hash tree structure based on the values of the key-value pairs mapped to the same node of the hash tree structure; and

a storage configured to store the generated root hash.

2. The apparatus of claim 1 , wherein the processor is configured to map a pair of correlated key-value pairs that are updated by the same blockchain transaction to adjacent nodes in the hash tree structure.

3. The apparatus of claim 1 , wherein the data store comprises a state database of a blockchain, and the processor is further configured to generate the key-bucket map based on correlations between key-values of blockchain transactions previously stored on the blockchain.

4. The apparatus of claim 3 , wherein the processor is further configured to identify the correlations between the key-values of the blockchain transactions based on one or more of document identifiers, document types, user identifiers, and account identifiers.

5. The apparatus of claim 1 , wherein the processor is further configured to receive a modified key-bucket map and change a mapped value of a key-value pair from a first node to a second node of the hash tree structure based on the modified key-bucket map.

6. The apparatus of claim 1 , wherein the processor is configured to modify an initial random and uniform map of key-value pairs to nodes of the hash tree structure based on the key-bucket map.

7. The apparatus of claim 1 , wherein the hash tree structure comprises a Merkle tree, and the root hash comprises a root hash of the Merkle tree.

8. A method comprising

receiving a request associated with a data store which stores key-value pairs;

mapping values of key-value pairs of the data store to nodes of a hash tree structure based on a key-bucket map in which a plurality of key-value pairs that are updated by a same blockchain transaction are mapped to a same node within the hash tree structure;

generating a root hash of the hash tree structure based on the values of the key-value pairs mapped to the same node of the hash tree structure; and

storing the generated root hash with a storage.

9. The method of claim 8 , wherein the mapping comprises mapping a pair of correlated key-value pairs that are updated by the same blockchain transaction to adjacent nodes in the hash tree structure.

10. The method of claim 8 , wherein the data store comprises a state database of a blockchain, and the method further comprises generating the key-bucket map based on correlations between key-values of blockchain transactions previously stored on the blockchain.

11. The method of claim 10 , further comprising identifying the correlations between the key-values of the blockchain transactions based on one or more of document identifiers, document types, user identifiers, and account identifiers.

12. The method of claim 8 , further comprising receiving a modified key-bucket map and changing a mapping of a values of a key-value pair from a first node to a second node of the hash tree structure based on the modified key-bucket map.

13. The method of claim 8 , wherein the mapping comprises modifying an initial random and uniform mapping of key-value pairs to nodes of the hash tree structure based on the key-bucket map.

14. The method of claim 8 , wherein the hash tree structure comprises a Merkle tree, and the root hash comprises a root hash of the Merkle tree.

15. A non-transitory computer readable medium comprising instructions, that when read by a processor, cause the processor to perform a method comprising:

receiving a request associated with a data store which stores key-value pairs;

mapping values of key-value pairs of the data store to nodes of a hash tree structure based on a key-bucket map in which a plurality of key-value pairs that are updated by a same blockchain transaction are mapped to a same node within the hash tree structure;

generating a root hash of the hash tree structure based on the values of the key-value pairs mapped to the same node of the hash tree structure; and

storing the generated root hash with a storage.

16. The non-transitory computer readable medium of claim 15 , wherein the mapping comprises mapping a pair of correlated key-value pairs that are updated by the same blockchain transaction to adjacent nodes in the hash tree structure.

17. The non-transitory computer readable medium of claim 15 , wherein the data store comprises a state database of a blockchain, and the method further comprises generating the key-bucket map based on correlations between key-values of blockchain transactions previously stored on the blockchain.

18. The non-transitory computer readable medium of claim 15 , wherein the method further comprises receiving a modified key-bucket map and changing a mapping of a values of a key-value pair from a first node to a second node of the hash tree structure based on the modified key-bucket map.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2020
From: KAWAHARA, RYO
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 051690/0418 →
Continuity (1)
Related Publication 20210243009A1 · Aug 5, 2021