Merkle-Tree
如果 SPV 客戶端不存在,比特幣還會使用 Merkle 樹嗎?
我了解完整節點如何使用 Merkle 證明來說服 SPV 客戶某些交易是有效/無效的。
比特幣軟體是否以其他方式使用 Merkle 樹?
merkle 根包含在塊頭中,作為包含在該塊中的交易的加密承諾。如果沒有這樣的承諾,區塊的 POW 將獨立於區塊中包含的交易進行計算。交易排序很重要,因此需要在 POW 中包含加密證明/承諾,否則網路將無法驗證每個區塊中有哪些交易。
默克爾樹結構本身可以被其他東西取代(例如,將所有交易連結起來,對其進行雜湊處理,並將結果作為加密承諾包含在標頭中),但是使用默克爾樹結構有一些額外的好處(SPV 錢包的更快驗證, 例如)。
可能還有其他一些我不記得的原因,但密碼承諾是最明顯的。
簡單地說,沒有。相反,它可能會將塊中的所有 TXID 和 [Double] Sha256 連接起來。這可以比默克爾樹更快地計算出來。除了允許沒有完整數據集的人驗證特定交易是否在樹中之外,默克爾樹沒有其他用途。