20181117--深入浅出区块链Merkle树及简单支付验证分析

区块结构
Merkle树
验证交易的过程和文件验证很相似,可以人为每个交易是一个小数据块,但比特币使用Merkle树的方式进行验证,相对于哈希列表,Merkle树是一种哈希二叉树,它的明显的一个好处是可以单独拿出一个分支来(作为一个小树)对部分数据进行校验,更加高效。

我们回看下上面的区块结构图,区块体就包含这样一个Merkle树,Merkle树被用来归纳一个区块中的所有交易。

每个叶子节点是每个交易信息的哈希,往上对相邻的两个哈希合并成字符串再哈希,继续类似的操作直到只剩下顶部的一个节点,即Merkle根,存入区块头。

因为Merkle树是二叉树,所以它需要偶数个叶子节点。如果仅有奇数个交易需要归纳,那最后的交易就会被复制一份以构成偶数个叶子节点,这种偶数个叶子节点的树也被称为平衡树。

猜你喜欢

转载自blog.csdn.net/qq_36344771/article/details/84192941