Banyan樹的啓示:印度banyan樹,最大的一顆能夠長到1萬平方米以上。其如此巨大的祕密就在於其枝幹也會產生根,起到支撐,從而做爲附屬樹幹,繼續生成分支。大天然給人太多啓示……git
Merkle Tree,一般也被稱做Hash Tree,顧名思義,就是存儲hash值的一棵樹。Merkle樹是一種數據結構,Merkle樹的葉子是數據塊(例如,文件或者文件的集合)的hash值。非葉節點是其對應子節點串聯字符串的hash。
Merkle樹是使區塊鏈發揮做用的基本組成部分。雖然理論上能夠在沒有Merkle樹的狀況下製做區塊鏈,但只需建立直接包含每一個事務的巨型塊頭,這樣作會帶來巨大的可擴展性挑戰,能夠說不容置疑地使用區塊鏈的能力超出了全部範圍,從長遠來看,功能強大的電腦。感謝Merkle樹,能夠構建在全部計算機和大小筆記本電腦上運行的以太網節點,智能手機,甚至是物聯網設備github
對於網站中的交易:
https://www.blockchain.com/btc/block/000000000001741120135274584b2a0da45b39c8cc78322a14f9004ae766a8e0golang
1 |
第一筆hash: |
eth wiki:patricia-treemarkdown
[csdn 默克爾樹解釋]http://www.javashuo.com/article/p-rsybixhr-kc.html數據結構
https://github.com/ZtesoftCS/go-ethereum-code-analysis/blob/master/trie源碼分析.mdide
本文連接: https://dreamerjonson.com/2018/12/10/golang-41-blockchain-merkletree/源碼分析
版權聲明: 本博客全部文章除特別聲明外,均採用 CC BY 4.0 CN協議 許可協議。轉載請註明出處!post