万字长文研究 Celestia 的潜在功能和模块化世界的未来_ARK:WAR

早在 2019 年,当我们(Maven11)投资 LazyLedger(现在叫 Celestia)时,模块化一词在区块链设计上还没有得到普及。但在过去的一年里,它已经被像 polynya 这样的研究人员、大量的 L2 团队和无数其他人员所普及了,当然还有 Celestia Labs 团队 -- 他们在 LazyLedger 的第一篇博文中创造了这个词,与分离共识和执行有关。

正因为如此,我们很高兴能提出我们对 Celestia 投资的最新概述。它将提供对我们所设想的模块化世界的见解,以及在这样一个生态系统中的各个层次和协议,及为什么我们对它提供的潜在功能如此兴奋。

目前,大多数正在运行的公共区块链都是单体实体。所谓单体,我们指的是一条可以自行处理数据可用性(DA)、结算和执行的链。现在,已经有了一些单体链的变化,特别是关于以太坊上的 Rollup 和 Avalanche 上的子网(Subnet)。它们含有模块化组件,然而,这些并不是最真正意义上的模块化区块链。

让我们定义一下我们说的“模块化”是什么意思,以免产生误解。当我们说模块化时,我们指的是通常组合在一起的层是解耦的事实。这意味着什么呢?这意味着链的三个组成部分是解耦的,所以要么处理执行、要么处理共识或数据可用性。这意味着你可以把模块化这个词放在 rollup 上,因为它们只处理执行。而以太坊作为单一的实体处理其他一切。

在 Celestia 的案例中,我们可以把模块化这个词放在它身上,因为它只处理数据可用性和共识,它将结算和执行委托给了其他层。当然,这些层也是模块化的,因为它们只处理部分组件本身。这意味着在以太坊的情况下,我们不能称其为模块化区块链,因为关于执行组件的外包只发生在其当前的 rollup 上。尽管如此,以太坊仍然能够自行处理执行,同时也允许 rollup 在链外批量交易。这意味着,在其目前的实施中,以太坊仍然是一个单体链。不过,以太坊仍然是理想的结算层,同时也是最去中心化和最安全的智能合约链。

你可能会说那 Polkadot 或 Avalanche 呢?Avalanche 不是模块化的网络,它只是将能够处理区块链所有组件的网络分开。这意味着它们不是模块化的扩展,而是通过横向利用其他单体链来扩展。Polkadot 的并行链处理执行,类似于 rollup,同时将区块发送到中继链以达成共识和数据可用性。然而,中继链仍然确保交易的有效性。

随着时间的推移,单体链的增长会导致大量的拥塞和效率低下。如果我们想让更多的人加入进来,那么局限于使用一个单一的链来达到所有目的是根本不可行的。因为它给终端用户造成了极高的费用和延误。而这正是我们看到越来越多的链决定拆分链的原因。我们都听说过传说中的合并(Merge),它将把以太坊转成 PoS 链。然而,他们也计划最终转向分片。所谓分片是指将区块链横向分割成几块。这些分片将纯粹地处理数据可用性。

这与 rollups 一起组成了以太坊社区当前计划解决其可扩展性问题的方式。但现在还有其他方法吗?当然有 -- 我们看到 Avalanche 通过子网(Subnets)走向了轻微的模块化未来,然而,正如前面解释的那样,我们不会把它归类为完全的模块化。

为了更好地理解各种“模块化”架构的功能,让我们试着把它们画出来,以便我们更好地了解它们的区别。

首先,让我们看看现存最大的智能合约区块链,以太坊目前的架构以及未来启用分片后的架构。

当前的以太坊架构

目前,以太坊处理区块链的所有组成部分。然而,它也将一些执行工作迁移到 L2 rollups 上,然后将交易批量化,并在以太坊上结算。在未来,通过分片,该架构将类似于下图所示:

分片后的以太坊

这将把以太坊变成一个统一的结算层,而分片将处理数据可用性。这意味着,分片将只是 DA 环境,供 rollup 提交数据。在分片上,验证者只需要为他们正在验证的分片存储数据,而不是整个网络。分片最终会让你在轻节点上运行以太坊,类似于 Celestia。

