详解 Celestia 架构与未来的模块化世界_ROLL:LAYER

原作者:RainandCoffee

原标题:《TheModularWorld》

编译:Eva、胡韬,链捕手

前言

早在2019年,当我们(Maven11)投资LazyLedger时,模块化一词还没有在区块链设计方面普及。在过去的一年里,模块化已经被polynya、大量的L2团队和人,当然还有CelestiaLabs团队推广,CelestiaLabs在其第一篇LazyLedger博文中创造了这一术语,与解耦共识和执行有关。

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

架构

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

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

让我们定义一下我们所说的“模块化”是什么意思,这样就不会有误解。当我们说模块化时,指的是通常组合的层是解耦的。这是什么意思?这意味着链的三个组件执行、共识、数据可用性是解耦的。这意味着你可以将术语模块化放在rollups上,因为它们只处理执行。而以太坊作为一个整体实体处理其他所有事情。

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

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

随着时间的推移,随着单体链的增长,它会导致巨大的堵塞和低效率。如果我们想让更多人加入进来,仅使用一个单一的链来达到所有目的是根本不可行的。因为它给终端用户带来极高的费用和延误。这正是我们看到越来越多的产业链决定走向拆分产业链的原因。我们都听说过传说中的Merge,它将把以太坊转移到一个Proof-of-Stake链上。然而,他们也计划最终转向分片。分片是将区块链水平分割成多个部分。这些分片将纯粹地处理数据可用性。

这与rollups一起是以太坊社区计划解决其可扩展性问题的方式。现在,还有其他方法吗?当然有,我们也看到Avalanche通过Subnets走向了一个微型的模块化未来,但是,如前所述,我们不会把它归类为完全的模块化。

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

架构比较

首先,让我们看一下现有最大的智能合约区块链以太坊。让我们看看他们目前的架构是什么样的,以及未来启用分片的架构是怎样的。

当前的以太坊架构

目前,以太坊能够处理区块链的所有组件。但是,它还抵消了一些执行到L2的rollups,然后将批处理交易在以太坊上结算。未来,随着分片,架构看起来会像这样:?

分片后的以太坊

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

对于Avalanche来说,他们的主要扩展主张是通过可以轻松创建的单一区块链——他们的子网。Avalanche架构看起来有点像这样:

?带有子网的雪崩

子网是一组验证区块链的新验证器。每个区块链都由一个子网验证。所有Avalanche子网都自行处理共识、数据可用性和执行。每个子网也将有自己的gastoken,由验证器指定。当前运行的子网的一个示例是DefiKingdoms子网,它使用JEWEL作为其gastoken。

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

?Cosmos架构

现在让我们看看一旦生态系统开始建立,Celestia的架构会是什么样子。

?早期的Celestia生态系统

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

现在我们已经建立了不同程度的模块化,它们是如何运作的,以及外观变现如何,让我们看看纯模块化区块链所能实现的一些独特能力和功能。

共享安全

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

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

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

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

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

?线性与亚线性

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

?Celestia上的区块验证

Celestia无需检查交易有效性,因为它只检查区块是否具有共识和数据可用性,如上所示。

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

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

?数据可用性证明

数据可用性证明是指当你要求正在发送的区块被擦除编码的。这意味着原始区块数据的大小现在增加了一倍,然后新的数据会被编码成冗余数据。Celestia的擦除编码将区块大小扩大了4倍,其中25%的块是原始数据,而75%是复制的数据。因此,如果它想进行欺诈,则需要行为不端的排序器或类似的程序来扣留超过75%的区块数据。

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

可扩展性

当我们谈论可扩展性时,大多数人首先想到的通常是每秒交易量。但是,这不应该是围绕可扩展性进行的实际讨论。在谈论专用DA层中的可扩展性时,它应该是mb/s,而不是每秒交易量,这应该是需要克服的主要障碍。Mb/s成为衡量一个链能力的客观指标,而不是tp,因为交易规模各不相同。Celestia在这方面表现得非常好,因为它取消了DA层,并利用数据可用性采样来提高系统可以处理的mb/s数量。

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

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

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

