风险提示:理性看待区块链,提高风险意识!
默克尔树(Merkle Tree)是什么意思?
首页 > 币界资讯 > 区块链知识 2020-09-18 13:25:16

默克尔树于1979年由美国计算机科学家拉尔夫·默克尔(Ralph Merkle)提出,本质上是一种树状数据结构,由数据块、叶子节点、中间节点和根节点组成。所以,一组合,就叫“Merkle Tree”。

默克尔树各部分的构成关系如下图:

image.png

哈希运算和哈希值

生成默克尔树用到的哈希运算是区块链中常用的加密函数。任意大小、长度的数据经过哈希运算后都会得到一个固定大小和长度的数值,即哈希值。就像我们的指纹或签名能帮助鉴别我们的身份,哈希值也可以看成是数据的指纹或签名,用于验证数据的真实准确性,并具有以下特征:

确定性

数据和哈希值之间是确定的一一对应关系,即相同数据经过哈希运算会得到相同的哈希值。

不可逆性

哈希运算的过程是不可逆的,即数据经过哈希运算可以得到哈希值,但不可以通过哈希值推导出原始运算数据,由此保证数据的隐私和安全性。比如Facebook等网站会将用户密码计算成哈希值并储存。用户每次输入密码时,密码都会被转换成哈希值与网站记录的版本进行对比,从而验证密码是否正确。由于哈希运算的不可逆性,网站无法从哈希值中推导出用户密码,从而保证用户信息安全。

统一性

即上文提到的任意大小、长度的数据经过哈希运算后会生成大小、长度统一的哈希值,一方面起到压缩数据,减轻数据储存压力的作用,另一方面规整了杂乱无章的原数据,方便后期比对验证。

为什么要用默克尔树?

由于默克尔树本质上是由哈希值构成的树状数据结构,因此也继承了哈希值用于保证数据安全隐私和校验数据准确和完整性的功能,主要应用于点对点下载,例如BT下载、开源分布式控制系统Git、比特币以太坊区块链等场景中。因为我们难以保证这些去中心化系统中的每个节点都会提供真实可信的数据,也难以避免数据在传输过程中出现丢失、损坏等情况,所以需要引入数据加密和校验机制。

看到这里,你可能已经意识到了默克尔树其实就是将数据分割成多个小块,进行多次哈希运算,搭建出的一个树状数据结构。那为什么要对数据进行拆分,计算出多个哈希值用于校验呢?这不是增加工作量了吗?但其实这样做是为了提高数据验证的灵活性,数据量越大,默克尔树的这一优势会体现得越明显。

试想一下,如果我们不对数据进行拆分,而是将整体计算成一个哈希值,那当数据校验出现问题时,我们很难分辨问题出现在哪里,只能回过头去对整个数据进行排查,如果数据量特别大,那么这个错误排查过程无异于海底捞针。

但在默克尔树里,数据被拆分成多个小块,形成了多个分支,可以根据具体情况对部分数据进行校验,无需校验整个数据,从而提高数据校验的灵活性和效率。

最后总结一下默克尔树的知识要点:

- 由哈希值构成的树状数据结构;

- 用于验证验证区块链等去中心化系统中的数据的完整准确性;

- 具有灵活高效验证数据的优势;

上一篇: 什么是拜占庭容错机制(PBFT)?
下一篇: Acala测试网Mandala操作指南
推荐专栏
web3首席知识博主
一位相信价值投资的币圈KOL。稳定盈利的缠论野生交易员 #BTC行情分析师 #价值投资 #链上数据分析
爱Web 3,爱生活,爱科技,爱炒币的老韭菜
热门币种
更多
币种
价格
24H涨跌幅
BTC比特币
¥265,355.45
37,179.73 USDT
+0.28%
ETH以太坊
¥14,454.12
2,025.21 USDT
0%
USDT泰达币
¥7.20
1.01 USDT
-0.01%
BNB币安币
¥1,632.04
228.67 USDT
+1.39%
XRP瑞波币
¥4.32
0.60460 USDT
+0.32%
USDC
¥7.14
1.00 USDT
+0.03%
SOLSolana
¥400.19
56.07 USDT
+1.22%
OKBOK币
¥399.79
56.02 USDT
-0.38%
ADA艾达币
¥2.69
0.37630 USDT
-1.08%
DOGE狗狗币
¥0.55520
0.07780 USDT
-1.3%
热搜币种
更多
币种
价格
24H涨跌幅
Terra Classic
¥0.00
9.596E-5 USDT
-17.98%
Gala
¥0.18
0.025764 USDT
-6.2%
dYdX
¥22.73
3.2131 USDT
-0.69%
比特股
¥0.05
0.006581 USDT
+0.23%
PancakeSwap
¥15.71
2.221 USDT
-1.71%
Filecoin
¥31.66
4.4751 USDT
-0.49%
FTX Token
¥29.64
4.1896 USDT
+13.24%
Conflux
¥1.09
0.154 USDT
-2.28%
Yield Guild Games
¥2.57
0.363 USDT
-0.33%
Shiba Inu
¥0.00
8.18E-6 USDT
-2.04%
比特币
¥263,089.54
37191.32 USDT
+0.27%
比原链
¥0.07
0.009976 USDT
-4.95%
最新快讯
更多
CFTC向Coinbase用户发出传票要求提供交易活动的信息
2023-11-28 19:47:05
汇款公司Kalyssi旗下钱包已集成AlchemyPay法币出入金解决方案
2023-11-28 19:26:47
PlanB:比特币可能不会再低于3.5万美元
2023-11-28 19:23:01
摩根大通和Apollo计划推出代币化“企业主网”
2023-11-28 19:14:28
汇丰、恒生、渣打、富邦华一四家外资银行入围首批“数字人民币”业务试点名单
2023-11-28 19:06:57
OKX上线MATIC链上赚币产品
2023-11-28 19:06:21
摩根大通和Apollo计划建立代币化“企业主网”
2023-11-28 19:03:57
下载币界网APP