Hash Tree - Merkle tree
- is a tree in which:
- every “leaf” is labeled with the cryptographic hash of a data block
- every node that is not a leaf is labeled with the cryptographic hash of the labels of its child nodes
Data Verification Mechanism
How two nodes compare whether their data blocks are in sync:
- Compare root hashes - exchange root hashes between replicas, if identical, then data is consistent
- Root mismatch detected - if roots differ, at least one data block is corrupted or inconsistent
- Identify corrupted block - recursively compare child hashes to pinpoint exact differing block
- Efficient repair - only transfer minimal block instead of entire dataset