在OpenSea进行过交易的以太坊地址数已超过80万:12月16日消息,据Dune Analytics数据显示,在Open Sea进行过交易的以太坊地址数已超过80万。同时,在OpenSea进行过交易的Polygon地址数已超过75万。[2021/12/16 7:43:56]

对于 Avalanche 来说,他们的主要扩展主张是允许轻松创建单一区块链 -- 即其子网(Subnet)。Avalanche 的架构类似于下图所示:

Avalanche 及其子网架构

子网是一组验证区块链的新验证者。每个区块链正好由一个子网来验证。所有 Avalanche 子网都会自行处理共识、数据可用性和执行。每个子网也将有自己的 gas 代币,由验证者指定。目前已经上线的子网的一个例子是 DefiKingdoms 子网,它使用 JEWEL 作为其 gas 代币。

在我们继续看 Celestia 的架构之前,让我们先看看 Cosmos。Celestia 在很大程度上借鉴了 Cosmos,并将通过 IBC 与之进行大量互动,因为它也是用 Cosmos SDK 和 Tendermint 的一个版本 --Optimint 构建的。Cosmos 架构与目前其他架构有很大不同,因为它使 dApps 成为区块链本身的应用,而不是提供一个虚拟机(VM)。这意味着主权的 Cosmos SDK 链只需要定义它需要的交易类型和状态传统,同时依靠 Tendermint 作为其共识引擎。Cosmos 链拆分了区块链的应用部分,并使用 ABCI 将其连接到网络(p2p)和共识。ABCI 是将区块链的应用部分连接到提供共识和网络机制的 Tendermint 状态复制引擎的接口。它的架构如下图所示:

Cosmos 架构

现在让我们来看看,一旦生态系统开始建立,Celestia 的架构将是怎样的。

早期 Celestia 生态

这就是 Celestia 早期生态系统的样子。Celestia 将作为所有在模块化堆栈内运行的各种类型的 rollup 之间的共享共识和数据可用性层而运作。而结算层的存在是为了促进它上面的各种 rollup 之间的桥接和流动性。而你很可能也会看到主权 rollup 独立运作,没有结算层。

现在我们已经确定了不同程度的模块化,它们的运作方式,以及它们的架构。接下来,让我们来看看像 Celestia 这样的纯模块化区块链的一些独特能力和功能。

共享安全

单体区块链的一个优点之处在于,所有基于它的用户、应用程序和 rollup 都能从底层获得安全。那么,这在模块化堆栈的设置中是如何运作的呢?

其实很简单 --Celestia 提供了链上建立共享安全所需的基本功能 -- 数据可用性。这是因为每一个使用 Celestia 的层都需要将他们所有的交易数据转到数据可用性层,以证明数据确实是可用的。这意味着各链可以毫不费力地连接、观察和相互操作。通过始终拥有底层 DA 层的安全性,使得硬分叉和软分叉也变得非常容易,我们将在后面讨论这一点。

同样,Celestia 允许各种类型的实验执行层在不依赖结算层的情况下同时运行,同时仍然具有共享数据可用性层的优势。这意味着迭代的速度将变得更快,因为它可能会随着用户数量的增加而线性扩展。因此,我们的论点是,随着时间的推移,这将导致执行层的复合改进,因为我们不受具有中心化执行层的单体实体的限制,因为执行和数据可用性是解耦的。模块化的无许可性质允许进行实验,并给开发者以选择的灵活性。

数据可用性抽样和区块验证

Celestia 的区块验证工作与目前其他区块链有很大不同,因为区块可以在次线性时间(sub-linear time)内被验证。这意味着,与成本的线性增长相比,吞吐量会随着成本的次线性增长而增加。那么,这在纸面上看起来如何呢?让我们来看看。

Kraken将为开源以太坊项目提供首批赠款:12月3日消息,加密交易所Kraken周四表示,它将匹配15万美元的投资用于开发以太坊项目。这是与开源软件公司Gitcoin合作的一部分,后者提供了原始资金。这笔款项标志着Kraken首次进入以太坊生态系统。(Decrypt)[2020/12/4 23:02:59]

