什么是区块链中的默克尔树,它是如何工作的?

关键外包:

  • 梅克尔树 是一种二叉哈希树,具有 3 种类型的节点:叶节点、非叶节点和根节点。
  • Merkle 树可用于验证和维护任何去中心化分类账中的交易完整性。
  • 在比特币和以太坊中都可以看到默克尔树。

介绍

密码货币 不再是一个未知的主题,也不是 blockchain,其起源背后的技术。 对于任何加密货币爱好者来说,了解区块链结构及其运作方式是了解加密货币本质的第一步。

理解不同的区块链结构是默克尔树的用武之地。早在 1980 年,斯坦福大学的拉尔夫默克尔就提出了一个概念,即 梅克尔树 通常用于对等 (P2P) 网络,以处理计算能力和内存空间要求。 毫不夸张地说,默克尔树让区块链技术取得了巨大的成功。 因此,让我们深入了解 Merkle 树背后的含义及其工作原理。

https://www.youtube.com/watch?v=YIc6MNfv5iQ

Merkle树概述

简而言之,Merkle 树代表了有目的地构建数据的方式。 它允许快速有效地验证区块链上的大量信息。 如前所述,Ralph Merkle 在一篇名为“经认证的数字签名”的论文中不知不觉地将其创建为一个概念。 但没有人预料到它会在未来成为去中心化账本的主要组成部分。

Merkle 树自诞生以来就改进了密码学世界。 但在比特币的神秘创造者在 BTC 的基础代码中使用它之后,它对加密货币变得至关重要。 之后,以太坊和其他加密货币也采用了 Merkle 树。

就比特币网络而言,Merkle 树是一种高效的组件,它使用哈希代替大型信息文件来验证数据。 Merkle 树使用独特的描述性术语来描述节点及其级别之间的关系。

区块链中的每个区块都包含许多交易。 存储所有这些交易并找出哪些特定交易属于哪个区块可能是一项非常昂贵的任务。 此外,它会对区块链的效率产生负面影响。 然而,使用 Merkle 树,所有交易都得到了有效安排,从而减少了用于验证的数据并减少了 CPU 处理。

了解 Merkle 树如何在区块链中工作

下面是一个简单的例子来阐明这个概念: 

默克尔树

想象一个如上所示的数据块有 4 个事务:L1、L2、L3 和 L4。 为了存储这些交易,我们可以通过计算每个交易的哈希值来实现 Merkle 树的概念。 后 计算,我们收到哈希 L1、哈希 L2、哈希 L3 和哈希 L4。

每笔交易的这些哈希值存储在 Merkle 树的一个节点中,通常称为叶节点。 但是我们的工作仍在继续,因为我们必须通过配对叶节点来形成非叶节点。 计算后得到Hash 0和Hash 1,分别称为L1、L2、L3、L4哈希的父节点或非叶节点。

最后,通过将哈希 1 和哈希 2 配对在一起计算哈希值,我们到达根节点,即 Merkle 根。 通过这个例子,我们了解到 Merkle 树通过重复散列子节点来工作,直到单个散列保留在结构中。

这样,Merkle 树通过仅检查树的根来准确地告诉您交易是否影响了树。 Merkle 根存储在块头中,使其防篡改并增强去中心化分类账中的信任和完整性。 重要的是要注意默克尔树使用单向散列函数,并且会一直持续到该散列将数据证明与数据分开为止。

Merkle树对区块链的必要性

现在我们已经讨论了什么是 Merkle 树及其工作原理,剩下要做的就是理解为什么它对区块链很重要。 Merkle 树的诸多优点使其成为区块链技术乃至加密平台的必需品。 其中一些好处是:

在传输、计算和遍历数据时,不允许延迟。 这就是为什么许多区块链使用 Merkle 树来保持网络在传输数据时没有任何类型的延迟。 通过减少证明数据完整性和有效性所需的内存量,默克尔树成为区块链的重要组成部分。

在分布式 P2P 的比特币区块链中,由于连接到 P2P 网络的每台计算机上都存在相同的数据,因此可能存在数据不一致甚至篡改的情况。 在这种情况下,Merkle 树使矿工可以轻松识别任何类型的不一致或篡改交易。

如果不使用这个概念,所有数据都需要在整个网络中传输,从而导致网络速度变慢、效率降低和不必要的开支。 这种情况可以在 Merkle 树的帮助下避免,Merkle 树允许使用实际的计算能力和带宽进行快速数据验证。

最后的思考

Merkle 树听起来像是一个复杂的概念,但它们是区块链技术和加密货币的重要组成部分。 没有这个概念的存在,就不会有比特币、以太坊和挖矿中使用的去信任系统。

常见问题:

Q1。 Merkle 树旨在实现什么?
Merkle 树被设计为一种验证数据的过程,可以让计算机更快地工作。
Q2。 Merkle树和以太坊有什么联系?
Merkle 树是一种区块链结构,不仅支持以太坊,还支持比特币和加密货币挖矿过程。 然而,以太坊使用的是 Merkle 树的修改版本,通常称为 Merkle Patricia 树。
Q3. Merkle树如何实现
要实现 Merkle 树,需要从二叉树开始,其中每个非叶子节点都是两个子节点的哈希值。 这些叶子可以包含数据或 数据的散列.
Q4. Merkle 树有哪些好处?
Merkle 树是一种轻型结构,可提高区块链的可扩展性,可以去除不必要的数据,从而提高效率。 矿工和用户都可以从 Merkle 树中受益,因为它验证块的各个部分,使用哈希检查交易,并在他们接收交易时计算哈希。
 

 

来源:https://coingape.com/education/explained-what-is-a-merkle-tree-in-blockchain-and-how-does-it-work/