我在6月30日進行交易時,Coinbase的Base網絡停止了處理任何內容。不是變慢——而是徹底停止。單個無效區塊就觸發了全鏈停擺,此後公佈的事後分析都指向同一個根本原因:Base運行在單一的排序器(sequencer)之上。有一套基礎設施,位於某個地點,決定網絡上每一筆交易的先後順序。當這一件東西出故障時,就沒有第二個來接手。Coinbase在數小時內推出修復並稱其已解決,故事也隨之在新聞週期中翻篇。
我把這稱爲“一通電話(one-phone-call)問題”。它並不真的是關於排序器、服務器,或任何特定硬件——而是關於任何一種系統:在你和你需要發生的某件事之間,存在一個由單一主體運行的單一決策節點。無論這個主體有多麼稱職、出於多麼良好的動機,都無關緊要。比如,去年五月,一家雲服務提供商在弗吉尼亞州過熱導致 Coinbase 自己的交易平臺離線了六個小時。六月,某個排序器卡住導致 Base 離線。兩家公司在道德意義上都沒有做錯什麼。它們只是構建了那種系統:只要打出去“一通電話”——一次宕機、一次配置錯誤的更新、一次傳票——就能讓所有下游同時凍結,而你又沒有別的人可以打電話去拿到不同的答案。
讓我比排序器(sequencers)更擔心的,是鏈上金融中那些在出問題時沒人去拍攝的部分:合規(compliance)。目前大多數所謂“鏈上合規”都呈現出完全相同的結構:一家單獨的公司運行制裁名單;一個單獨的 API 用“是/否”回答某個錢包是否乾淨;一臺單獨的服務器決定某個司法轄區當前是否被提供服務。和故障(outage)相比,這些都看不見——沒有儀表盤會告訴你:你的交易之所以被攔截,是因爲某家公司在一夜之間改了政策、遭到黑客入侵,或收到了無法披露的法律命令。你只會被告知“不行”,而且沒有第二個排序器可以切換上去來兜底。
Newton 主網 Beta 則從相反的方向來處理。問題不再由一家單獨的公司回答“是/否”,而是把判斷請求發給一個由獨立運營商組成的網絡;每個運營商基於同一套已發佈規則自行評估,並把真實資本押在自己的判斷上。只有足夠多的運營商達成一致,交易纔會獲得可驗證的放行。即使其中某一個判斷錯了——或者試圖作弊——任何人不僅僅是 Newton,都可以在數學上證明這一點,而那個運營商會爲此損失真實的錢。這在結構上更接近於分佈在許多獨立方之間的投票,而不是由某一家公司的單一開關悄無聲息地(或以其他方式)翻過去。
我確實不知道在每一種情況下,這種方式是否比“一家非常好、非常可靠的中心化公司”更有韌性。把決策分散給許多參與方,只有在這些參與方彼此之間確實獨立時纔有幫助——比如不同的運營商、不同的法律管轄、以及彼此底層不同的基礎設施。如果這組參與方規模很小,或者一開始就高度集中,你並沒有移除那個卡脖子點,你只是把它改了個名字。我要看的正是 Newton 的運營商網絡在增長時,這一塊會如何演變——而不是僅因爲架構在紙面上是去中心化,我就願意假設問題已經解決了。
Base 在幾小時內重新上線——像這種情況通常都會發生的那樣。沒有人期待某一個工程師或某一家公司會親自保證這次之後永遠不會再發生——單點故障一旦失敗,本來就是單點故障遲早都會做的事。我希望系統裏負責決定我的交易是否根本允許發生的那一部分,被設計成:不存在“單個壞日子”、不存在“一份單一的傳票(subpoena)”、不存在“一臺被拔掉的服務器”,就能讓它獨自做出這個決定。