虽然,以太坊也在寻求解决其EIP-4844的一些可扩展性问题,这将启用一种新的交易类型——blob事务。其中将包含大量无法被EVM执行访问的数据,但仍然能够被以太坊访问。这样做是因为目前,以太坊上的rollups依赖于极少量的可用调用数据来执行他们的交易。分片也会有所帮助,但仍然很遥远,在发布时应该为每个区块的rollups分配大约16MB的数据空间。然而,对blob交易空间的争夺将变得多么激烈还有待观察。虽然,一旦你解决了其中一个可扩展性难题,另一个可能也会冒出来。因此,通过向模块化层发展,我们可以允许堆栈的各个部分专门针对他们使用最多的特定资源。

分叉

在大多数情况下,当单片链上发生硬分叉时,你会失去底层的安全性,因为执行环境不共享相同的安全性。这意味着通常硬分叉是不可行或不想要的,因为这意味着新的分叉将不具备数据可用性和共识层的安全性。当我们说你可以提交对区块链代码的更改时,这也是同样的想法,但你必须说服每个人都同意你的更改。以比特币为例。比特币的代码很容易更改,但是,让每个人都同意更改是困难的部分。如果你想硬分叉一个整体区块链,你还需要分叉共识层,这意味着你失去了原始链的安全性。损失的安全性取决于未验证新规范链的矿工或验证者的数量。但是,如果所有验证者都升级到同一个分叉,则不会丢失任何安全性。

在模块化区块链上,这是不正确的,因为如果你想分叉一个结算或执行层,你仍然拥有底层共识层的安全性。在这种情况下,分叉是可行的,因为执行环境都共享相同的安全性。虽然,这对于结算层上的rollups是不可能的,因为结算层充当添加区块的信任源。因为如果你想分叉一个结算或执行层,你仍然拥有底层共识层的安全性。在这种情况下,分叉是可行的,因为执行环境都共享相同的安全性。虽然,这对于结算层上的rollups是不可能的,因为结算层充当添加区块的信任源。因为如果你想分叉一个结算或执行层,你仍然拥有底层共识层的安全性。在这种情况下,分叉是可行的,因为执行环境都共享相同的安全性。虽然,这对于结算层上的rollups是不可能的,因为结算层充当添加块的信任源。

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

硬分叉在执行环境中不受限制且易于完成的情况是可以测试和尝试疯狂的想法。以及使在其他人的工作之上工作变得可行,而不会失去基础层的安全性。如果你考虑自由市场的想法,它通常可以创建可以产生更好结果的竞争实施。

模块化堆栈

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

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

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

模块化堆栈

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

主权rollup

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

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

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

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

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

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

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

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

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

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

Celestia上的主权Rollups

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

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

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

OptimisticRollup实现

在本节中,我们将尝试解释一个可能的主权OptimisticRollup实现的运作。这一部分大量借鉴了ErtemNusretTas,DionysisZindros,LeiYang和DavisTse撰写的?LightClientsforLazyBlockchains?研究论文。

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

OptimisticRollups上的分割游戏

Celestia上的DA,X上的结算

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

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

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

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计划都是这样做的,尽管这带来了它自己的一系列问题。另一个以某种形式解决这个问题的方法是分离验证器和交易列表的排序。

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

桥接

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

在两个主权rollup想要通信的情况下,它们实际上可以利用轻客户端技术,就像IBC的功能一样。轻客户端将通过P2P网络接收来自两个rollup的区块头以及rollup所使用的证明。这既可以通过锁定和铸币机制工作,如IBC,也可以通过中继器的验证器运作。使用CosmosSDK构建的链和那些利用Tendermint或Optimint桥接的链可以变得更加无缝,因为你可以完全利用ICS的IBC。然而,这需要两个链包括彼此的状态机,并让桥接链的验证者注销交易。其他的桥接方式也可以存在。

例如,我们可以设想有第三条链,它的功能是某种轻型客户端。在这条链上,想要桥接的两个链可以流转它们的区块头,然后作为两个链的结算层来运作。或者你可以依靠一个Cosmos链来充当“集群间rollup中心”,链上的验证者可以通过遵循rollup的条件来操作桥接。此外,还存在各种各样的桥接即服务链,例如Axelar等许多其他链。

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

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

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

终端用户验证

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

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

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

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

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

模块化堆栈的未来

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

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

模块化堆栈的未来

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

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

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

写在最后

如果你想在Celestia的基础上进行建设,不管是关于rollup,还是其他类型的基础设施,请联系我们。我们很乐意与你交谈。

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

金宝趣谈

[0:46ms0-3:955ms