Merkle Tree的定义
Merkle tree,也可称作Merkle hash tree,是一种树形结构,所有节点存储的都是Hash值。它具有一下特点:
1、数据结构是一个树,可以是二叉树,也可以是多叉树(本BLOG以二叉树来分析)
2、叶子节点的value是数据集合的单元数据或者单元数据HASH。
3、非叶子节点value值可由所有的叶子节点的hash值按照一定 的算法计算而得出。
图1 Merkle Hash Tree
这里叶子节点存储的是数据块的Hash值,而其他的非叶子节点所存储的Hash值,都可以由叶节点的hash值计算出来。例如,用SHA1算法通过叶节点计算非叶节点的过程如下:
H11=SHA1(H23∥H24)
H5=