详解区块链分层结构:不同开发框架的核心特征与价值
原文标题:《A&T View:Danksharding, Celestia 以及区块链分层结构》
撰文: Todd
前言
区块链分层结构 = Disaggregated Blockchain Layers = DBL
当前的市场中,关于 DBL 的叙事,不仅有 Celestia,更有 Danksharding,而后者标志着 Ethereum 正式进入模块化时代。
TL,DR;
-
相较于 Monolithic Blockchain,DBL 是一种更优秀的范式,也是当前区块链底层架构的主流趋势;
-
虽然都是 DBL,但 Danksharding 和 Celestia 的设计理念存在着本质的区别:Danksharding 最大程度的延续了以太坊的「安全性」V.S. 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 V.S. 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
P.S. 这里的 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。