Merkle tree
A Merkle tree combines hashes of data and child nodes into a root so that selected entries or subtrees can be checked without transferring the entire data set.
Dynamo's 2007 design uses per-key-range trees to locate divergent replicas. [1] For inclusion verification, use the intended trusted root and the construction's encoding, ordering and tree-shape rules. RFC 9162 specifies distinct leaf and internal-node prefixes and includes tree size and leaf index in proof verification; that is one construction, not a universal storage format. [2]
Relations
- related
- cryptographic-hash, hash-collision, checksum, end-to-end-data-protection
Limitations
- A proof relative to a root does not by itself establish freshness, data availability or which divergent replica is authoritative. [2, 1]
- A Merkle tree does not reconstruct missing data; replica synchronization still needs the relevant data and reconciliation rules. [1]