洞见未来:Celestia与模块化区块链
February 28th, 2022

撰文:RainandCoffee

编译:0xbread,TechFlow

模块化协议VS模块化软件

在我们开始研究模块化应用程序特定的区块链之前,首先要对模块化协议,和模块化软件进行区分。

我们先来了解一下,使用模块化软件创建的区块链不会是模块化的区块链协议。由于使用模块化软件构建的区块链可能仍会自行完成共识、数据可用性和执行操作,尽管是使用模块化软件构建的,但协议仍然是一个整体。

使用模块化软件构建的此类链的一个示例是使用 Cosmos SDK/Tendermint(Cosmos、Osmosis 等)构建的链,虽然是特定于应用程序的,但它并不是模块化的。另一个例子是 AVAX C-Chain,因为它自己处理所有三层。那么怎样才能使其成为模块化协议而不是使用模块化软件构建的个体协议?

Celestia解决了这个问题,在Celestia中您有一个模块化协议,因为它只处理数据可用性 (DA)。Celestia 的设计使执行和结算层可以锁定到 Celestia DA 层。

除了 Celestia 之外,目前还有模块化协议的例子吗?有的。Arbitrum、ZKSync 等侧链也是模块化协议,因为它们只处理执行并依赖于其他链(在本例中为以太坊)来达成共识、DA 和结算。

                                                           单片与模块化架构

今天的 "模块化-单片 "链将区块链软件堆栈分割成模块化的部分,而模块化链将区块链协议堆栈分割成各个专门的模块化层。这样做的原因是,随着时间的推移,在单片架构中,增长变得具有挑战性,因为它处理的事情变得得越来越大且越来越复杂。

模块化应用程序特定链

为了解释什么是模块化应用程序特定链,我们将首先查看大多数现有区块链的运作方式,然后查看 Cosmos 如何将应用程序构建为主权链,最后是 Celestia 正在构建的模块化应用程序链框架。

目前,大多数去中心化应用程序 (dApp) 都使用虚拟机(如EVM)构建在现有区块链之上,例如 Ethereum,直到最近,这都是最好用的方法。然而,随着 Cosmos SDK 及其共识引擎 Tendermint 的发布,创建了一种新的 Dapp 制作方式——主权应用程序特定链。

                                                     Cosmos建筑

在 Cosmos 中,区块链的应用程序部分不是虚拟机,然后在其上构建dApps,而是允许创建 dApps 作为区块链本身的应用程,这就是我们所说的特定于应用程序的区块链。这样做意味着将您的 dApp 开发为主权区块链,您只需定义特定应用程序所需的交易类型和状态转换功能。这使得链总是以相同的最终状态结束,这极大地提高了链的速度和可扩展性。

现在,Celestia 有什么优点?Celestia 更进一步,创建了模块化的应用程序特定链。他们怎么做到的?Celestia 为区块链提供数据可用性 (DA) 层,包括Rollups。这是一个共识层和执行层分开的区块链,因为它不提供像以太坊这样的链上智能合约环境,只提供共识和数据可用性。这意味着 Celestia 提供数据可用性层,而其他人可以在 Celestia 之上构建他们的执行层和智能合约层。建立在上面的所有层仍然需要检查彼此的块是否包含在 Celestia 数据可用性链中,因此能够以最小的信任度验证数据,这提供了很大的安全性。

因此,我们可以得出结论,模块化区块链是分离单个区块链的核心组件,并可以在具有共享 DA 层的单独层上运行它们的结果。

分层

数据可用性层

数据可用性(DA)允许我们通过仅下载该块的一小部分来以非常高的概率检查该块的所有数据是否已发布。数据可用性层是需要的,以便能够检测出欺诈行为,同时也能重新创建整个链。为什么 DA 层很重要?

因为Rollups依赖于数据可用性来保证其安全性。同样,跨链互操作性也依赖于轻型客户端,而轻型客户端通常是不安全的,因为它们会做出多数假设。然而,对于 Celestia来说,DA 轻客户端不需要这个假设(因为他们不验证交易,而只检查每个块是否具有共识以及数据是否可用于网络),这提供了安全的跨链互操作性。基础层(DA层)只保证消息的可用性,不保证结算或执行。

结算/执行层(Rollups on Rollups)

