Barbara Liskov 的故事提醒我們:區塊鏈不是先有代幣才有共識。它接上的是分散式系統幾十年都在處理的問題:多台機器如何在故障、延遲與說謊中保留同一段歷史。
來源:a16z crypto〈Before Blockchains, There Was State Machine Replication〉,2026 年 6 月 19 日發布。
Liskov 進入分散式系統,是因為 1980 年代的網路讓一個普通需求變得困難:檔案與服務分散在不同機器上,使用者希望其中一台電腦壞掉時,資料仍然可用。當時常見想法是讓使用者去 lock 多份副本,避免並行衝突。
她覺得那不是好解法。若安全性仰賴遠端使用者都記得把鎖處理好,整套系統就把可靠性押在人身上。她和學生 Brian Oki 轉而把工作交給 replicas:由一組副本負責接收操作、排列順序、寫進 log,讓服務看起來像一台穩定機器。
Viewstamped Replication 的核心不是「多複製幾份」而已。真正困難的是 primary 失效時,其他副本怎麼換到新的 primary,又不丟掉已經達到 commit point 的歷史。新 view 必須把舊 view 裡已經成立的順序帶過去,否則系統就可能重寫過去。
這個設計後來變成許多共識協定都會遇到的基本形狀:平時有一個領頭者負責推進,領頭者不工作時,其他副本啟動另一套程序,選出新的領頭者,並證明已提交歷史被保留下來。區塊鏈讀者熟悉的「同一本帳」概念,在這裡已經有了工程雛形。
Viewstamped Replication 處理的是 benign failures:機器可能壞掉、停止回應,但不會故意騙人。1990 年代網際網路長大後,惡意攻擊變成真問題。DARPA 徵求處理惡意攻擊的研究,Liskov 的學生 Miguel Castro 提議把 replication 推進到 Byzantine failures。
Practical Byzantine Fault Tolerance 的改變在於,系統不能相信任何單一 replica。副本可能對不同人說不同版本,也可能簽出互相衝突的訊息。解法不是找一台最可信的機器,而是要求足夠多副本形成可檢查的證明。Benign failure 需要 2f + 1;Byzantine failure 需要 3f + 1。
訪談裡最接近區塊鏈的一段,是 state machine replication 的抽象。共識層只負責決定「第 25 個操作是什麼」。至於這個操作要套用在檔案系統、資料庫、智慧合約或其他服務,是執行層的事。
這就是現代鏈很自然會採用的分層:共識排序交易,執行環境解讀交易。Ethereum、Solana 等通用鏈看起來是金融與應用平台,但在更底層,它們也像是在實作一個通用的 state machine replication 問題。不同 smart contract 是同一套排序與狀態轉換框架裡的不同應用。
Liskov 說,他們完成 PBFT 時以為某天會有人使用。Viewstamped Replication 也等了很多年,才在大型系統裡被重新看見。區塊鏈出現後,這些協定的價值變得清楚:當系統管理可轉移價值,而且參與者不一定彼此信任,惡意行為不再是邊緣條件。
這不表示區塊鏈只是 PBFT 的拷貝。Bitcoin 的 permissionless 設定、proof-of-work、proof-of-stake、經濟誘因與開放參與,都把問題改寫了。但它們仍站在同一個問題上:如何讓一群不完全可靠的參與者,同意一段不可隨意分裂或改寫的歷史。
區塊鏈真正繼承的,不只是密碼學,而是「如何保留同一段歷史」的工程傳統。
從 log 到 ledger,名字變了;核心問題沒有變。
選完之後,分享你的觀點
原始訪談保留 Tim Roughgarden、Barbara Liskov 與 Ittai Abraham 對 modularity、Viewstamped Replication、PBFT、AI 時代系統研究的完整脈絡。
閱讀完整文章 →喜歡這種分析嗎?
從區塊鏈共識、穩定幣到 AI 代理人,用台灣讀者看得懂的語言,把複雜的產業變局說清楚。目前已有超過 2 萬位讀者訂閱。
免費訂閱區塊勢 →也可以直接付費支持,解鎖每週完整文章