tokenpocket比特派(潜力点是计算不同时期市
145 2023-05-12
Merkle树是块链技术的基本构成部分。这是由块内所有交易摘要中使用的不同数据块的哈希组成的数学数据结构。另外,能够有效且安全地验证大量数据的内容。这个结构有助于数据的一致性和内容的验证。比特币和以太坊都使用Merkle Trees结构。MerkleTree也被称为HashTree。
MerkleTree的概念被命名为1979年取得了专利RalphMerkle。基本上Merkle树是数据结构树,各叶节点使用数据块的哈希标签,非叶节点使用加密标签哈希值该子节点标签。叶节点是树上最低的节点。
Merkle树通过生成整个事务集的数字指纹,存储块中的所有事务。这使得用户能够验证该块是否包括交易。
计算节点哈希值63重复创建配对Merkle树,直到只留下一个散列。将该哈希称为Merkle Root或Root Hash。Merkle Trees从下向上构建。
每个叶节点是上一个哈希数据的哈希。Merkle树是二进制,因此需要偶数个叶节点。如果存在奇数事务,则最后一个哈希将被复制一次以创建偶数叶节点。
上述例子是Merkle树最一般最简单的形式,即BinaryMerkleTree。块有TX1、TX2、TX3以及TX4个交易。在这里,可知最顶层哈希是被称为Root Hash或Merkle Root的整棵树哈希。每个散列被重复散列,并且在每个叶节点中存储以产生散列0、1、2、3。然后,哈希Hash0和Hash1
将连续的叶节点对汇总到父节点,生成Hash01,分别生成哈希Hash2和Hash3,作为结果生成Hash23。接着,对两个哈希值进行哈希处理,生成Root Hash或Merkle Root。Merkle Root存储在块中。块是比特币块的一部分,通过挖掘得到哈希值。包括最后一块哈希值、节点Merkle树和当前块中的所有事务Root Hash。因此,区块内有Merkle根,防止交易的窜改。由于该Root Hash包括块中的所有事务哈希值,这些事务可能导致磁盘区域的节省。
MerkleTree保持数据的一致性。如果修改了事务的个别细节或交易顺序,则这些修改将反映在事务的哈希中。此修改将Merkle树级联为Merkle Root,修改Merkle根的值以禁用块。因此,任何人都可以看到Merkle树快速和简单地测试该组是否包括特定的交易。
Merkle树有3个好处。
提供维持数据完整性和有效性的方法。
这样可以节省内存和磁盘容量,证明计算简单、快速。
他们的证明和管理需要通过网络传达少量的信息。