线性 VS 次线性

这是可能的,因为 Celestia 的轻客户端不验证交易,只检查每个区块是否有共识,以及区块数据是否可用于网络。

Celestia 上的区块验证

Celestia 消除了检查交易有效性的需要,因为它只检查区块是否有共识和数据可用性,如上图所示。

Celestia 轻节点不下载整个区块,而是从区块中随机下载少量数据样本。如果所有的样本都是可用的,那么这就可以证明整个区块是可用的。基本上,通过对一个区块的随机数据进行采样,你就可以从概率上验证该区块确实是完整的。

这意味着 Celestia 将区块验证的问题简化为数据可用性验证,而我们知道如何使用数据可用性抽样以次线性成本有效地完成这一验证。

数据可用性证明

DA 证明是指当你要求正在发送的区块,要进行编码擦除。这意味着原来的区块数据现在被扩大了一倍,然后新的数据被编码为冗余的数据。Celestia 的擦除编码将区块的大小扩大了 4 倍,其中 25% 的区块是原始数据,而 75% 是复制的数据。因此,如果区块想要进行欺诈,就要求不良行为的定序器(sequencer)或类似的东西必须扣留超过 75% 的区块数据。

因此,它允许轻型客户端只下载区块的一小部分(DA 抽样),以非常高的概率检查一个区块的所有数据是否已经发布。每一轮抽样都会降低数据不可用的概率,直到确定所有的数据都是可用的。这非常有效,因为不是每一个节点都下载每一个区块,而是有许多轻量级的节点下载每一个区块的一小部分,但安全保证不变。这意味着,只要有足够的节点对数据可用性进行抽样,就有可能提高吞吐量,因为抽样节点的数量在增加。你可能在日常生活中熟悉这种类型的网络(DA 证明),即使你没有使用过区块链,比如使用 BitTorrent 等协议。

可扩展性

当我们谈论可扩展性时,大多数人想到的第一个想法通常是每秒的交易量。然而,这不应该是围绕可扩展性进行的实际讨论。当谈论专业 DA 层的可扩展性时,应该是 mb/s,而不是每秒的交易量,这是应该克服的主要障碍。Mb/s 影成为衡量一个链的能力的客观标准,而不是 tp,因为交易的大小是不同的。Celestia 在这方面做得很好,因为它缩减了 DA 层,并利用数据可用性抽样来提高系统可以处理的 mb/s 数量。

我们的意思是,一个区块链能够处理多少交易的真正限制是基于输入和输出的。因此,通过将数据可用性与 rollup 处理的输入和输出过程解耦,Celestia 将能够产生比单体实体高得多的每秒字节数。

这一切都源于数据可用性问题。也就是在一个拟议的区块中,定序器或类似的东西可以验证的数据数量,同时受限于底层 DA 层的数据吞吐量。现在,对于利用全节点的单体区块链而言,解决这个问题的正常步骤是增加全节点的硬件要求。然而,如果你这么做,全节点就会减少,网络的去中心化也会随之动摇。

因此,通过利用我们之前在区块验证部分提到的技术,我们可以通过 DA 抽样使全节点等于轻节点,在不增加节点要求的情况下提高扩展性。这反过来又会使节点的增长带来更多的吞吐量,因为 DA 抽样会导致次线性增长 -- 因为它与被添加的轻节点的数量成正比。在单体设计中,区块大小的增加同样会增加验证网络的成本,但在 Celestia 上,情况并非如此。

虽然,以太坊也希望通过 EIP-4844 来解决一些可扩展性问题,这将使一个新的交易类型 --blob 交易成为可能,其中将包含大量不能被 EVM 执行访问的数据,但仍然能够被以太坊访问。这么做的原因是因为目前以太坊上的 rollup 依靠微不足道的可调用数据来行使其交易。分片会有帮助,但仍然相当遥远。不过,当分片发布时,应该能为每个区块的 Rollup 提供约 16 MB 的数据空间。然而,对 blob 交易空间的争夺将变得多么激烈,还有待观察。虽然,一旦你解决了其中一个可扩展性的难题,另一个可能会随之冒出。因此,通过转向模块化层,我们可以让堆栈的各个部分专门用于它们利用最多的特定资源。

