作者:Avail团队,翻译:区块链网络xiaozou
区块链生态系统是复杂且不断发展的,最近在可扩展性方面就取得了惊人的进步。为了紧跟区块链的发展步伐,澄清不时冒出的关于模块化区块链的误解是非常重要的。
模块化区块链带来了许多关键性好处,包括降低开发复杂性,增强可扩展性和性能,更好的适应性以及金融效率。它们是为特定用途专门设计的区块链,各组件可以无缝地协同工作,形成一个良好融合的系统。
误解1:模块化系统增加了开发复杂性
对于模块化区块链的一个误解就是,由于多个组件一起工作,模块化区块链可能会增加应用开发人员面临的复杂性。
事实:模块化系统降低了复杂性,并为开发人员提供了重要优势。
事实上,在模块化系统中,在通用L2上进行建设的智能合约开发人员的开发体验与在单体链上进行建设的智能合约开发人员一模一样。一旦智能合约部署在EVML2链上,用户只需将自己的交易发送到区块链上,就像合约部署在单体链上一样。所有增加的复杂性都由rollup/链开发人员承担,并非应用开发人员——这给应用开发人员带来了一些好处,比如更大的灵活性、更低的成本等等。
如果将项目部署为特定应用rollup,而不是在通用rollup上,会怎样?
在模块化生态系统中,通过提供预配置的链模板,可以降低堆栈下游的底层复杂性。举个例子,如果你现在想要部署一个应用rollup,你可以到一个RaaS供应商那里,只需点击操作就可以开始了。
RaaS供应商承担了复杂性,并将其作为服务提供,就像在DigitalOcean上托管虚拟机或在Heroku上部署网页应用一样。高级用户仍然可以自己玩转各种操作,可配置性会更强,但需要花费大量的精力进行设置和维护。
让我们来看看一个项目决定在单体环境还是在模块化环境中部署自己的链进行的比较权衡:
单体环境——如果一个项目被部署为Cosmos意义上的“应用链”,那么(社会和技术)复杂性对应用开发人员来说可能很高,即使DA(数据可用性)和执行都在同一系统中。开发人员必须引导启动自己的验证者网络,与其他链进行交互需要信任这些链的验证者网络。
模块化环境——如果项目作为“特定应用rollup”部署在另一个基础DA层(如Avail、Ethereum或Celestia)上,开发人员不必忧心引导网络的安全性,只需专注于建设应用程序。这些rollup仍然继承底层基础层的安全性,在某种程度上,这就好比传统软件开发人员只需专注于开发应用而无需担心底层基础设施。
应用开发人员也可以在模块化区块链上轻松访问CEX和法币出入金渠道。L1链(如Avail)上的每个主要rollup生态系统都将至少有一个专门的以流动性为重心的rollup,这类rollup将具有:
可靠的CEX连接
法币出入金渠道
通往主要结算层的桥接
深度流动性的DEX
这种注重流动性的rollup(或流动性中心)可以通过快速低成本的inter-rollup消息传递机制让其他rollup无缝访问。建设在共享DA层上的rollup生态系统将专注于rollup自身之间的无缝互操作性,因为它们不需要跨信任区操作。
这个模型的一个早期范例是Cosmos生态系统中的Osmosis或Polkadot生态系统中的AssetHub——严格来说,这些都不是rollup,但你可以看到其他人正在努力实现的通用生态系统设计模式。
误解2:模块化链会降低性能
有一种误解认为,将单体区块链的功能分为多个模块化层会降低性能,或者至少不会带来性能的提高。
事实:模块化区块链提高了性能,因为各组件都可以单独优化。
我们现在生活在后ZK时代,以前关于扩展性和安全性的普遍假设如今不再成立。今天,执行验证并不要求网络中的所有节点重新执行所有交易。而是,无需信任的零知识(ZK)prover可以提供有效性证明,验证成本要低几个数量级。有效性prover是可以并行的,这点很好。
通过数据可用性抽样(DataAvailabilitySampling),或简称为DAS(部署在Avail、Celestia上),你并不需要下载所有交易数据才能验证数据可用性(DA)。DAS轻客户端可以随机采样整个数据的一小部分,并很快获得高概率的DA保证。
这比网络中的所有节点下载全部数据要更快、跟便宜。
DAS和递归有效性证明的结合使模块化区块链非常强大。任何rollup开发人员都可以构建一个全新的链,即使使用的是一个中央测序器,并且,用户仍然可以确保自己的资金安全,条件是rollup协议具有内置逃生舱和排序选项。
这种方式还有其他一些好处:
该系统具有更大的可扩展性,即使是轻节点也能得到较强的安全保障。
EVM执行环境可能并不适合所有应用。在这种情况下,应用可以通过部署任何其他VM(如SVM)来定制适合自己需要的执行环境。(甚或没有VM!)
模块化与执行速度无关。Rollup上的SolanaVM将具有与单体区块链相同的性能。模块化的真正好处在于优化了验证流程。它甚至不需要zk/有效性证明。
模块化区块链不仅仅其各组成部分的总和。
误解3:模块化区块链增加了成本
当使用模块化区块链时,可能会有成本增加的顾虑,但实际情况恰恰相反。单体链存在隐性成本,在多链世界中,由用户来支付所有链上成本。
事实:模块化区块链通过共享基础层消除了多链安全成本
让我们来看一些关于运营各区块链网络的实际成本数据。
请看上表中最右侧一列。显而易见,启动和维护区块链的成本非常高!
请注意,运行网络的质押者的通胀奖励最终将从代币持有者的口袋中支付。代币持有者在没有实际交易费用的情况下补贴网络的运行成本。
每当有人希望从单体链的协议规则中获得任何灵活性,并希望引入新的执行环境或新的预编译时,单体链的支持者就希望他们通过从头启动验证者网络和代币来构建新的区块链!
这限制了该行业核心之处无需许可的创新。
当某rollup部署在同一DA层时,它是基础层上同一账本下的一项资产。事实上,所谓的“L2账本”只是L1账本中数据条目的一个子集。正如Jon在其文章中所说的,每个DA层中都有数百万个rollup。简单地说,rollup只是基础DA层的任意一个子集。
“以太坊的数据中隐藏着无穷无尽的未被发现的rollup。你可以根据自己的需要创建rollup,以无需信任地读取和计算数据,然后可以可靠地将其通信回传。——JonCharbonneau”
的确,有些实体专门专注于维护自己的L2账本,但所有这些账本最终都只是基础层账本的部分子集。这就是L2从基于其上部署的DA层继承安全保障的原因。
在共享DA层上,基础层的代币持有者引导并维护安全性。上面的rollup生态系统不需要单独管理安全性。它们继承了基础层的安全性。
一些人认为模块化区块链会导致每个账本的流动性降低,这种观点是有缺陷的,并且假设模块化区块链不是垂直整合的。当大多数东西都可以通过异步可组合性实现时,这个论点却强调了同步可组合性。即使是最好的传统金融科技系统也会优先考虑异步可组合性。这就是为什么Cosmos链可以访问Osmosis中的流动性中心(通过IBC),为什么以太坊L2 rollup可以访问以太坊上的流动性(通过信任最小化的桥接)。
随着模块化系统越来越成熟,通过递归证明聚合进行的异步消息传递将变得非常便宜,因为客户端有效性证明验证可以通过将执行验证者和高效的轻客户端DA验证相结合来实现。
如果不同卷上的多个套利交易是一个问题,那么它们不仅限于模块化区块链。即使在同一层上使用多个DeFi协议,也可能发生跨资产分类账的重复计算。如果ETH-USDC的价格在Binance上是1800美元,在Aave上是1600美元,在Compound上是1700美元,这需要两个单独的套利交易来解决。
多重套利交易并不是模块化区块链的排他性功能或结果。
误解4:应用rollup不能为开发者提供任何实验或盈利机会
有一种误解认为,应用rollup不会为开发者提供任何新的实验或盈利途径。他们认为,单体链上的现有结构提供了足够的实验或创收工具。
事实:模块化rollup允许灵活的实验,包括创造性的盈利机会等等。
模块化rollup使开发人员能够在各执行环境中工作,不仅促进了多样性,而且还具有节约成本的优势。与成本高昂的单体链相比,特定应用rollup通常更经济、更精简,移除了管理基础设施和索引器等复杂性。
很明显,如果将应用部署为特定应用rollup,则应用可以捕获MEV(rollup内以及跨链)。有一种误解认为,向部署在全局“单体”状态机上的智能合约添加一些逻辑更改,就可以通过单体区块链实现同样的目的。
向部署在全局“单体”状态机上的智能合约添加一些逻辑更改可能会获得类似的结果。但是,当应用rollup的任意执行环境具有如此大的潜力时,坚持全局状态模型和单个VM执行的想法就没有多大意义了。如上所述,有些应用可能更适合于完全不同的执行环境,而不是标准EVM或SVM。模块化区块链可以实现这一点,我们认为需要在执行环境、账本身份验证、访问、自定义状态模型等方面进行更多的实验,继续推动行业向前发展。
以传统技术栈为例,开发网页/移动应用并不存在单一的编程语言或标准方法。区块链为什么要有所不同呢?任何行业都可以通过模块化rollup实现多样性选择,进行积极的实验,进而解锁新的盈利机会!
除了收益机会之外,在单体链上部署和维护应用的“成本”可能比简单地部署特定应用rollup要高得多。单体链上的大多数应用开发人员需要管理大量的基础设施、索引器、交易中继供应商、RPC全节点供应商,等等。
模块化结构能够抽象出这种复杂性,允许具有合适结构(特定应用的、自定义状态转换函数、自定义状态)的专用链绕过这些基础设施管理要求——这通常比自己尝试在单体链上启动所有东西要便宜。
就算忽略所有这些好处,我们真的希望开发人员限于现状裹足不前吗?
误解5:模块化区块链并不能解决跨应用拥塞
该误解是单体链架构足够应对跨应用拥塞,不需要分成几个特定应用rollup。
事实:模块化链中的新范式允许更有效的收费机制
在实践中,使用相同的全局收费市场对每种资源进行定价,会限制整个系统的吞吐量。虽然像Solana和Aptos这样的本地化收费市场能够有效地缓解应用级别的拥塞,但却无法解决跨应用的拥塞问题。
这正是模块化系统的开发者试图解决的问题。通过将应用部署为特定应用rollup,项目可以获得独有执行环境和特定应用收费市场。
当基础层发生价格飙升和拥堵时(直接发生或通过其他L2导入)会发生什么?
特定应用rollup可以保持正常运行,如果它只是在此类峰值期间延迟在基础层上发布交易,则不会受到影响。该应用用户仍然可以获得软性最终确定性,虽然“硬性”最终结果可能会延迟。
像Avail这样的在可扩展的以DA为中心的基础层上的rollup能够根据rollup需求扩展DA块大小,在很大程度上缓解了这一问题。
在通过递归证明聚合实现异步消息传递的rollup生态系统中,每个应用都可以有自己的吞吐量和交易定价。它们可以按照自己的节奏运行,而不必担心需要交互的其他链。异步消息传递可以在没有同步假设的情况下实现可验证的包含,因此与单体链相比,在避免共享状态访问方面,用户可以获得更大的灵活性。
由证明聚合支持的异步范式使你能够在不同的时间点将交易发布到单个链中,以避免单个链的拥塞,不会牺牲掉应用之间的原子性或可组合性。这提供了一套更丰富的工具来表达intent(意图),这些意图在单体链上的应用之间的同步可组合性方面是非常有限的。
误解6:模块化缺乏垂直整合,会抑制创新。
还有一个误解是模块化意味着没有垂直整合。也有人认为,模块化链提供的灵活性被高估了,并不需要建造新的东西。
事实:模块化系统允许创造性地构建未来用例
事实是,模块化系统可以组合为垂直整合堆栈,其复杂性可以从应用开发人员那里抽象出来。
无需许可创新的前提是允许应用开发人员进行实验并提出新的想法,同时仍然从部署应用程序的堆栈中获取高度安全性。如果应用部署在升级成本很高的L1上,就会限制这种无需许可特性。
模块化系统降低了试验新执行环境、新状态模型和新访问机制的成本。它们提供更低的费用和更低的延迟。如前所述,可以通过一个或多个以流动性为中心的rollup或流动性中心轻松实现对现货DEX、稳定币和法币入金渠道的访问。
不进行实验,就不可能预测正确实现的模块化堆栈能促成哪些用例。当互联网出现时,比尔·盖茨(BillGates)对互联网用例的最佳猜想是观看棒球比赛录像。这表明,如果不允许人们进行无需许可的创新,预测一项技术的发展方向是多么的困难。
误解7:rollup不能像L1链那样硬分叉
有一种误解认为rollup不能硬分叉。它们与基础层上相连,硬分叉意味着基础层本身必须分叉。
事实:模块化链上的主权rollup允许无缝硬分叉,不依赖于基础层。
这一误解源于目前在以太坊上实现rollup的方式——将L1资产的基础层桥与状态验证机制结合在一起。我们不应该将桥和验证机制相混淆。
rollup本身当然可以进行硬分叉,这与L1分叉的方式非常相似。桥本身是一个独立结构。JonCharbonneau在一篇文章中很好地解释了为什么rollup不等同于桥。rollup不是由桥定义的,因此桥在其他链上的硬分叉能力不应该等同于rollup本身的硬分叉能力。
Avail上的主权rollup可以被视为类似于任何常规区块链。存在与rollup节点同步的rollup完整节点。不同之处在于,rollup交易数据也被发送到Avail,然后Avail上的DA轻客户端就可以随机采样数据并验证数据可用性。这些轻客户端也嵌入到rollup节点中促进这个过程。这种结构与以太坊类型或enshrined结算层类型的rollup的主要区别在于,rollup节点和轻客户端验证规范链,而不依赖于基于智能合约的enshrined验证机制。
总结
目前,区块链是一个小众行业。我们需要比现在更多的用户、更多的采用和更大范围的用例。
为了实现这一目标,我们需要降低实验成本,让用户和开发人员在单体或模块化生态系统之间做出明智的选择。我们希望通过阅读本文,你已经了解了更多关于模块化系统的扩展潜力相关知识,并且在需要时能够更好地做出自己的选择。有了合适的工具,我们相信你会带来出超出想象的创新。
让rollup千花绽放!
查看更多