Rollups 的结算层是一个链,Rollups 有一个信任最小化的双向桥使用结算层上的合约(就像以太坊上的 Rollups 一样)。这使得代币可以在Rollup和结算层之间或通过结算层在Rollups之间以信任最小化的方式转移。

如前所述,目前大多数 Rollup 使用以太坊主链进行结算。但是,以太坊链并不是Rollup使用的理想结算层,因为它与使用该链进行智能合约交易的其他非Rollup应用程序共享。与专门的结算层相比,以太坊链是非专业化的并且规模较小。一个理想的Rollup专用结算层是仅允许它得智能合约、Rollup之间的简单桥接传输以及强制非Rollup应用程序使用执行层的结算层。

结算Rollup将为执行Rollup提供最小开销的解决方案来引导其网络,因为目前在启动和操作Rollups方面存在巨大开销。因此,交易由构建在上面的应用程序执行,这使得它们具有极强的可扩展性,这意味着中间层(结算)将是一个Rollups,也可以有自己的Rollups。

在正常的区块链中,共识层和执行层都在同一层上,并且都由同一组验证器执行。相反,Celestia 所做的是将共识和执行层分开,使开发人员能够在 Celestia 数据可用性层之上部署他们的执行层。

执行层将作为他们自己的区块链存在,在那里他们可以决定专门化和优化的内容。

执行层将由各种执行链组成,无论是 EVM(在 CEVMOS 之上)还是 Cosmos SDK Rollups。Rollups 为开发人员和用户提供了可扩展性,因为协议是在第 1 层链上执行的。

关于以太坊Rollups,目前,以太坊上的所有Rollups都在以太坊上运行合约,其中所有资产都在结算层确认,因此如果要在另一个协议上启动,大多数Rollups都希望相同。Cevmos(Celestia、EVMos、 CosmOS)将实现这一点。

主权

模块化区块链的另一个巨大优势是它们的多主权。通过使用模块化区块链,治理可以划分到您的应用程序中,并且不会与其他应用程序重叠。如果您的应用程序出现问题,治理可以修复它,而不会干扰集群中的其他应用程序。以前,如果建立在以太坊上的去中心化应用程序被黑客入侵并且资金被盗,如果治理不同意,就不可能恢复损失。要修复它,您必须硬分叉整个链。硬分叉链以未经许可的方式离开以太坊,但用户可能不想使用您的分叉,因为它的安全性低于原始分叉。通过分叉 EVM,这意味着您也在分叉共识层。

                                单片链上的硬分叉与不分叉共识层的模块化链上

现在,对于 Celestia,您可以分叉构建在顶部的Rollup。在以太坊上,除非整个以太坊链被分叉,否则你无法分叉Rollups,因为它们使用以太坊作为结算层。在 Celestia 上,Rollups不使用 Celestia 作为结算层,因此可以同时存在多个分叉,这就鼓励了实验,为新的概念铺路。

比较

模块化区块链与单体区块链相比如何?让我们以使用模块化软件(例如 Avalanche)构建的非模块化区块链为例。现在,在 Avalanche 的情况下,子网是没有共享安全性的独立链,一个新的子网需要引导一个新的共识网络。

所有 Avalanche 子网都自行处理共识、数据可用性和执行。这使它们成为单一的整体实体,因为使某些东西模块化的原因是将它们分成单独的层。

因此,我们可以得出结论,目前使用某些模块化软件的其他链不是模块化协议,而是原型(带有Rollups的以太坊)或伪模块化(AVAX)。

结论

我们可以将模块化区块链定义为将执行、共识和数据可用性的组件分开的区块链,而单体区块链则自行处理这三者。这意味着 Celestia 是一个模块化区块链,因为它只处理 DA,而建立在顶部的Rollups处理执行和结算。因此,真正的模块化链可以实现:

  1. 共享安全
  2. 在不引导新共识网络的情况下启动新链
  3. 在不增加节点要求的情况下进行扩展

深潮 TechFlow 是由社区驱动的深度内容平台,致力于提供有价值的信息,有态度的思考。

社区:

公众号:深潮 TechFlow

电报:https://t.me/TechFlowPost

推特:@TechFlowPost

进微信群添加助手微信:TechFlow01

Subscribe to 深潮TechFlow
Receive the latest updates directly to your inbox.
Verification
This entry has been permanently stored onchain and signed by its creator.
More from 深潮TechFlow

Skeleton

Skeleton

Skeleton