toddz

Posted on Jul 20, 2022Read on Mirror.xyz

Danksharding, Celestia 以及区块链分层结构

区块链分层结构 = Disaggregated Blockchain Layers = DBL

当前的市场中,关于DBL的叙事,不仅有Celestia,更有Danksharding,而后者标志着Ethereum正式进入模块化时代 >>> 区块链分层结构 YYDS

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系列

1. 目前主流的Rollup模式(Current Rollup)

代表项目:Optimism, Arbitrum, StarkNet, Zk-Sync, Scroll, Fuel

此类方案可以称之为是分层扩容的开端(Nervos的确是更早的,但在市场普及方面较弱):外置一个Execution Layer,并将这Execution Layer最终的共识交付给Ethereum一层来完成;

设计的好处:通过分摊固定成本 以及 一些压缩技术,来降低存储交易数据的成本。

2. 目前的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是显著削弱。

3. 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 & 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。