截至9月30日以太坊链上转账手续费均值已降至0.008ETH:Tokenview链上数据显示,9月初以太坊每日单笔交易手续费平均值最高达0.032ETH,随着DeFi的降温,9月30日单笔交易手续费均值已降至0.008ETH。Uniswap 9月17日共空投1.5亿枚以太坊,当天手续费总和达ETH有史以来最高值42780ETH。截至30日,这个数字已降到8847ETH,以太坊链上转账手续费逐步走低。[2020/10/1]

分叉

在大多数情况下,当硬分叉发生在单体链上时,你会失去底层的安全,因为执行环境不共享相同的安全性。这意味着通常硬分叉是不可行的,也是不受欢迎的。这与我们说你可以提交对区块链代码的修改,但你必须说服所有人同意你的修改,是同样的想法。以比特币为例。比特币的代码是很容易改变的,然而,让每个人都同意改变是困难的。如果你想硬分叉一个单体区块链,你还需要分叉共识层,这意味着你失去了原始链的安全性。而损失的安全程度取决于不验证新规范链的矿工或验证者的数量。然而,如果所有验证者都升级到同一个分叉,那么就不会失去安全性。相比之下,在模块化区块链上,如果你想分叉一个结算或执行层,你仍然拥有底层共识层的安全性。在这种情况下,分叉是可行的,因为执行环境都共享相同的安全性。虽然,这对结算层的 rollup 来说是不可能的,因为结算层是新增区块的信任来源。

Celestia 作为 DA/共识层的硬分叉

硬分叉的情况可以是无限的,并且很容易在执行环境中实现,因此大胆的想法可以被不断测试和尝试。同时,这也使得在别人的工作基础上进行工作,且不失去基础层的安全性成为可能。考虑一下自由市场(有些人可能不同意这一点),那么它往往可以创造出竞争性的实施方案,可以得到更好的结果。

模块化堆栈

模块化堆栈是 Celestia 独有的一个概念。它指的是将通常区块链的所有不同层解耦为独立的层。因此,当我们说堆栈时,我们指的是所有的层一起运作。

那么存在哪些层呢?毋庸置疑,有共识和数据可用性层 Celestia,但也有其他层。这里我们指的是结算层,即一条 Rollup 拥有信任最小化的桥,并用于统一流动性和各 rollup 之间的桥接的链。这种结算层可以有很多类型。例如,可以有受限制的结算层,只允许它上面的执行 rollup 的简单桥接和解决合约;也可以有拥有自己应用程序和 Rollup 的结算层。当然,也存在其他不依赖于结算层,而是仅靠 Celestia 自己功能的 rollup——这些被称为主权 rollup,我们将在下一章中讨论这些。

现在,也有可能出现这样的堆栈,即执行层不直接向结算层发布区块数据,而是直接向 Celestia 发布。在这种情况下,执行层只是将它们的区块头发布到结算层,然后结算层会检查某个区块的所有数据是否包含在 DA 层中。这是通过结算层的一个合约完成的,该合约从 Celestia 接收交易数据的 Merkle 树。这就是我们所说的数据证明。

模块化堆栈

模块化堆栈的另一个巨大优势是其主权。在模块化堆栈中,治理可以被划分到特定的应用程序和层,不会与其他应用程序重叠。如果有问题,治理者可以在不干扰集群中其他应用的情况下修复它。

主权 rollup

主权 rollup 是一个独立于任何结算层的 rollup。这意味着它不依赖于具有智能合约功能的结算层(在那里它将提供状态更新和证明),而是纯粹通过 Celestia 上的命名空间(namespace)发挥作用。通常情况下,rollups 在一个生态系统中发挥作用,比如以太坊,它有 rollup 智能合约(解决合约)。这个 rollup 的智能合约也在结算层和 rollup 之间提供信任最小化的桥接。然而,在以太坊上,所有的 rollup 都在争夺珍贵的调用数据。这就是为什么 EIP-4844 正在被研究的原因,因为它将提供一个新的交易类型 --blob 交易,并增加区块大小。然而,即使有了 blob 交易,很可能仍然会有激烈的结算竞争。

