什么是默克爾樹(Merkle Tree)?一文讀懂默克爾樹(Merkle Tree)
默克爾樹(Merkle Tree)是由Ralph Merkle在1979年發(fā)布的一種算法,至今已有40多年的歷史,是一種通過(guò)零知識(shí)證明的方法讓任意一個(gè)節(jié)點(diǎn)都可以驗(yàn)證一個(gè)數(shù)據(jù)庫(kù)的所有數(shù)據(jù)是否正確的方法。
什么是默克爾樹(Merkle Tree)?
1.哈希算法
在了解默克爾樹之前,我們首先要知道哈希算法(Hash)的概念。哈希算法是一種可以將任意長(zhǎng)度的數(shù)據(jù)輸出為固定長(zhǎng)度的算法,它的優(yōu)勢(shì)是單向加密,也就是說(shuō)沒有辦法把計(jì)算出來(lái)的值反推出原始的數(shù)據(jù),起到了保護(hù)的作用。像比特幣等數(shù)字貨幣中,也廣泛地使用到了哈希算法,比如知道比特幣的地址,沒有辦法反推出私鑰,但有私鑰就可以生成地址。
2.生成默克爾樹
當(dāng)理解了哈希算法之后,我們就可以開始生成一棵默克爾樹了。首先,我們先為每一個(gè)用戶都創(chuàng)建一個(gè)“葉子”,這個(gè)葉子里是用戶在某一個(gè)時(shí)間點(diǎn)的唯一ID識(shí)別碼以及資產(chǎn)數(shù)據(jù),Pionex是采用了用戶的userid以及用戶在某個(gè)時(shí)間點(diǎn)擁有的資產(chǎn)種類和數(shù)量作為基礎(chǔ)數(shù)據(jù)。然后我們將這個(gè)葉子里的數(shù)據(jù),使用哈希算法計(jì)算出一個(gè)哈希值,那么每一個(gè)用戶都擁有了一個(gè)哈希值(如Hash1、Hash2、Hash3…),這樣我們就有了第一層的樹枝。
接著,我們兩兩組合,把1號(hào)和2號(hào)用戶的哈希值計(jì)算為一個(gè)新的哈希值Hash12,3號(hào)和4號(hào)用戶的哈希值計(jì)算為一個(gè)新的哈希值Hash34,依次類推。這樣我們就有了第二層的樹枝。
接著,我們?cè)侔训诙訕渲锏墓V翟賰蓛山M合,就生成了一批新的哈希值,比如Hash1234等。
最后,我們一層一層地往上組合,最終我們就會(huì)得出一個(gè)最終的哈希值,稱為根哈希,Hash Root。
到這里,我們就生成了一顆從葉子到根的完整的默克爾樹了。
3.驗(yàn)證機(jī)制
那么這樣的一個(gè)機(jī)制為什么可以驗(yàn)證交易所的資產(chǎn)是否是100%準(zhǔn)備金呢?
假設(shè)今天我是一名用戶,那么我明確地知道自己的賬號(hào)和資產(chǎn)情況,那么我使用標(biāo)準(zhǔn)的哈希算法就可以算出我的哈希值。然后,通過(guò)開源的哈希數(shù)據(jù),我就可以獲得別人的哈希值,那么我可以通過(guò)自己的哈希值和別人的哈希值去計(jì)算最終的根哈希是什么數(shù)字。如果我算出來(lái)的和平臺(tái)公布的一致,那么說(shuō)明平臺(tái)沒有造假。
這里的核心要點(diǎn)在于,只要有一名用戶站出來(lái)說(shuō)他計(jì)算出來(lái)的哈希值和平臺(tái)給出的哈希值不一樣,那么就代表平臺(tái)有造假行為。因此是通過(guò)了眾包的方式監(jiān)督平臺(tái)在賬目上是無(wú)法作假的。這個(gè)與以太坊上二層網(wǎng)絡(luò)的一些零知識(shí)證明的機(jī)制是異曲同工的。
以上就是什么是默克爾樹(Merkle Tree)?一文讀懂默克爾樹(Merkle Tree)的詳細(xì)內(nèi)容,更多關(guān)于默克爾樹(Merkle Tree)介紹的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
你可能感興趣的文章
-
什么是默克爾樹和PoR儲(chǔ)備證明?默克爾樹和PoR認(rèn)證關(guān)系
這篇文章主要介紹了什么是默克爾樹和PoR儲(chǔ)備證明?默克爾樹和PoR認(rèn)證關(guān)系的相關(guān)資料,需要的朋友可以參考下本文詳細(xì)內(nèi)容介紹…
2022-11-25 -
空投女巫是什么意思?什么是空投女巫攻擊?一文搞懂
這篇文章主要介紹了空投女巫是什么意思?什么是空投女巫攻擊?一文搞懂的相關(guān)資料,需要的朋友可以參考下本文詳細(xì)內(nèi)容介紹…
2025-04-17 -
什么是幣安DeFi指數(shù)合約?如何使用幣安DeFi 指數(shù)合約?
這篇文章主要介紹了什么是幣安DeFi指數(shù)合約?如何使用幣安DeFi 指數(shù)合約?的相關(guān)資料,需要的朋友可以參考下本文詳細(xì)內(nèi)容介紹…
2023-03-28 -
一文搞懂最近很火的DeFi到底是什么?
這篇文章主要介紹了一文搞懂最近很火的DeFi到底是什么?的相關(guān)資料,需要的朋友可以參考下本文詳細(xì)內(nèi)容介紹…
2023-03-27 -
什么是DAO(去中心化自治組織) DAO的發(fā)展方向
DAO全稱Decentralized Autonomous Organization是一種去中心化組織,且強(qiáng)調(diào)自治,其自治主要通過(guò)智能合約和治理dai幣就組織資源、事項(xiàng)執(zhí)行、資金分配等事項(xiàng)投票出共識(shí)決策…
2023-03-25 -
什么是區(qū)塊鏈分叉?區(qū)塊鏈分叉帶來(lái)的影響有哪些?
這篇文章主要介紹了什么是區(qū)塊鏈分叉?區(qū)塊鏈分叉帶來(lái)的影響有哪些?的相關(guān)資料,需要的朋友可以參考下本文詳細(xì)內(nèi)容介紹…
2023-03-24 -
一篇文章讓你搞懂什么是冷錢包(全球十大冷錢包排名)
最近有很多小伙伴咨詢關(guān)于世界公認(rèn)的冷錢包有哪些的問(wèn)題,小編結(jié)合多年的經(jīng)驗(yàn)整理出來(lái)一些全球十大冷錢包對(duì)應(yīng)的資料,分享給大家…
2023-03-17 -
GameFi(鏈游)是什么意思?通俗解釋GameFi
這篇文章主要介紹了GameFi(鏈游)是什么意思?通俗解釋GameFi的相關(guān)資料,需要的朋友可以參考下本文詳細(xì)內(nèi)容介紹…
2023-03-16 -
什么是智能合約與dApps?智能合約的用途
這篇文章主要介紹了什么是智能合約與dApps?智能合約的用途的相關(guān)資料,需要的朋友可以參考下本文詳細(xì)內(nèi)容介紹…
2023-03-10 -
什么是預(yù)言機(jī)(Oracle)?預(yù)言機(jī)的應(yīng)用有哪些
這篇文章主要介紹了什么是預(yù)言機(jī)(Oracle)?預(yù)言機(jī)的應(yīng)用有哪些的相關(guān)資料,需要的朋友可以參考下本文詳細(xì)內(nèi)容介紹…
2023-03-10