模組化區塊鏈本質上是對乙太坊價值的延伸,也是打破區塊鏈不可能三角的嘗試。
作者:Zeke,YBBCapital Researcher
封面:Photo by Anton Filatov on Unsplash
前言
區塊鏈的三角困境在過去一直是業界難以逾越的鴻溝,而前仆後繼的公鏈專案總想通過不同架構的設計試圖跨越這道鴻溝,並成為所謂的「乙太坊殺手」。。 然而事實是殘酷的,這麼多年來乙太坊一人之下的地位從未被超越過,區塊鏈的不可能三角也依舊牢不可破。 那麼究竟是否存在一種方法為公鏈補足其缺口,以填滿不可能三角? Mustafa Albasan 對於模組化區塊鏈的想法正是萌芽於此。
模組化的起源
模組化區塊鏈的誕生源於兩篇白皮書,2018 年時 Mustafa Albasan 與 Vitalik 共同撰寫了一篇名為《Data Availability Sampling and Fraud Proofs》的論文。 該文描述了一個通過允許輕用戶端接收並驗證來自完全節點的欺詐證明,以及設計數據可用性證明系統,減少了鏈上容量與安全之間的權衡,從而在不犧牲安全和去中心化的前提下,解決區塊鏈的擴展性。
接著在 2019 年,Mustafa Albasan 撰寫《Lazy Ledger》的白皮書時,詳細介紹了一個新架構,其中區塊鏈僅用於排序和保證交易數據的可用性,而不負責交易的執行和驗證。 該架構的目的是解決現有區塊鏈系統的可擴充性問題。 當時他把這個稱之為「智慧合約用戶端」。
而智慧合約的執行則通過另一個執行層在這個用戶端上執行,這便是 Celestia 的雛形。 之後 Rollup 的出現,使得這個構想更具確定性。 因為 Rollup 的邏輯就是離鏈執行智慧合約,再將結果彙聚為證明上傳至「用戶端」的執行層。
通過對區塊鏈的架構以及新擴容技術進行反思,他定義了一個新範式,並將其稱之為「模組化區塊鏈(Modular Blockchain)」。
什麼是模組化區塊鏈
傳統單片區塊鏈的架構通常由四個功能層組成:
- 執行層(Execution layer)——執行層主要負責處理交易和執行智能合約。 它包括交易的驗證、執行和狀態的更新;
- 數據可用性層(Data-availability layer)——數據可用性層在模組化區塊鏈中負責確保網路中的數據可被訪問和驗證。 它通常包括數據的存儲、傳輸和驗證等功能,以保證區塊鏈網路的透明度和信任;
- 共識層(Consensus layer)——負責節點間的協定,以達成網路中數據和交易的一致性。 它通過特定的共識演算法,如工作量證明(PoW)或權益證明(PoS),來驗證交易並創建新的區塊;
- 結算層(Settlement layer)——負責完成交易的最終結算,確保資產的轉移和記錄在區塊鏈上永久保存,決定區塊鏈的最終狀態。
單片區塊鏈使這些元件的工作都集成於同一個系統內完成,這種高度集成的設計方式必然會導致一些固有問題的存在,比如可擴充性差、靈活性差、維護以及更新困難。
而 Celestia 認為單片區塊鏈不再需要自己完成所有事情。 Web3 未來的演變將是「模組化區塊鏈」,通過使區塊鏈模組化,並將其過程分配到多個「專屬層」中,每個「專屬層」負責處理特定的功能層,從而創建一個更優的系統,並且該系統應具備獨立、安全、可擴展性的特點。
模組化設計原則
如果一個設計將系統分解成可以交換或替換的較小部分,那麼這種設計就是模組化的。 其核心理念是只專注於做好部分事(部分或單個功能層的運作),而不是試圖做所有事情。 如果用我們過去較為熟悉的項目來舉例,Cosmos Zones、Polkadot Parachains 其實都可視為模組化的一種。
新視角
基於模組化的新視角來看,對單片區塊鏈及其所屬的模組化堆疊,進行再設計的空間將極大的提升。 具體用途和架構各不相同的模組化區塊鏈都可以通過組合達成協同工作。 在設計多樣化的可能性下,這條賽道也誕生了非常多有趣的創新專案。 而下文將以模組化視角去討論目前關於不同功能層的爭議及 Celestia 是如何詮釋「模組化」的。
圍繞乙太坊為中心的執行層
如果把 Rollup 看作對於模組化的執行層,我們會發現模組化執行層的項目幾乎都是建立在乙太坊之上的。 其原因自然也不言而喻,乙太坊擁有大量資源做為護城河並且去中心化程度是可選擇里最強的,但其可擴充性卻很差,所以在功能層的再設計方面潛力極大。 從近期上線的 Move 系語言公鏈(Aptos、Sui)的慘澹對比乙太坊上 Layer2 的空前盛況,也不難看出區塊鏈的基建敘事也從做公鏈轉向為做乙太坊的 Layer2。 那麼模組化的存在究竟是好是壞? 圍繞乙太坊為中心的執行層是否扼殺了公鏈的創新?
區塊鏈擴容圖景
首先以執行層為視角出發,對現有的鏈進行再歸類。 此處引用 Nosleepjon 文章《塔圖因的雙太陽》對區塊鏈目前的執行層分類做個說明。
目前的區塊鏈可被劃分為四類:
1. 單線程單片區塊鏈:一次處理一筆交易的單體區塊鏈。 由於限制,其中大多數已轉向 Rollup 或水平擴容路線圖。
代表專案:乙太坊、Polygon、BNB Chain、Avalanche
2. 並行處理單片區塊鏈:一次處理多個交易的單體區塊鏈。
代表專案:Solana、Monad、Aptos、Sui
3. 單線程模組化區塊鏈: 一次處理一筆交易的模組化區塊鏈。
代表專案:Arbitrum、Optimism、zkSync、Starknet
4. 並行處理模組化區塊鏈: 一次處理多個交易的模組化區塊鏈。
代表專案:Eclipse、Fuel
單片並行處理架構 VS 模組化架構
目前對於該採用那種方案,說法繁多,尤其是在模組化與整體並行處理這兩個概念間的對比。 陣營也分為三種:
模組化陣營:模組化擁護者(大多也是乙太坊擁護者)認為單片區塊鏈不可能解決區塊鏈的不可能三角。 在乙太坊上進行疊樂高才能在具備安全與去中心化特性的前提下,得到可擴充性。 且模組化具備更多的控制權和可定製性。
單片並行處理陣營:此陣營(引用 Kodi 與 espresso 在《單片 VS 模組化:誰才是區塊鏈的未來?》的觀點)認為單片並行處理的新公鏈架構(Move 系,Solona 等)擁有高度的集成性,整體性能會優於模組化的碎片化設計,並且模組化的架構也並不安全,尤其是需要大量跨鏈通信,駭客的攻擊面反而更廣。
中立陣營:當然也有持中立態度,認為兩者最終能共存的。 比如 Nosleepjon 認為這個遊戲的終局是:兩者各有優點,公鏈的競爭還會存在,Rollup 之間則相互競爭。
EndGame
這個問題的重點,實際上可簡化為模組化的摩擦缺點(跨鏈不安全、系統不流暢等)是否大於新公鏈的中心化問題。 從市場來看這個爭論,不論是 Rollup 中心化排序器的缺陷還是跨鏈橋的可能存在的危險性,都沒有讓人們轉向新的公鏈。 是因為這些問題目前看來都有改進的空間,而新公鏈卻複製不了乙太坊鏈上龐大的生態護城河與去中心化優勢。
另一方面,新公鏈在架構上雖然擁有性能及一體化的優勢,但生態上都是對乙太坊生態的簡單 Fork,同質化程度過高,也缺乏流動性。 沒有什麼獨佔應用能體現自身架構優勢,自然也就沒有讓人們不得不放棄乙太坊生態的理由。 而 Rollup 的可塑性足夠高,未來新架構的 Rollup 提升空間還很大。 當 Rollup 也具備非 EVM 鏈大部分優勢時,“Solana Summer” 這種情況以後很難發生。 所以在這個問題上,我認為模組化的摩擦缺點小於公鏈中心化問題。 而中立的情況似乎也不存在,乙太坊的虹吸效應會如同「iPhone」一樣,將大量注重可擴展性的開發者吸引到二層去,新公鏈則會成為鬼城。
關於基建的未來,我無疑是更傾向於模組化,乙太坊的分型擴容也將是公鏈遊戲 EndGame 的開始,Layer2 之間競爭通用鏈,Layer3 之間競爭超級應用鏈。
目前一級市場正在融資的項目情況也印證了這點,除了大量的乙太坊二層專案外,就是對比特幣的擴容項目,幾乎看不見新公鏈的身影。
但話又說回來,行業總是建立在乙太坊上發展,並且現在的趨勢有點過度集中的味道,這種現狀真的好嗎? 缺乏競爭會讓一個行業發展停滯,行業需要多樣性,需要更多選擇。 但新公鏈如何創造破局的苗頭,到目前為止都還沒有看到。 當乙太坊不斷完善自身缺點的同時,如何找到更大的縫隙去做精準打擊是非 EVM 系需要重點考量的問題。
DA 方案的競技場
說完了執行層的爭議,我們再看數據可用性層(DA 層)的爭議,關於 Rollup 應該採用哪種數據可用性方案爭論一直是業界近期的熱門話題,起因則是乙太坊基金的研究員 Dankrad Feist 的一條推文討論了相關方面的話題。 並在觀點中明確指出不使用乙太坊 DA 的 Rollup 不是 Layer2,那麼過去的 Layer1 戰爭是否會演變為正統(採用乙太坊 DA)Layer2 與非正統 Layer2 之間的戰爭? 那麼目前業內對於 DA 的解決方案主要有以下三種:
一. 公鏈做為結算層
以乙太坊為例,在 Rollup 進行一筆交易時向乙太坊遞交的費用主要包括以下幾類:
執行費用(Execution Fee): 對執行交易所需計算資源的補償。 它包括了執行交易所需的 gas 費用,通常與交易的複雜性和執行時間成正比。 在 Rollup 中,執行費用可能會包括在鏈下執行交易的費用,以及生成和驗證交易證明的費用;
狀態費用(State Fee): 狀態費用與更新乙太坊主鏈上的狀態相關。 在 Rollup 中,這包括了將新的狀態根提交到主鏈的費用。 每當 Rollup 聚合器生成一個新的狀態根並將其提交到主鏈時,都會產生狀態費用。 這種費用可能與狀態更新的頻率和複雜性成正比;
數據可用性費用(Data Availability Fee): 將數據發佈至 Layer1 的費用。
在這些費用中數據可用性費用的佔比最大,並且費用高昂,譬如 Arbitrum 在今年 5 月 6 日時由於乙太坊的 Gas 費激增,單日支付給了乙太坊 376.8ETH 的天價 Gas 費。
這是由於 Rollup 在上傳數據至乙太坊時是使用 Calldata 的形式上傳的,且永久儲存這些數據,所以費用非常昂貴。 但好處是擁有三個方案中最好的安全性和正統性,目前該方案的成本下降需要等待坎昆升級的 EIP-4844 更新。 通過引入 Blob carrying Transactions 的交易格式。 使交易格式與普通的交易格式相比,多了一個 Blob 的位置可以用來存放 Layer2 的數據。 而且,Blob 資料在一個月後會被節點刪除,從而大幅節省了存儲空間。
Blob 這種交易格式能夠提供比 Calldata 更廉價的數據可用性。 主要有兩方面原因:一方面,Callda 存在於 Execution Payload 中,而 Blob 數據存儲於 Prysm 節點或者 Lighthouse 節點中(而不是在 Geth 中),相比而言 Calldata 需要被合約讀取時所消耗的資源要多很多; 另一方面,Blob 數據是短期存儲,一個月後節點會刪除 Blob 數據。 但其 Gas 費用依然會高於後兩種方案。
二.Validiums DA 模式
對於應用鏈類型的 Rollup 來說(比如曾經的 dYdX、Immutable 等),它們通常使用的是頭部 Rollup 專案推出的二層可擴展性引擎製作(目前最多的是 StarkEx,但 ZK 系的頭部專案都有類似的方案)。 而在 DA 模式上由於應用鏈計算量更大,它們更傾向選擇使用 Validiums 這種低成本、高輸送量的方案。 Validiums 的原理是利用鏈下數據可用性和計算來設計,類似於 ZK-Rollup,通過發佈零知識證明以驗證乙太坊上的鏈下交易。 然而,不同於 ZK-Rollup 將數據保持在鏈上,Validiums 將數據保持在鏈下,對比使用乙太坊的方式費用下降 90%,是可選擇情況下最具成本效益的解決方案。
但由於數據保持在鏈外,Validium 的實體運營商可以凍結用戶的資金。 為了防止極端情況發生,必須再引入了一個數據可用性委員會(DAC,Data Availability Committees)方案,DAC 必須通過其法定人數對狀態的每次更新進行簽名來確認它已收到數據。 這是一種頗具爭議的做法,因為你首先得相信實體的安全性而不是鏈。 Dankrad Feist(上文 EIP-4844 的提出者)發表的推文中,直接點名的便是這種方案。
三. 模組化 DA
從模組化的角度來說,DA 層的再設計具有多種方式,可能會導致不同專案的具體實現方式有較大差別,所以對於模組化 DA 專案的詳細說明需要大量篇幅,此處則以 Celestia 為代表作為 DA 專案的說明。
Celestia
接文章開頭部分,做為模組化區塊鏈概念的首個提出者, Celestia 是該賽道中最為知名也是最早期的專案。 其願景旨在解決區塊鏈擴展性和模組化的問題。 Celestia 為開發者提供了更多靈活性,使他們能夠更容易地部署和維護區塊鏈應用程式。 同時,它還在降低部署區塊鏈的成本和複雜性,為 dApp 建立者和區塊鏈開發者提供了一個模組化、可擴展的區塊鏈架構,以支援各種應用和服務的需求。
工作原理與架構
解耦執行: Celestia 的邏輯是將協定分成不同的層級,每個層級專注於特定的功能,然後可以重新組合這些層級來構建區塊鏈和應用程式。 Celestia 則專注於層級中的共識和數據可用性層。 與一些 Layer1 類似,Celestia 採用拜占庭容錯(BFT)共識演算法 Tendermint 進行交易排序,但又不同於其它 Layer1。 Celestia 不會推理交易有效性,也不執行交易,只進行交易的打包排序、廣播,所有交易有效性規則均由 Rollup 節點在用戶端強制執行(即解耦共識層和執行層)。 那麼注意一個關鍵點,“不推理交易有效性”。 也就是隱瞞交易數據的惡意區塊,也可發佈到 Celestia 上。 所以校驗過程應該如何實現? Celestia 在此引入了兩個核心,二維 Reed-Solomon 編碼與 Data Availability Sampling(數據可用性採樣,簡稱 DAS)。
DAS:此方案用於輕節點驗證塊數據的可用性,此方式不需要節點下載整個區塊。 只需要採樣塊的部分數據即可(具體的實現方式需要通過二維 Reed-Solomon 編碼,下文會詳細說明)。 不同於上文說到的 DAC,DAS 無需相信實體的安全,只需要鏈足夠去中心化,數據就可相信。
二維 Reed-Solomon 編碼(糾刪碼):二維 Reed-Solomon 編碼的基本思想是對行和列都分別應用 Reed-Solomon 編碼。 這樣,即使在二維數據的某些行和列中出現錯誤,也可以進行糾正。 那麼通過對塊數據進行編碼,將塊數據分割成 kk 的塊,排列成 kk 的矩陣,並通過多次 Reed-Solomon 編碼擴展為 2k2k 擴展矩陣。 計算擴展矩陣的行和列的 4k 個獨立的默克爾根; 這些根的默克爾根用作塊頭中的塊數據承諾。 Celestia 輕節點對 2k2k 數據塊進行抽樣。 每個輕節點隨機選擇擴展矩陣中的一組唯一座標,並查詢全節點有關這些座標的資料塊和相應的默克爾證明。 每個接收到的,帶有正確默克爾證明的數據塊都會被廣播到網路中。
如果抽象一些理解,也可以這麼說將區塊數據分成一個方陣(例如,8×8),通過編碼,為原始數據添加額外的 “校驗” 行和列,形成一個更大的方陣(16×16)。 通過隨機抽樣這個大方陣中的部分數據,並驗證其準確性,即可確保整體數據的完整性和可用性。 即使部分數據丟失或損壞,仍然可以利用校驗數據恢復整塊數據。
區塊縮放:Celestia 會隨著輕節點數量的增加而擴展。 只要網路上有足夠的節點來抽樣整個區塊,Celestia 就會保持安全。 這意味著隨著更多的節點加入網路進行抽樣,區塊大小可以相應地增加,而不犧牲安全性或去中心化。 而在傳統的區塊鏈上這樣做會犧牲去中心化,因為更大的區塊大小會為節點下載和驗證數據增加更大的硬體需求。
主權 Rollup:這也是 Celestia 首創的概念,結合了各種區塊鏈設計的元素,包括 Layer 1 區塊鏈、Rollup 和像 Mastercoin 這樣的早期比特幣網路。 主權 Rollup 和智慧合約 Rollup(OP、ARB、ZKS 等)之間的關鍵區別在於交易如何被驗證。 在智慧合約 Rollup 中,交易由 乙太坊上的智慧合約驗證。 相反,在主權 Rollup 中,Rollup 本身的節點驗證交易。
主權 Rollup 將其交易發佈到另一個區塊鏈(如 Celestia)以進行排序和數據可用性。 主權 Rollup 的節點然後確定正確的鏈。 此設計允許主權 Rollup 從數據可用性(DA)層繼承多個安全性方面,包括活性、安全性、重組抵抗和審查抵抗。
對於智慧合約 Rollup,升級取決於結算層上的智能合約。 升級 Rollup 需要更改智能合約。 可能需要多簽名來控制誰可以啟動對智慧合約的更新。 儘管團隊控制升級多簽名很常見,但可能通過治理使多簽名受控。 由於智能合約存在於結算層上,它們也受到結算層的社會共識的約束。
主權 Rollup 通過像第一層區塊鏈那樣的分叉進行升級。 發佈新的軟體版本,節點可以選擇將其軟體更新到最新版本。 如果節點不同意升級,它們可以繼續使用舊軟體。 提供選擇讓社區,即運行節點的人,決定他們是否同意新的更改。 即使大多數節點升級,它們也不能被迫接受升級。 與智慧合約 Rollup 相比,這個特性使得主權 Rollup 成為 “主權” Rollup。
量子重力橋(Quantum Gravity Bridge 簡稱 QGB):Celestia 生態系統的關鍵元件,它作為 Celestia 和 Ethereum(或其他 EVM L1 鏈)之間的橋樑,實現兩個網路間的數據和資產轉移。 通過引入了 Celestium 的概念(EVM L2 Rollup),使用 Celestia 進行數據可用性,但在乙太坊上結算。 從而達到同時利用兩個網路的優勢:Celestia 的可擴展性和數據可用性,以及乙太坊的安全性和去中心化。
Celestia 上的驗證者可以運行 QGB,使 Celestium 以低於 Ethereum 的 Calldata 成本的部分提供塊數據的強數據可用性保證。
QGB 做為 Celestia 實現可擴展、安全和去中心化區塊鏈生態系統願景的關鍵部分。 它實現了區塊鏈技術未來所需的互操作性。 而專案目前還在製作 Zk QGB,進一步降低驗證的 Gas 費用。
DA 經濟學
我們再來聊下 DA 具備多大的經濟價值。
此假設基於 Polygon Hermez 預計他們最終每筆交易只需要 14 個字節,在當前 Danksharding 規範 1.3 MB/s 下,Laeyr2 的 TPS 可以達到 10 萬左右,那麼預計的收益將達到 300 億美元這個驚人的數位。
如此巨大的蛋糕下,DA 市場未來的紛爭將是非常激烈的。 目前除了三個主流方案外,還有 Stark 的分型縮放 Layer3、zkPorter,以及多個模組化 DA 專案都將加入戰爭。 那麼從現有 Layer2 專案來看,通用鏈是完全傾向於使用乙太坊 DA 的。 而應用鏈及長尾鏈將是「非正統 DA」的主要客戶。 我個人的看法是模組化 DA 和不久後的 Layer3 將會成為未來的主流選擇。
結語
在去中心化上前進依舊是這個行業的主流觀念,模組化區塊鏈本質上是對乙太坊價值的延伸,也是打破區塊鏈不可能三角的嘗試,雖然設計上充滿了多樣性,但也使構建更繁瑣複雜。 而模組化搭建里由於模組又具備多種選擇,不同模塊的風險都是一個盲盒,如何構建一個較為穩定的模組化系統是需要注意的地方。 另一方面的影響是,在模組化風潮的帶動下數十條 Layer2 也將流動性再次割裂,跨鏈通訊與安全性也會是未來的重點。 而 BTC 的模組化也是最近較熱的方向,並且有了一些稍微可行的方案,也可適當關注。
免責聲明:作為區塊鏈資訊平臺,本站所發佈文章僅代表作者及嘉賓個人觀點,與 Web3Caff 立場無關。 本文內容僅用於資訊分享,均不構成任何投資建議及要約,並請您遵守所在國家或地區的相關法律法規。