大多数单体区块链都有能力处理智能合约。以以太坊为例,有一个链上智能合约,处理状态根(state root),也就是 rollup 当前状态的默克尔根(Merkel root)。这个合约不断检查之前的状态根是否符合其当前根的 rollup 批次。如果是,那么就会创建一个新的状态根。然而,在 Celestia 上,这是不可能的,因为 Celestia 不会处理智能合约。

相反,在 Celestia 上,主权 rollup 直接向 Celestia 发布它们的数据。这里的数据不会被计算或结算,而只是存储在区块头中。区块头是识别区块链上一个特定区块的东西,每个区块都是独一无二的。在这个区块头中,存在一个默克尔根,它是由所有的哈希交易组成的。

那么它是如何运作的呢?rollup 有自己的 p2p 网络,全节点和轻节点都从这里下载区块。然而,它们也通过默克尔树验证所有的 rollup 区块数据是在 Celestia 上发送和预定的(因此被称为数据可用性)-- 我们在前面看到过这样的例子。因此,链的标准历史是由本地节点设定的,这些节点验证了 rollup 的交易是正确的。这其中的含义是,主权 rollup 需要在数据可用性层上发布每一个交易,这样任何节点都可以跟踪正确的状态。因此,作为 rollup 命名空间的观察者的完整节点(把命名空间看作是 rollup 的智能合约)也可以为轻型节点提供安全。这是因为,在 Celestia 上,轻节点几乎等同于全节点。

这里详述一下命名空间(namespace):在 Celestia 上,Merkle 树是按命名空间排序的,这使得 Celestia 上的任何 rollup 只下载与他们的链相关的数据,而忽略其他 rollup 的数据。命名空间默克尔树(NMTs)使 rollup 节点能够检索他们查询的所有 rollup 数据,而无需解析整个 Celestia 或 rollup 链。此外,它们还允许验证器节点证明所有的数据都已正确地包含在 Celestia 中。

那么,为什么主权 rollup 有着独特的前景呢?因为之前的 rollup 实现,比如在以太坊上的实现是有限的,因为以太坊节点由于是单体的,所以需要存储执行相关的状态。然而,在模块化设计中,我们可以有专门的节点用于各种目的,这将使网络的运行成本大大降低。因此,运行网络的成本与轻型节点的成本而不是完整节点的成本成比例,正如我们此前解释的那样 -- 轻节点 = 完整节点。

让我们来看看一些 rollup 实现如何作为主权 rollup 发挥作用。首先,有必要澄清各种 rollup 证明系统在 Celestia 上是如何运作的。

Optimistic rollups 依赖于欺诈证明。欺诈证明将通过 rollup 方的全节点和轻节点在客户之间进行点对点的验证。我们将进一步研究这一点的实现。主权 rollup 改变了欺诈证明的分配方式。它们现在不是在结算层合约上进行验证,而是在 rollups 点对点网络中分发,并由本地节点进行验证。通过 Celestia 上的主权 Optimistic Rollups,我们也可能将挑战期降到最低,这意味着我们解决了当前 OR 的主要障碍之一,因为它们目前在以太坊上的争议窗口非常保守。这是可能的,因为目前,所有的欺诈互动都发生在以太坊高度竞争的区块空间上,而这导致了旷日持久的最终处理。然而,在主权 rollup 上,任何轻节点如果与诚实的全节点相连,就有全节点的安全性,因此,欺诈互动应该更快。

ZK rollups 依赖于有效性证明(例如 zksnarks)。作为主权 rollup 的 ZK rollup 的功能与目前的实现方式相当类似。然而,它不是向智能合约发送 ZK 证明,而是分布在点对点网络的 rollup 上,供节点验证。主权 ZK rollup 与统一结算层上的 ZK rollup 一样,允许各种执行运行时作为主权链在彼此之上运行,因为它们的交易不用被 Celestia 处理。在 ZK rollup 之上的运行时可以以各种方式运作。可以有保护隐私的运行,特定应用的运行,以及其他更多。这就是 Fractal Scaling。

