默克尔树是⼀ 种⼆叉树,包含了⼀组节点,它们的含有基础信息的树根有⼤量的叶⼦节点,⼀组中间节点,每⼀ 个节点都是它的 2 个⼦节点的哈希,然后,最终的⼀个根节点,也是由它的 2 个⼦节点的哈希形 成,代表着这树的“顶端”。这个默克尔树的⽬的是允许在⼀个区块中的数据能够被零散的传递: ⼀个节点只能从⼀个源来下载⼀个区块的头信息,树的⼀⼩部分关联着另⼀个源 ,并且任然可以保 证所有的数据都是正确的。之所以这样做⾏得通,是因为哈希值都是向上传导的: 如果⼀个恶意的 ⽤户试图在默克尔树的底部替换⼀个假的交易, 这个更改将导致上⾯的节点发⽣变化,然后上⾯的节点的变化⼜会导致上上⾯的节点发⽣变化,最终改变这个数根节点,因此也改变了这区块的哈 希,导致这个协议把它注册成⼀个完全不同的区块 (⼏乎可以肯定是⼀个⽆效的⼯作证明)。
默克尔树结构
联系客服