區塊鏈的不可能三角一直是業界難以跨越的障礙,眾多公鏈項目都試圖通過創新的架構設計來逾越這一鴻溝,以期成為所謂的「以太坊殺手」。然而,現實是殘酷的,多年來,以太坊的霸主地位依然穩固,區塊鏈的不可能三角仍然無法突破。那麼,公鏈是否有辦法填補不可能三角的空白呢?這正是 Mustafa Albasan 提出模塊化區塊鏈概念的初衷。
模塊化起源
模塊化區塊鏈的概念起源於兩篇白皮書。第一篇是由 Mustafa Albasan 和 Vitalik 在 2018 年共同撰寫的,題為《數據可用性採樣和欺詐證明》。這篇文章闡述了如何在保持安全性和去中心化的前提下解決區塊鏈的可擴展性問題。具體方法是讓輕量級客戶端接收並驗證來自全節點的欺詐證據,同時設計數據可用性證明系統,以減小鏈上容量與安全性之間的權衡。
隨後在 2019 年,Mustafa Albasan 撰寫了關於 Lazy Ledger 的白皮書,詳細介紹了一種創新的架構。在這個架構中,區塊鏈僅用於對交易數據進行排序和確保其可用性,而不負責執行和驗證交易。這個架構旨在解決現有區塊鏈系統的可擴展性問題。當時,他將其稱為「智能合約客戶端」。
智能合約通過 Celestia(第一個模塊化區塊鏈)在該客戶端上的另一個執行層進行執行。隨後,Rollup 的出現使這個概念變得更加明確。因為 Rollup 的邏輯是在鏈下執行智能合約,並將結果聚合成證明,然後上傳到「客戶端」的執行層。
通過對區塊鏈架構的深入思考和新的擴展技術,他定義了一種名為「模塊化區塊鏈」的新範式。
什麼是模塊化區塊鏈?
傳統的單體區塊鏈架構通常由以下四個功能層組成:
執行層:該層主要負責處理交易和執行智能合約,包括交易的驗證、執行和狀態更新。
數據可用性層:在模塊化區塊鏈中,數據可用性層確保網路中的數據可被訪問和驗證。此層通常包括數據儲存、傳輸和驗證等功能,以保證區塊鏈網路的透明度和信任。
共識層:此層負責節點間的協議,實現網路中數據和交易的一致性。通過特定的共識算法(例如工作證明(PoW)或權益證明(PoS))驗證交易並創建新塊。
結算層:此層負責完成交易的最終結算,確保資產的轉移和記錄永久保存在區塊鏈上,決定區塊鏈的最終狀態。
單體區塊鏈將這些組件集成在同一個系統中,這種高度集成的設計往往導致一些固有問題,如可擴展性差、靈活性差以及維護和更新困難等。
然而,Celestia 認為單體區塊鏈不再需要獨自承擔所有任務。Web3 的未來發展將是「模塊化區塊鏈」,通過區塊鏈模塊化並將其流程劃分為多個「專有層」,每個專有層處理特定的功能層,從而構建更優秀的系統。此外,這些系統應該是獨立的、安全的且可擴展的。
模塊化設計原則
如果將系統設計成可以拆分、更換或替換的較小部件,那麼這種設計就具有模塊化特性。其核心理念是專註於做好一些特定事物(部分或者單一功能層),而不是試圖涵蓋所有方面。Cosmos Zones、Polkadot 平行鏈等都是我們以往所熟悉的模塊化項目的典範。
新視角
從模塊化的新視角出發,單體區塊鏈及其相關的模塊化堆棧的重新設計空間將得到極大的拓展。各種具有不同特定用途和架構的模塊化區塊鏈可以組合在一起,實現協同工作,多樣化的設計可能性催生了許多有趣且富有創意的項目。接下來,我們將探討關於不同功能層的當前爭議以及 Celestia 如何從模塊化的角度詮釋「模塊化」。
執行層以以太坊為中心
如果我們將 Rollup 視為模塊化執行層,會發現大多數模塊化執行層項目都是建立在以太坊之上的。顯然,這是因為以太坊擁有豐富的資源來作為護城河,其去中心化程度是最佳選擇,然而它的可擴展性相對較差,因此在功能層面的重新設計具有巨大潛力。
通過比較最近上線的 Move 系統語言公鏈(APT、SUI)的慘淡表現以及以太坊上 Layer2 的空前熱潮,我們可以看出區塊鏈基礎設施的敘事已經從開發公鏈轉向了開發以太坊 Layer2。那麼模塊化的存在究竟是好是壞呢?以太坊為中心的執行層會扼殺公鏈創新嗎?
區塊鏈擴容視圖
首先,從執行層的角度,對現有的鏈進行重新分類。這裡參考 Nosleepjon 的文章《Tatooine”s Double Sun》來解釋目前區塊鏈的執行層分類。
目前,區塊鏈可分為以下四類:
單線程單體區塊鏈:這類區塊鏈一次僅處理一筆交易。受限於其性能,許多項目已轉向 Rollup 或水平擴展解決方案。代表項目包括:以太坊、Polygon、幣安鏈和 Avalanche。
並行處理單體區塊鏈:此類區塊鏈能夠同時處理多筆交易。代表項目有:Solana、Monad、Aptos 和 Sui。
單線程模塊化區塊鏈:這種模塊化區塊鏈一次處理一筆交易。代表項目包括:Arbitrum、Optimism、zkSync 和 Starknet。
並行處理模塊化區塊鏈:這類模塊化區塊鏈可同時處理多筆交易。代表項目有:Eclipse 和 Fuel。
單體並行處理架構與模塊化架構
關於採用哪種方法,一直以來都有很多討論,特別是在涉及模塊化與全局並行處理的概念時。此外,還有三個主要的觀點陣營:
模塊化陣營:模塊化的擁護者(很多也是以太坊的支持者)認為,單一的區塊鏈無法解決區塊鏈的不可能三角問題。在以太坊上堆疊樂高積木被認為是在保持安全性和去中心化的同時實現可擴展性的唯一方法。而且,模塊化具有更多的控製性和可定製性。
單體並行處理陣營:這個陣營(引用了《Monolithic vs. Modular:誰是區塊鏈的未來?》中的 Kodi 和 espresso 觀點)認為,單片並行處理的新公鏈架構(如 Move 系統、Solona 等)具有較高的集成度,整體性能會比模塊化的碎片化設計更優,同時模塊化架構並不安全,尤其是在需要大量跨鏈通信的情況下,駭客的攻擊面更廣。
中立陣營:當然,也有人持中立態度,認為兩者最終可以共存。例如,Nosleepjon 認為最終的博弈是雙方各有千秋,公鏈競爭依然存在,Rollup 也將相互競爭。
總結
這個問題的焦點實際上可以歸結為模塊化方案的摩擦缺點(如跨鏈安全性不足、系統流程不佳等)是否超過了新公鏈的中心化問題。從市場爭論來看,無論是 Rollup 中心化隔離器的缺點,還是跨鏈橋的安全隱患,都沒有導致人們轉向新的公鏈。這是因為所有這些問題似乎都有改進的空間,而新的公鏈無法複製以太坊鏈的龐大生態護城河和去中心化優勢。
另一方面,新公鏈雖然在架構上具有性能和集成性優勢,但生態上與以太坊生態過於相似,同質化程度高,流動性不足。缺乏一個專屬應用能夠體現出自身的架構優勢,自然也沒有理由讓人們放棄以太坊生態。Rollup 的可塑性足夠高,未來新架構的 Rollup 改進還有很大的空間。
當 Rollup 也具備非 EVM 鏈的大部分優點時,未來很難再出現「Solana Summer」。所以在這種情況下,我認為模塊化方案的摩擦劣勢小於公鏈中心化的問題。而中立的情況似乎並不存在,以太坊的虹吸效應將像「iPhone」一樣,吸引大量註重擴展性的開發者到第 Layer2,新的公鏈將成為一座鬼城。
因此,在關於基礎設施的未來方面,我無疑更傾向於模塊化。以太坊的分類擴展將是公鏈博弈的終局,通用鏈之間的 Layer2 競爭,超級應用鏈之間的 Layer3 競爭。
目前一級市場融資的項目也印證了這一點。除了大量的以太坊 Layer2 項目和比特幣的擴容項目之外,幾乎沒有新的公鏈。
然而,這個行業始終是建立在以太坊上發展的,目前的趨勢似乎過於集中,這樣的現狀確實值得思考。缺乏競爭可能會阻礙一個行業的發展,這個行業需要多樣性和更多的選擇。如果用戶體驗逐漸趨於同質化,新的公鏈將如何創造出破局的契機,目前還看不到。當以太坊不斷完善自身缺陷的同時,如何找到更大的差距來針對非 EVM 系統進行精準打擊需要重點關註。
DA 方案競爭
近期,業界熱議從執行層轉向數據可用性層(DA 層),特別是關於 Rollup 應該採用哪種數據可用性方案的問題。這場討論起源於以太坊基金會研究員 Dankrad Feist 的一條推文,探討了主題的各個方面。在他看來,沒有以太坊 DA 的 Rollup 不屬於 Layer2。因此,之前關於 Layer1 的戰爭是否會演變成正統(擁有以太坊 DA)Layer2 和非正統 Layer2 之間的戰爭呢?目前業界對於 DA 的解決方案主要有三種:
公鏈作為結算層
以以太坊為例,在 Rollup 中進行交易時提交給以太坊的費用主要包括以下幾類:
執行費用:這是對執行交易所需計算資源的補償。它包括執行交易所需的燃料費,通常與交易的複雜性和執行時間成正比。在 Rollup 中,執行費用可能包括鏈下執行交易的費用,以及生成和驗證交易證明的費用。
狀態費:狀態費與更新以太坊主鏈上的狀態有關。在 Rollup 中,這包括向主鏈提交新狀態根的費用。每次 Rollup 聚合器生成新的狀態根並將其提交到主鏈時,都會產生狀態費用。該費用可能與狀態更新的頻率和複雜性成正比。
數據可用性費用:將數據發布到 Layer1 的費用。
在這些費用中,數據可用性費用占比最大,且成本較高。例如,Arbitrum 在今年 5 月 6 日因以太坊 GAS 費用激增,單日向以太坊支付了 376.8ETH GAS 費用。
這是因為 Rollup 以 Calldata 上傳的形式將數據上傳到以太坊,並永久儲存這些數據,導致成本非常昂貴。然而,Rollup 的安全性和合法性是三種方案中最好的,而且該方案的成本降低目前正等待 Cancun 升級後的 EIP-4844 更新。通過引入事務格式,用 Blob 承載 Transactions,讓交易格式比普通交易格式多一個 Blob 位來承載 Layer2 的數據。此外,Blob 數據在 1 個月後就會被節點刪除,從而大大節省了儲存空間。
Blob 的事務格式提供了比 Calldata 更便宜的數據可用性。因為一方面,Calldata 存在於 Execution Payload 中,而 Blob 數據儲存在 Prysm 節點或 Lighthouse 節點(而不是 Geth)中,當合約需要讀取 Calldata 時,會消耗更多的資源。另一方面,Blob 數據是短期儲存,節點會在一個月後刪除 Blob 數據。儘管如此,GAS 成本仍會高於後兩種方案。
Validiums DA 模式
對於應用鏈類型的 Rollup(如過去的 dYdX、Immutable 等),通常採用 header Rollup 項目所引入的 Layer 2 可擴展性引擎(目前最常見的是 StarkEx,但 Zk 系列 header 項目也有類似的計劃)。在 DA 模式下,由於應用鏈計算量較大,他們更傾向於使用 Validiums,這是一種低成本、高吞吐量的方案。
Validium 的目標是利用鏈下數據可用性和計算,類似於 ZK-rollup,通過發布零知識證明來驗證以太坊上的鏈下交易。然而,與 ZK-rollup 將數據保留在鏈上不同,Validiums 將數據保留在鏈下,其成本比使用以太坊低 90%,使其成為替代方案中最具成本效益的解決方案。
但由於數據仍在鏈下,Validium 的實體營運商可以凍結用戶的資金。為防止這種極端情況,需要再次引入數據可用性委員會 (DAC) 計劃,DAC 必須通過其法定人數簽署每次狀態更新來確認已收到數據。這是一個有爭議的做法,因為你必須首先信任實體的安全性,而非鏈本身。Dankrad Feist(上述 EIP-4844 的創建者)在推特上直接點名了這個方案。
模塊化 DA
從模塊化的角度來看,重新設計 DA 層的方法有很多種,這可能導致各個項目的具體實現存在差異。因此,要詳細描述模塊化 DA 項目需要大量篇幅,其中,以 Celestia 項目為代表來闡述 DA 項目的設計。
Celestia
作為首個提出模塊化區塊鏈概念的項目,Celestia 在該領域中具有極高的知名度和先驅地位。其願景在於解決區塊鏈可擴展性和模塊化方面的問題。基於 COSMOS 架構構建的 Celestia 為開發人員提供了更大的靈活性,使他們能夠輕鬆部署和維護區塊鏈應用程序。同時,通過為 dApp 創作者和區塊鏈開發者提供模塊化、可擴展的區塊鏈架構,Celestia 支持各種應用程序和服務的需求,降低了部署區塊鏈的成本與複雜性。
工作原理和架構
解耦執行:Celestia 的邏輯在於將協議分解為不同的層,每一層關註特定的功能,從而可以重新組合以構建區塊鏈和應用程序。Celestia 主要關註層次結構中的共識層和數據可用性層。與某些 Layer1 類似,Celestia 使用 Tendermint(一種拜占庭容錯 (BFT) 共識算法)對交易進行排序。但與其他 Layer1 不同的是,Celestia 不處理交易的有效性,也不執行交易。它僅對交易進行打包排序和廣播,所有交易有效性規則均由客戶端的 Rollup 節點強製執行(即實現共識層和執行層的解耦)。
值得註意的一個關鍵點是「不推理交易有效性」。這意味著攜帶隱藏交易數據的惡意區塊也可以發布到 Celestia。那麼,驗證過程應該如何實施呢?Celestia 在這裡引入了兩個核心技術:2D Reed-Solomon 編碼和數據可用性採樣(DAS)。
單體區塊鏈的整體架構與 Celestia 的模塊化架構形成鮮明對比
DAS:該方案允許輕節點驗證區塊數據的可用性,而無需下載整個區塊。輕節點僅需一部分區塊數據進行採樣(具體實現依賴於 2D Reed-Solomon 編碼,詳見下文)。與之前提到的 Dac 不同,DAS 不依賴於可信實體的安全性;只要鏈足夠去中心化,數據就可被信任。
2D Reed-Solomon 編碼(糾刪碼):2D Reed-Solomon 編碼的核心思想是在行和列上分別應用 Reed-Solomon 編碼。這樣,即使二維數據的某些行和列出現錯誤,也可以進行糾正。通過對區塊數據進行編碼,將區塊數據劃分為 kk 個塊,排列成 kk 的矩陣,並通過多次 Reed-Solomon 編碼擴展為 2k2k 的擴展矩陣。計算擴展矩陣行和列的 4k 個獨立默克爾根(Merkle roots),這些默克爾根被用作批量中的區塊數據承諾。
Celestia 輕節點採樣 2k2k 數據塊。每個輕節點在擴展矩陣中隨機選擇一組唯一坐標,並向全節點查詢有關這些坐標和相應默克爾證明的數據塊。每個接收到正確默克爾證明的數據塊都將廣播到網路。
抽象地說,可以將區塊數據劃分為方陣(例如 8×8),通過編碼,在原始數據上添加額外的「校驗」行和列,形成更大的方陣(例如 16×16)。通過對這個大方陣內的部分數據進行隨機採樣並驗證其準確性,就可以確保整體數據的完整性和可用性,即使部分數據丟失或損壞,仍然可以使用校驗和數據恢復整個數據。
塊縮放:Celestia 實現了隨輕節點數量增加而實現縮放的功能。只要網路中有足夠的節點對整個區塊進行採樣,Celestia 就能保持安全性。這意味著隨著更多節點加入網路進行採樣,區塊大小可以相應地增加,而無需犧牲安全性或去中心化特性。然而,在傳統的單體區塊鏈上,增加區塊大小可能會犧牲去中心化,因為更大的區塊大小會提高節點下載和驗證數據的硬體要求。
主權 Rollup:這是 Celestia 首次提出的概念,它結合了多種區塊鏈設計元素,包括 Layer1 區塊鏈、rollup 以及早期比特幣網路中的 Mastercoin 等。主權 Rollup 與智能合約 Rollup(如 Optimism、Arbitrum、zkSync 等)之間的主要區別在於交易驗證方式。在智能合約 Rollup 中,交易由部署在以太坊上的智能合約進行驗證。而在主權 Rollup 中,Rollup 節點本身負責驗證交易。
主權 Rollup 將其交易發布到其他區塊鏈(如 Celestia)以進行排序和數據可用性處理。接著,主權 Rollup 的節點對正確的鏈進行確認。這種設計使得主權 Rollup 能夠從 DA 層繼承多個安全屬性,包括活躍度、安全性、重組抵抗和審查抵抗。
對於智能合約 Rollup,升級取決於結算層的智能合約。要升級 Rollup,需要修改智能合約。這可能需要多個簽名來控製誰可以發起智能合約的更新。儘管團隊控製升級多重簽名的情況很常見,但通過治理來控製多重簽名也是可行的。由於智能合約位於結算層,因此受到結算層社會共識的限製。
主權 Rollup 通過類似於 Layer 1 區塊鏈的分叉進行升級。發布新的軟體版本後,節點可以選擇將其軟體更新為最新版本,如果節點不同意升級,它們可以繼續使用舊軟體。這樣的選項使得社區中運行節點的人可以決定是否接受新的更改,即使大部分節點進行了升級,也無法強製它們接受升級。這種特性使主權 Rollup 成為真正的「主權」Rollup。
量子引力橋(QGB)是 Celestia 生態系統的關鍵組成部分,它充當了 Celestia 和以太坊(或其他 EVM L1 鏈)之間的橋樑,實現了兩個網路之間的數據和資產傳輸。通過引入 Celestium(EVM L2 Rollup)的概念,利用 Celestia 實現數據可用性,同時選擇以太坊作為結算層。
這樣就實現了充分利用兩個網路優勢,即 Celestia 的可擴展性和數據可用性,以及以太坊的安全性和去中心化特性。在 Celestia 上的驗證器可以運行 QGB,使 Celestium 能夠為區塊數據提供強大的數據可用性保證,而成本僅為以太坊 calldata 的一小部分。
QGB 是實現 Celestia 可擴展、安全和去中心化區塊鏈生態系統願景的關鍵部分。它促進了區塊鏈技術未來所需的互操作性。目前,該項目正在研究 Zk QGB,以進一步降低驗證的 Gas 成本。
DA 經濟學
我們來說說 DA 未來有多少經濟價值。
這個假設是由 Delphi 的研究員 Jon Charbonneau 提出的,基於 Polygon Hermez 的預測,即他們在 Danksharding 中最終每筆交易只需 14 個字節。根據上述 EIP-4844 規格,在 1.3 MB/s 的情況下,Layer2 可達到約 10 萬 TPS,預計收入將高達驚人的 300 億美元。
在如此巨大的利益驅使下,未來的 DA 市場競爭將異常激烈。除了三大解決方案之外,Stark 的 Layer3、zkPorter 以及其他一些模塊化 DA 項目也將加入戰局。因此,從現有的 Layer2 項目來看,通用鏈更傾向於使用以太坊 DA,而應用鏈和長尾鏈將成為「非正統 DA」的主要客戶。我個人認為,模塊化 DA 以及快速發展的 Layer3 將是未來的主流選擇。
結語
邁向去中心化依然是行業的主流理念,模塊化區塊鏈在本質上是對以太坊價值觀的延伸,也是試圖打破區塊鏈不可能三角的嘗試。儘管其設計富有多樣性,但這也導致了施工的複雜性。由於模塊化建設中有眾多模塊可供選擇,而不同模塊之間存在潛在的盲盒風險,如何構建更加穩定的模塊化系統便成為了一個需要關註的問題。另一方面,在模塊化趨勢的推動下,數十個 Layer2 將進一步削減流動性,跨鏈通信和安全也將成為未來發展的重點。最近,比特幣的模塊化也成為了熱門方向,其中一些方案具有一定的可行性,值得適度關註。
Leave a Review