區塊鏈狀態與默克爾樹

2026-07-28

區塊鏈狀態與默克爾樹

一條區塊鏈,每天要回答同一個問題數百萬次:此刻,每個人擁有甚麼?存儲那個「狀態」、並誠實地證明它,而不強迫每一個用戶下載一切,是加密領域最深的工程問題之一。那個優雅的答案,是一個叫默克爾樹的結構,而它悄悄地撐起了整個系統。

區塊鏈狀態與默克爾樹: 要點一覽圖

狀態是甚麼意思

一條區塊鏈的狀態,是它所追蹤的一切的當前快照:賬戶餘額、合約代碼,以及每個智能合約所存儲的數據。區塊是歷史——那份有序的變更清單——而狀態,則是應用了所有這些變更之後的、最新的結果。當你查看你的餘額,你是在讀取狀態,而非重放自開天闢地以來的每一筆交易。因為狀態龐大、且不斷變化,一條鏈需要一種方式,去高效地總結並核驗它。

默克爾樹與根哈希

一棵默克爾樹,通過成對地、反覆地哈希數據來解決這個,直到一切坍縮成一個叫根哈希的單一數值。每一份數據被哈希,然後一對對的哈希被一同哈希,一層一層,直到頂端的一個根。神奇之處在於,這個根,充當着整個數據集的一枚指紋:改動任何單獨一項,哪怕一個比特,根就完全變了。因此,一個微小的根,能夠承諾一個龐大的數據量。

默克爾證明與輕量核驗

那個根真正的威力在於,你能證明某一項屬於它,而不揭示其餘。一份默克爾證明,就只是那條短短的、從你單獨的一項重算出根所需的兄弟哈希之鏈。任何只持有那個可信之根的人,都能核查那份證明、並確認那一項確實被包含了——而幾乎甚麼也沒下載。這正是輕客戶端如何核驗一筆交易,以及儲備證明如何讓你核查你的餘額,在一家交易所的總額之中。

以太坊的默克爾帕特里夏字典樹

比特幣用一棵默克爾樹,去承諾每個區塊裏的那些交易。以太坊需要更多,因為它的狀態,是一張巨大的、頻繁更新的、賬戶與存儲的鍵值映射。它使用一個叫默克爾帕特里夏字典樹( Merkle Patricia trie )的變體,它把默克爾的哈希,與一棵用於查找與更新事物的高效之樹結合。每個區塊頭,都攜帶一個狀態根,總結着整個世界狀態,於是任何節點,都能用一份緊湊的證明,對照它去核驗某個具體的賬戶或存儲槽。

Verkle 樹與無狀態的未來

默克爾帕特里夏字典樹的弱點是,證明會長得很大,這堵住了「無需存儲整個狀態就能核驗的無狀態客戶端」之夢。被提議的升級,是 Verkle 樹,它使用更先進的密碼學,把證明變得急劇地更小——在默克爾證明會需要許多千字節之處,只需幾百字節的量級。那大約二十倍的縮小,正是那有望終於讓輕量節點,去核驗只攜帶微小見證之區塊的東西,在狀態不斷增長之際,保護去中心化。

結語

狀態,是一條區塊鏈當前之所是;默克爾樹,則是它如何用單獨一個哈希承諾那個狀態、並廉價地證明它的任一片段。從比特幣的交易樹,到以太坊的默克爾帕特里夏字典樹、再到將來的 Verkle 升級,同一個想法反覆出現:把浩瀚的數據,壓縮進一個根,然後用一條短短的路徑,證明成員資格。它是那不起眼的機械,讓無需信任的核驗——一條區塊鏈的全部意義所在——真正切實可行。

免責聲明:本文為幣貝學院提供的教育內容,僅供參考。不構成投資、交易、稅務或財務建議。撰寫於 2026 年 7 月;請以最新官方信息為準。

參考資料

[1] Ethereum.org, "Verkle trees" ethereum.org

[2] Investopedia, "Merkle tree" investopedia.com

相關推薦

更多推薦