區塊鏈分層結構(DBL)作為一種新的範式,讓我們可以在不妥協/ 盡可能少的妥協情況下實現對區塊鏈的擴容。
原文標題:《A&T View:Danksharding, Celestia 以及區塊鏈分層結構》
撰文: Todd
前言
區塊鏈分層結構= Disaggregated Blockchain Layers = DBL
當前的市場中,關於DBL 的敘事,不僅有Celestia,更有Danksharding,而後者標誌著Ethereum 正式進入模塊化時代。
TL,DR;
-
相較於Monolithic Blockchain,DBL 是一種更優秀的範式,也是當前區塊鏈底層架構的主流趨勢;
-
雖然都是DBL,但Danksharding 和Celestia 的設計理念存在著本質的區別:Danksharding 最大程度的延續了以太坊的「安全性」VS Celestia 用一定的安全性交換到了一些極為重要的「自由度」;
-
眾所周知,基於DBL 搭建的鏈通常在擴容和可定制兩方面具備顯著的優勢,但這裡還想強調「Sovereignty」(自定義特性的一種進階特性,鏈的運行方對鏈的狀態擁有獨立的控制權),這個特性對那些大社區型項目很重要;
-
不同的DBL 設計在擴容性(Scalability) / 安全性(Security) / 主權性(Sovereignty) / 工程量(Ease of Development) 方面有不同的表現(詳見圖1);
-
Celestia 的架構更適合大項目&大社區,他們有能力支撐Sovereignty;以太坊的各種架構對於新&工具類項目來說是最好的選擇,因為有最強的安全支撐和大量的用戶流量。
什麼是區塊鏈分層結構?
區塊鏈分層結構(感謝@polynya,個人認為這個說法比模塊化區塊鏈更準確)意味著將計算/ 存儲/ 共識這區塊產生的三大基本步驟拆分成相對獨立的三層,當前主流區塊鏈架構為非分層結構,即計算/ 存儲/ 共識三部分均有同一批節點來執行。
-
計算層(又名Execution Layer):負責執行用戶提交的交易,理論上這一層可支持任意的執行架構;
-
共識層(又名Consensus Layer):負責對運行了一段時間后區塊鏈的狀態進行確認;
-
存儲層(又名Data Availability,DA):確保相關數據的可用性&正確性。
區塊鏈分層結構價值何在?
擴容能力YYDS!
如果不想在不可能三角上做出任何妥協,但又要提升Monolithic Blockchain 的性能,那隻能寄希望於更好的硬件支持。
不幸的是,現在的硬件好像還無法支持這樣的要求( 建議閱讀 Vitalik 的闡述 )
Celestia Co-Founder Mustafa Al Bassam 對擴容性極其深刻的解釋
而DBL,作為一種新的範式,讓我們可以在不妥協/ 盡可能少的妥協情況下實現對區塊鏈的擴容,其背後的邏輯如下:
DBL 結構下的節點只需要專注於存儲/ 計算/ 共識三項中的一部分,工作量大幅下降,所以更多的硬件設備可以支持節點運行,即在面臨更大的區塊容量時,仍能保證網絡的安全性。
可定制能力也很重要,甚至比擴容能力更有價值!
zkVM、uVM,我們已經看到在以太坊L2 這個層面,有項目突破了EVM 限制並進行了各自的定制!
而Celestia 無疑在可定制化這條路上走的更遠:節點可以通過單方面分叉的方式來升級他們的版本,並用他們自認為合理的方式來解讀底層交易數據。
DBL 匯總與比較
圖1,1~5 分的評分越高代表著該方案在此項的表現越好
考慮到Celestia 進一步細化了分層架構,這裡將以太坊的共識層進一步拆分:
-
Txs Sequence Consensus(交易順序共識層):這一層負責對整個P2P 網絡中所有已支付Gas Fee 的交易進行先後排序;
-
Global State Consensus(全鏈狀態共識層):這一層負責對執行所有有效交易後的鏈的狀態進行共識;
這兩部分在以太坊中是在一層內完成的,被稱為Consensus Layer(共識層)。
在這樣的一套分析框架之上,我們對每一個開發框架的核心特徵與價值進行了一些闡述:
Ethereum 系列
目前主流的Rollup 模式(Current Rollup)
代表項目:Optimism, Arbitrum, StarkNet, Zk-Sync, Scroll, Fuel
此類方案可以稱之為是分層擴容的開端(Nervos 的確是更早的,但在市場普及方面較弱):外置一個Execution Layer,並將這Execution Layer 最終的共識交付給Ethereum 一層來完成;
設計的好處:通過分攤固定成本以及一些壓縮技術,來降低存儲交易數據的成本。
目前的Validium(Current Validium)
代表項目:Anytrust (by Offchain-labs), ZkPorter (by Matter Labs)
作為Rollup 的一種變體,Validium 方案的DA 層不再交由Ethereum 負責,而是通過一些鏈下的結構來提供DA 支持。
較Rollup,Validium 擁有更高的擴容性(區塊有限的空間不再需要存儲DA 相關的數據),但同時也捨棄了一定的安全性(畢竟DA 層的安全性不再由Ethereum 來保障);
目前市面上的Validium 在DA 層的選擇上有不少方案(DA 委員會,監督者等),均不同程度上的削弱了安全性,但整體上的安全性較Rollup 是顯著削弱。
Danksharding
代表項目:難度太大,目前只此一家,別無分號
作為目前ETH 2.0 最新的設計方案,Danksharding 在「DBL」這條路上走的比Rollup 和Validium 更遠:
將DA 獨立成一層(比Rollup 更高效),但又仍在Ethereum 的安全範圍內(比Validium 更安全);
Txs Sequence Consensus 和Global State Consensus 已分拆成先後兩步驟來進行(雖然仍放在一層內去執行),從而大幅降低了Global State Consensus 的門檻;
設計的好處:能夠在不降低整個區塊鍊網絡安全性的情況下推行大區塊(代表著更高的擴容能力)。其邏輯在於讓驗證節點能夠只驗證所有交易中的一部分(即區塊大一些不會給驗證節點帶來額外負擔)
如果對Danksharding 的細節感興趣,可以參閱 Delphi Digital 的闡述
Celestia 系列
作為徹底帶火DBL 概念的設計,Celestia 的基礎理念極為新穎:Celestia 只負責DA 層和Txs Sequence Consensus
Sovereign Chain
代表項目:暫無
這是Celestia 最原始(你也可以稱為基礎)的架構,即Celestia 只管DA 和Txs Sequence Consensus ,而再往上的兩層Global State Consensus 和Execution 則可自由發揮。
之所以稱之為「Sovereign Chain」 ,源於鏈(當然也可以是個Rollup)的運行者能夠在Global State Consensus 上自由發揮,即網絡在某個時刻的最終狀態由鏈的運行方獨立說了算(而不是像Ethereum 的Rollup 的最終狀態由Ethereum L1 的節點共識決定):我們把這種對鏈的最終狀態擁有獨立決定權的情形稱為擁有主權,Sovereign。
當然,你需要注意到主權鏈的最終安全性其實不完全享受Celestia 的保護,例如這樣的情形:
當Sovereign Chain 的運行方只執行了被Celestia 記錄交易中一部分的時候,Celestia 是無法強制要求主權鏈進行修正的;
即便Sovereign Chain 能夠通過欺詐證明/ 有效性證明來盡可能避免鏈運行者的作惡行為,但這樣的設計依然完全依賴於Sovereign Chain 這一層的執行者來實現,即 安全性很大程度上取決於Sovereign Chain 自身,無法完全依賴於Celestia,更不會像Ethereum 框架下的Rollup 能夠沿襲Ethereum 極強的安全性。
但我依然很推崇這樣的架構,即便是與其他Celestia 系列的架構相比:
-
鏈的節點可以自由地選擇以不同的方式來解析底層數據,包括在不分叉的情況下升級他們的客戶端,例如: 如果一個鏈的社區中兩個團體對區塊大小有不同的想法,這兩個團體完全可以獨立更新成不同的客戶端到以達到獨特的需求,但這兩個團體仍可以得到唯一正確的結果;
-
更重要的是鏈的社區能夠對鏈的情況擁有絕對的話語權,作為對比,Ethereum 框架下的Rollup 的行為受制於Ethereum L1 社區的共識。
Execution Rollup
代表項目:Cevmos, dYmension, Eclipse
Execution Rollup 的設計是在Celestia 的基礎之上搭建了一個通用的Global State Consensus 層(這裡稱為Hub,前述Cevmos 等幾個代表項目均是此層的表達),而開發者可以以這個State Consensus Hub 作為基礎來搭建多個Rollup;
這套設計某種意義上和以太坊現在的Rollup 框架有些類似:
Rollup(Execution Rollup)綁定Ethereum(Cevmos, dYmension, Eclipse)來實現Txs Sequence Consensus & Global State Consensus (Cevmos 等提供Global State Consensu,Txs Sequence Consensus 由Celestia 提供);
相較於前面的一些方案,這套進一步降低了開發&運營一個Rollup 的工作量:
-
比Sovereign Chain 少開發&運營一個Global Consensus Layer;
-
比Currnet Rollup 少支付一個費用高昂的DA 層;
但需要注意的是這個方案相較於Sovereign Chain 缺失了很大一部分可定制化能力,即基於此框架打造的Rollup 通常只能選擇其下層的State Consensus Hub 給定的幾個開發框架,且主權性並不具有。
這樣一套有些「中間」 味道的設計,某種意義上給區塊鏈領域補充了一種選項,就讓我們拭目以待。
Celestium
代表項目:暫無
Celestia 和Ethereum 的夢幻聯動:Celestia 作為Ethereum Validium 的DA 層,比Data Availability Committes 以及Guardians 等方案更為安全。
如果想要了解不同DA 層選項的詳細解析,可以查 看 這裡
Ethereum VS Celestia —— 不同的DBL 設計理念
你可能已經發現了:Danksharding(包括其他的Ethereum 系列產物)都是讓Ethereum Becon Chain ( 也可以說是L1 結構) 來負責Global State Consensus,而Celestia 系列的任意框架中並不會由Celestia 自身來負責這部分。
以下是我個人歸納的一些可能的原因:
-
Danksharding:作為最去中心化的區塊鏈(暫不考慮BTC 網絡),Ethereum 擁有全網最棒的安全性&魯棒性,所以我們看到Danksharding 在盡快的延續這部分價值。
-
Celestia:考慮到現在(大概率也包含未來)已幾乎不可能再有網絡能夠積攢到與Ethereum 匹敵的去中心化節點數量,且市場也並不需要第二個Ethereum,Celestia 選在在安全性上作出了一定的妥協,以換取了更多的自定義能力以及主權性。
Ethereum & Celestia 之外的DBL 方案
Nervos 系列
作為DBL 方向比Rollup 更早的先行者,Nervos 在2018 年便發布了分層架構宣言:
The Nervos Network has a layered architecture, with a single Layer 1 blockchain, the Nervos Common Knowledge Base (CKB), and many Layer 2 systems. Layer 1 is focused on providing security and decentralization, while developers can construct layer 2 systems (focused on functionality and performance) that are securely rooted in and interoperable with the Layer 1 CKB.
雖然從圖上來看與Current Rollup 極為相像,但Nervos 在L1 層面選擇了UTXO(而非以太坊的賬戶模型):
-
眾所周知在UTXO 之上開發智能合約十分困難,這也的確拖慢了整個生態的發展進程,但好在近期Nervos 推出了第一個支持EVM 兼容智能合約的L2;
-
也不是只有缺點,UTXO 在並行計算層面相較賬戶模型有顯著優勢:以UTXO 為基礎的L2–Fuel 對外展現了不錯的可能性;
Arweave 系列
代表項目:SmartWeave,Ever.Finance
PS 這裡的DA 比較特別:Arweave 不僅會存儲交易信息,同時也會存儲應用最新版本的代碼
這個設計利用了Arweave 來作為源生的DA 層,從而帶來了一個很特別的點:永久存儲的存儲鏈上面搭DA = 一直存在的DA!
但此方案也存在著明顯的缺失:
Arweave 作為存儲鏈,只會確保信息能夠正確存儲,而不會查驗被存儲信息的真實與否,而這意味著Arweave 並不會提供Txs Sequence Consensus,即基於Arweave 搭建的智能合約鏈需要自己負責Txs Sequence Consensus,Global State Consensus 以及Execution 這三部分。
SmartWeave 作為Arweave 官方推出的智能合約開發框架,讓開發者可以進行智能合約級別的開發;
而Ever.Finance 則是SmartWeave 的抗DDoS 優化版本。
Polygon 系列
代表項目:暫無
Polygon 也在DBL 方向提出了Avail,作為一種對Polygon 生態開發者的可選項的補充:
架構與Execution Rollup 類似,Avail 提供Celestia 的功能,而State Consensus Hub 則由Polygon 來承擔,開發者可在其上建立自己的Execution Rollup。