现在我们已经建立了主权 rollup 的概念,并对它们在 Celestia 上的实现有了一个概念,以下是两个不同的 rollup 的架构。

Celestia 上的主权 Rollups

那么它们为什么需要 Celestia?Optimistic rollup 需要 DA,这样才能发现欺诈证明,ZK rollup 需要 DA,这样才能知道 rollup 链的状态。

当你看一个东西的时候,始终保持逆向思维也很重要。因为如果不这么做,你往往会被自己的信念所蒙蔽。在这一节中,我将尝试解释主权 rollup 的一些负面因素。

主权 rollup 将在很大程度上依赖于在其上建立的新生态系统,类似于经常吹嘘的 L1 玩法。这意味着 dApps 等。然而,如果 rollup 有一个已经有很多开发活动的虚拟机实现,并且 dApps 是开源的,那么这将变得更加容易做到。尽管如此,流动性仍然是需要克服的主要问题。流动性往往会被分割到主权 rollup 和它的运行时间。因此,rollup 将在很大程度上依赖于安全的、信任最小化的与其他层的桥接,如其他主权 rollup 或结算层。我们将在后面讨论一些可能的实现方式。此外,主权 rollup 的实施在很大程度上取决于能够支持其各种功能的基础设施的建设。

Optimistic Rollup 实现

在本节中,我们将尝试解释一个可能的主权 Optimistic Rollup 实现的运作。这一部分大量借鉴了 Ertem Nusret Tas, Dionysis Zindros, Lei Yang 和 Davis Tse 撰写的 Light Clients for Lazy Blockchains 研究论文。

构建为 OR 提供欺诈证明的独特方式之一是在 rollup 上让全节点和轻节点玩一个分割游戏。分割游戏是在两个节点之间进行的,一个是挑战者,一个是响应者。挑战者将通过作为验证者的第三个节点向响应者发送一个查询。响应者对该查询的答复将通过同一渠道进行。在收到挑战后,验证者将把查询转发给响应者,随后响应者将产生一个响应,并发回给验证者和挑战者。验证者将持续进行检查,以确保两者之间不存在不匹配,也不存在恶意行为。验证者的作用是确保响应者没有发送错误的 Merkle 树,而挑战者的作用是确保响应者遵循正确的根。如果响应者能够为自己辩护,那么游戏就会照常进行。这个分割游戏的结果是,诚实的挑战者和响应者总是会获胜。

Optimistic Rollups 上的分割游戏

Celestia 上的DA,X 上的结算

Celestia 可以既不使用纯粹与 Celestia 连接的结算层进行桥接,也可以不作为主权 rollup。因为 Celestia 只是提供了具有共享安全性的底层 DA 层,只要 Celestia 能够向结算层合约发送可用交易数据的 Merkle 根,任何结算层都可以被使用。这意味着,如果它们愿意的话,任何结算层都可以用于 rollup。那么它们为什么要这么做呢?许多现有的结算层,如以太坊,都有一个已经存在并蓬勃发展的生态系统。因此,已经有了流动性,而用户们也可以利用。这对那些不想从头开始建立整个生态系统的 rollup 来说特别有利。现在,这并不纯粹限于以太坊作为结算层。例如,你也可以利用 Mina 作为 ZK rollup。也就是说,你可以将你的交易数据发送到 Celestia,同时将状态更新和 zk 证明发送到 Mina。这样,你就已经有了一个默认的有效性证明的结算层。

如果你是一个 rollup 运营商,并想利用流动性以及其他区块链的用户,那么这种类型的解决方案对你来说是非常有吸引力的。另外,在某种程度上成为一个即插即用型的 rollup 运营商也有可能。你可以让不同的定序器插入到不同的结算层。例如,一个 ZK rollup 定序器可以连接到 Mina 并提供状态更新和有效性证明。而另一个不同的 ZK-rollup 上的定序器可以连接到以太坊,通过量子桥(传说中的 Celestiums)进行结算。它们的共同点是,它们将把所有的交易数据发送给 Celestia,然后 Celestia 将在结算层运行一个智能合约或类似的东西,发送一个可用数据的 Merkle 树(证明)。

让我们以 ZK rollup 为例,看看这在架构上会是怎样的:

Celestia 上的DA,X 上的结算

价值累积

Celestia 本身的收入来源将是来自各种 rollup 提交的交易批次的交易费。Celestia 的交易费用将与以太坊目前的 EIP-1559 的运作方式相当类似,所以是一个销毁机制。这意味着将有一个动态的基本费用被销毁,以及给验证者的“小费”,以更快地推动某项交易,这些验证者也将从新区块后的代币发行中获得价值。然而,这是从 Celestia 的验证者的角度来看的,那么从用户的角度来看会是怎样的呢?让我们先确定根据你使用的层数,各种费用会是什么样子,然后得出具体的用户体验。

执行 rollup 的收费结构将主要是运营成本 + DA 发布成本。当然,也可能会有一个管理费用,以便使 rollup 获得利润。这意味着对于用户来说,你可能会支付包含这三个方面的费用 + 一笔拥堵费 -- 由于拥堵减少,这个费用可能会低很多。

结算层的收入来源是结算合约费,由 rollup 支付以便能够在其上进行结算。此外,还将通过结算层在 rollup 之间进行信任最小化的桥接,所以结算层也将能够收取桥接费。

那么,在没有结算层的情况下运作的主权 rollup 呢?在主权 rollup 上,用户将不得不支付一笔 gas 费用来访问 rollup 上的计算。Rollup 将设置一个费用,很可能由管理部门决定,然后可能也会有一笔拥堵费,也是必须支付的。Rollup 的这些费用将涵盖向 Celestia 发布数据的费用,以及 rollup 验证者的少量开销。你将放弃结算费用,因为这给终端用户带来的费用可能很低。

所以,最后,我们可以创建一个收费结构,说明各种费用对最终用户来说是怎样的。模块化堆栈的最终用户可能会得到 3 个不变的费用,包括 DA 发布费,结算合约费和 rollup 执行费。当然,也有可能是 4 个费用,即重载期间的拥堵费。用户只需在执行层支付一笔费用,这笔费用将包含模块化堆栈中所有层的费用。因此,让我们看看从用户的角度来看,收费结构会是什么样子:

费用结构

那么这对未来意味着什么呢?

如果 Celestia 被证明是一个更便宜且更快的数据可用性层,同时仍然提供去中心化和共享安全性,那么你可以看到越来越多的 rollup 使用它来提供数据。如果我们考虑 rollup 目前为使用以太坊的安全性而支付的费用?,那么 Celestia 上的 rollups 支付的费用就会少很多。然而,有一些修复措施即将到来,以解决以太坊上的拥堵问题,主要是 blob 交易、质押和分片。

那么 MEV 呢?目前,Rollups 利用定序器在 mempool 中收集和排序用户的交易,然后再执行并发布到 DA 层。这是一个关于 MEV 的问题,因为在目前的实现中,定序器主要是中心化的,因此不具备抗审查能力。目前解决这个问题的方法是将定序器去中心化,目前的很多 rollup 计划都是这样做的,尽管这带来了它自己的一系列问题。另一个以某种形式解决这个问题的方法是分离验证器和交易列表的排序(如果你有兴趣的话,可以看看 Vitalik 的论文?)。

总而言之,模块化堆栈的各层通过交易价值获得收入。用户通过在一个层上的交易获得价值,从而熟悉支付费用。因此,价值指的是用户从其交易被包含在一个层上时获得的价值。

桥接

正如我们之前所讨论的,如果 rollup 有结算层,那么它将有一个通过结算层与其他 rollup 的信任最小化的桥接。但是,如果是主权 rollup,或者它想与另一个集群建立桥接,会发生什么?让我们来看看跨 rollup 的通信。

在两个主权 rollup 想要通信的情况下,它们实际上可以利用轻客户端技术,就像 IBC 的功能一样。轻客户端将通过 P2P 网络接收来自两个 rollup 的区块头以及 rollup 所使用的证明。这既可以通过锁定和铸币机制工作,如 IBC,也可以通过中继器的验证器运作。使用 Cosmos SDK 构建的链和那些利用 Tendermint 或 Optimint 桥接的链可以变得更加无缝,因为你可以完全利用 ICS 的 IBC。然而,这需要两个链包括彼此的状态机,并让桥接链的验证者注销交易。其他的桥接方式也可以存在。例如,我们可以设想有第三条链,它的功能是某种轻型客户端。在这条链上,想要桥接的两个链可以流转它们的区块头,然后作为两个链的结算层来运作。或者你可以依靠一个 Cosmos 链来充当“集群间 rollup 中心”,链上的验证者可以通过遵循 rollup 的条件来操作桥接。此外,还存在各种各样的桥接即服务链,如 Axelar,以及许多其他链。

然而,到目前为止,促进桥接的最简单的方法,是让执行 rollup 使用相同的结算层,因为他们会在上面有信任最小化的桥接合约。

各层之间的桥接之所以如此重要,是因为它可以实现统一的流动性。其次,通过允许协议和层通过共享状态相互组合,我们可以解锁新的互操作性水平。状态共享是指一个链对另一个链进行调用的能力。一个特别的点是,ICS-27? 链间账户的能力。

因此,我们可以得出结论,轻客户端在 IBC 等互操作性标准中是至关重要的。Celestia 轻客户端的结果将使各集群链之间的互操作性更加安全。关于 Celestia 与 IBC 的连接,它们正计划利用治理将某些链与 Celestia 的连接列入白名单,以限制状态的膨胀。

终端用户验证

虽然过去几年的各种单体和模块化设计方法都是创新的,而且构建这些方法的人才数量也是惊人的。但在各种权衡之下,一个基本问题已经存在了相当长的时间。我们认为它的中心是最终用户验证及其需要。

关于不同设计的各种权衡,你可以无休止地争论,而 CT 也会这样。但最终,这也许可以归结为一个问题 -- 拥有最终用户验证的可能性是否重要。很多设计上的权衡(例如区块大小)都是围绕着运行一个完整节点的便利性进行的,而 DAS 使轻型客户端成为“一等公民”,可以与完整节点相媲美。

这样想的基本假设是,用户会关心成为一流公民的问题。用户可以通过运行轻型客户端/全节点轻松地验证链,但这并不意味着他们会这样做,或者他们会重视这样做的能力。

支持这种做法的论点是相当直接的。如果用户不关心验证,那你还不如运行一个中心化的数据库。它总是会更有效率,因为去中心化往往是以牺牲效率为代价的。我们之所以要建立加密协议,就是因为最终用户能够验证计算。

反对的论点是,只要网络足够去中心化,终端用户验证本身并不重要。只要用户体验好,用户就不会关心它。终端用户验证有多重要,目前还没有明确的答案。然而,我们认为终端用户能够验证链是一个值得追逐的目标,也是许多人在这个领域建设的原因。

本节将设想建立在 Celestia 之上的模块化堆栈在未来会是什么样子。我们将探讨我们如何看待模块化堆栈的架构概述,以及我们可能会看到什么样的层。

下面是许多可能的层的图示,这些层可以在模块化堆栈中发挥作用。它们都有一个共同点,就是都在使用 Celestia 来提供数据。我们可能会看到各种主权 rollup,包括 Optimistic 和 ZK rollups,它们将在没有结算层的情况下发挥作用。我们也有可能看到 rollup 利用 Cevmos 作为结算层,同时还有各种应用链。此外,还有一种可能,也就是我们可能会看到其他类型的结算层。这些结算层可能是受限制的,这意味着它们要么预先设置了仅用于桥接和 rollup 的合约,要么依靠治理来实现白名单合约。

模块化堆栈的未来

图的右侧是其他非本地结算链,它们也可以设有 rollup,以利用它们进行流动性和结算,同时依靠 Celestia 向结算层提供交易数据的证明。

所有这些集群都将通过各种桥接服务相互连接,包括新的和旧的桥接。

此外,你没有看到的是,未来还将建立所有的基础设施,以方便访问 Celestia 的各种功能,如 RPC 端点、API 和其他等等。

作者:RainandCoffee

编译:DeFi之道

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:15ms0-8:760ms