区块链生态系统是复杂和持续发展的,最近在可扩展性方面取得了很多很好的进展。为了保持这种进展,有时需要澄清一些关于模块化区块链的误解。
模块化区块链为整个生态系统带来了一系列关键优势,包括降低开发者复杂性、提高可扩展性和性能、更好的适应性以及财务效率。它们是专门设计的,以便各个组件能够无缝地协同工作,形成一个高度集成的系统。
那么,让我们深入了解一下。
误解 1: 模块化系统增加开发者的复杂性
第一个误解是,由于多个组件协同工作,模块化区块链可能会增加应用开发者的复杂性。
事实:模块化系统减少复杂性,并反过来为开发者提供关键优势
实际上,在一个模块化系统中,在通用 L2 上构建智能合约的开发者和在单一链上构建在智能合约的开发者有着完全相同的体验。一旦智能合约被部署在一个 EVM L2 链上,用户只需像在单一链上部署合约一样,将他们的交易发送到区块链。任何增加的复杂性都由 rollup/链开发者处理,而不是应用开发者 —— 并且这给应用开发者带来了多个优势,包括灵活性、成本降低等。
如果项目是作为一个特定应用的 rollup 部署的,而不是在一个通用的 rollup 上呢?
模块化生态系统可以提供一些预先设置好的链模板,Rollup 开发者在开发过程中不需要关心或解决底层复杂的技术问题,因为这些问题已经在模板中被简化或解决了。这有助于开发者更加高效地进行开发工作。例如,如果你今天想部署一个应用 rollup,你可以去 Rollup-as-a-service(RaaS)提供商(比如 Caldera、Altlayer、Opside、Snapchain)一键启动一个 rollup。
RaaS 提供商解决了复杂性,就像在 DigitalOcean 上托管虚拟机或在 Heroku 上部署 Web 应用一样将其作为一项服务提供。**用户可以自行管理和配置这个复杂的编排过程,这样可以更灵活地满足特定需求。然而,这种灵活性的代价是需要更多的精力和时间来设置和维护系统。
让我们看一下在单一链和模块化链中,一个项目决定部署一个自己链的比较:
-
单一链:如果一个项目作为 Coos 意义上的 ‘appchain’ 部署,那么即使 DA 和执行都在同一个系统内,应用开发者的(社会和技术)复杂性也可能很高。开发者必须启动自己的验证人网络,与其他链交互需要信任那些链的验证人网络。
-
模块化链:如果项目作为一个 ‘特定应用的 rollup’ 在另一个基础 DA 层(如 Avail、Ethereum 或 Celestia)上部署,开发者无需担心要启动一个验证人网络,只需专注于构建应用。这些 rollup 仍然可以继承了底层基础层的安全性,从某种程度上说,这与传统软件开发者专注于构建应用而不担心底层基础设施是相似的。
模块区块链上的应用开发者也将很容易接入 CEX。每个主要的 Layer 1 区块链(如 Avail)上的 rollup 生态系统都将至少有 1 个专注于流动性的 rollup,这个 rollup 将具备以下特性:
-
强大的 CEX 连接
-
法币进出通道
-
桥接到主要的结算层
-
具有深度流动性的 DEX
这种专注于流动性的 rollup(或流动性 Hub)将通过一种廉价和快速的跨 rollup 消息机制从其他 rollup 中无缝访问。建立在共享 DA 层上的 Rollup 生态系统将专注于 rollup 之间的无缝互操作性,因为它们不需要跨越信任区域。
在 Coos 生态系统中的 Oosis 和在 Polkadot 生态系统中的 AssetHub 都是这种模型的**的早期示例。严格来说,这些不是 rollup,但你可以看到很多生态都在趋近于这一通用的生态系统设计模式!
误解 2: 模块化链会降低性能
还有一种误解认为,将单一的区块链功能分解为模块化的不同的层会降低性能,或者至少不会提高性能。
事实:模块化区块链可以提高性能,因为每个组件都可以单独优化
我们现在生活在一个后 zk(零知识证明)世界中,先前关于可扩展性和安全性的普遍假设不再适用。今天,执行验证不再需要网络中的所有节点重新执行所有交易。相反,无需信任的零知识(ZK)证明者可以提供有效性证明,这些证明的验证成本要低得多。而且,有效性证明者具有极高的可并行性。
借助数据可用性抽样(简称 DAS,已在 Avail、Celestia 上实现),你不需要下载所有交易数据来验证数据可用性(DA)。DAS 轻节点可以随机抽样整个数据的一小部分,并非常快速地获得高概率的 DA 保证。
这比网络中的每个节点下载所有数据要快得多,也便宜得多。
DAS 和递归有效性证明的组合使模块化区块链极为强大。任何 Rollup 开发者都可以构建一个全新的链,甚至可以使用中心化的排序器,用户仍然可以确保他们资金的安全,前提是 Rollup 协议内置了逃生舱(Escape Hatches)和基础排序(Based Sequencing)的选项。
Escape Hatches:这是一种安全机制,通常用于智能合约或者其他区块链应用中。它们允许用户在某些特定条件下,如合约的故障或攻击,安全地撤回或转移他们的资金。这是一种紧急应对措施,用于保护用户资产和系统的完整性。
Based Sequencing:指的是一种任务或操作的顺序排列方式,这种排列是基于某些特定规则或条件的。
这两者通常是为了提高系统的可靠性和用户资产的安全性。
你能获得的其他一些好处包括:
-
这个系统更具可扩展性,因为即使是轻节点也可以获得强有力的安全保证。
-
EVM(以太坊虚拟机)执行环境可能不适合每一个应用。在这种情况下,应用程序可以通过部署其他 VM,如 SVM(或者根本不使用 VM),来量身定制执行环境以满足自己的需求。
模块化与执行速度无关。Solana VM 在 Rollup 上的性能与在单一区块链上的性能相同。模块化的真正好处在于优化验证工作流。而且它甚至不需要有 zk 和有效性证明。乐观或悲观的 Rollup 也表现出相同的特性。
模块化区块链不仅仅是它们各部分的总和。
误解 3. 模块化区块链会增加成本
在使用模块化区块链时,人们可能会担心成本的增加,但实际上,情况恰恰相反。单一链有隐藏的成本,在多链世界里,用户需要在所有链上付费。
事实:通过共享基础层,模块化链消除了在多条链上维护安全性所需的成本
让我们看一些有关运营各种区块链网络实际成本的数据。下面的数据来源于 https://www.stakingrewards.com/。
重点关注上面表格最右边的列。很明显,启动和维护一个区块链的成本是非常高的!
请注意,向运行网络的质押者支付的通胀奖励最终是从代币持有者的口袋里支付的。在没有真实交易费用的情况下,代币持有者补贴了运行网络的成本。
当有人希望从一个单一的区块链的协议规则中获得更多灵活性,并想引入一个新的执行环境或预编译的功能时,支持单一区块链结构的人需要从头开始创建一个新的区块链。这通常包括从零开始构建一个验证者网络和发行一个新的代币。这样的设计限制了无需许可的创新!
当一个 rollup 部署在相同的 DA 层上时,它是基础层资产的 SAME 账本的一部分。实际上,所谓的 ‘L2 账本’ 只是 L1 账本中数据条目的一个子集。正如 Jon 在这篇文章(https://dba.xyz/rollups-are-l1s-l2s-a-k-a-how-rollups-actually-actually-actually-work/? ref=blog.availproject.org)中解释的,每个 DA 层中都有数百万个 rollup。简单来说,一个 rollup 只是基础 DA 层的任何一个子集。
“以太坊的数据中有无数未被发现的 rollup。你可以创建一个 rollup 来信任地读取和计算那些数据,然后你可以可证明地将其传回来。- Jon Charbonneau”
是的,有些实体专注于维护他们自己的 L2 账本,但所有这些账本最终都只是基础层账本的子集。这就是为什么 L2 从他们所部署的 DA 层继承了安全保证的原因。
在一个共享的数据可用性(DA)层上,基础层的代币持有者负责启动并维护安全性。建立在其上的 Rollup 生态系统无需单独管理这一方面,因为它们继承了基础层的安全特性。
有人提出的一个观点是,模块化区块链会导致每个账本的流动性减少,这一观点是有问题的,因为它假设模块化区块链没有垂直集成。这个论点过分重视同步组合性,而实际上大多数功能都可以通过异步组合性来实现。即使是**的传统金融科技系统也优先考虑异步组合性。这就是 Coos 链能够通过 IBC(跨链通信)访问 Oosis 中的流动性池,以及以太坊 L2 Rollups 通过信任最小化的桥接访问以太坊上流动性的原因。
随着模块化系统的成熟,通过递归证明聚合的异步消息传递将变得极其便宜,因为客户端侧的有效性证明验证可以通过执行验证者和高效的 DA 验证(通过轻客户端)的组合来实现。
如果不同 Rollup 上的多重套利交易是一个问题,那么它们并不仅限于模块化区块链。即使在同一层的多个 DeFi 协议中,跨资产账本的重复计算也可能发生。例如,如果 Binance 上的 ETH-USDC 价格是 1800 美元,Aave 上是 1600 美元,Compound 上是 1700 美元,这就需要两笔单独的套利交易来解决这个问题。
多重套利交易并不是模块化区块链的专有功能或结果。
误解 4: 应用 Rollup 对开发者在实验或变现方面没有任何贡献
还存在一种误解认为应用 Rollup 并没有为开发者提供任何新的实验或变现途径。人们认为,单一结构的区块链已经提供了足够的工具来进行实验或创造收入。
事实:模块化 Rollup 允许更灵活的实验,包括创造性的变现机会和更多
模块化 Rollup 赋予开发者在多种执行环境中工作的能力,不仅促进了多样性,还呈现了节约成本的优势。与高开销的单一结构区块链相比,专用于应用的 Rollup 往往更加经济和高效,消除了像管理基础设施和索引器这样的复杂性。
很明显,如果将应用部署为特定于应用的 Rollup,应用可以捕获 MEV(在 Rollup 内和跨链)。有人误解认为,在全局‘单一’状态机上部署智能合约时,通过添加一些逻辑更改也可以达到同样的效果。
在全球‘单一’状态机上部署智能合约并进行一些逻辑更改可能会达到类似的结果。但是,当应用 Rollup 提供了如此多任意执行环境的潜力时,坚持使用全球状态模型和单一 VM 执行就没有多大意义。如上所述,一些应用可能更适合于与标准 EVM 或 SVM 完全不同的执行环境。这在模块化区块链中是可能的,我们认为需要更多的执行环境、账本认证、访问、自定义状态模型等方面的实验,以推动这个行业不断前进。
从传统技术栈的类比来看,没有任何单一的编程语言或一种标准的开发 web/移动应用的方式。为什么区块链会有所不同呢?模块化 Rollup 可以实现任何行业的选择多样性和实验促进,从而解锁新的变现机会!
除了收入机会之外,在单一结构区块链上部署和维护应用的“成本”可能比仅部署特定于应用的 Rollup 要高得多。大多数在单一结构区块链上的应用开发者需要管理大量的基础设施、索引器、交易中继提供商、RPC 全节点提供商等。
模块化结构能够通过允许拥有正确构造(特定于应用、自定义状态转换函数、自定义状态)的专用链来抽象化这种复杂性,从而绕过这些基础设施管理需求,这通常比自己在单一结构链上尝试引导一切更为便宜。
忽略所有这些好处,我们真的想限制开发者维持现状吗?
误解 5: 模块化区块链不能解决跨应用拥塞问题
误解是单一结构链具有足够的构造来解决跨应用拥塞问题,无需拆分成特定于应用的 rollup。
事实:模块化链中的新范例允许更高效的费用机制
实际上,使用相同的全局费用市场对每一种资源进行定价会限制整个系统的吞吐量。虽然像 Solana 和 Aptos 这样的局部费用市场有效地缓解了应用层面的拥塞,但在解决跨应用拥塞方面却不尽如人意。
这正是模块化系统的开发者试图解决的问题。通过将应用部署为特定于应用的 rollup,项目可以获得专属的执行环境和特定于应用的费用市场。
当基础层出现价格和拥塞激增(直接或通过其他 L2 间接传导)时会发生什么?
即使在基础层出现拥塞或延迟的情况下,应用特定的 rollup 仍然可以继续正常运行,用户的交易仍然可以获得一定程度的最终性(软性最终性),尽管它们还没有被**地、不可逆转地记录在主链上(硬性最终性)。这为用户提供了一定程度的灵活性和安全性。
在像 Avail 这样的可扩展的数据可用性为中心的基础层上的 rollup 在很大程度上通过能够根据 rollup 需求扩展 DA 块大小来缓解这一点。
在一个支持通过递归证明聚合进行异步消息传递的 rollup 生态系统中,每个应用都可以有自己的吞吐量和交易定价。它们可以按照自己的节奏运行,而不必担心需要与之互动的其他链。异步消息传递使可验证的包含成为可能,无需同步假设,因此与单一结构链相比,它为用户提供了更大的灵活性,以避免共享状态访问。
通过证明聚合启用的异步范例使你能够在不同的时间点在各个链中放置交易,以避免单个链的拥塞,而不牺牲原子性或应用之间的组合性。这提供了一组更丰富的工具来表达意图,这些意图在单一结构链上的应用之间的同步组合性中受到极大的限制。
误解 6: 模块化缺乏垂直整合并抑制创新
有人会误解模块化意味着没有垂直整合。还有人认为,模块化链提供的灵活性被高估了,没有需要新建的东西。
事实:模块化系统允许创造性地构建未来的用例
事实上,模块化系统可以组合形成垂直整合的技术栈,其复杂性可以对应用开发者进行抽象处理。
无需许可的创新的前提是允许应用开发者进行实验并提出新想法,同时仍然从其应用部署的技术栈上吸收高安全性。如果应用部署在升级成本高昂的 L1 上,这种无需许可的特性可能会受到限制。
模块化系统降低了用新的执行环境、新的状态模型和新的访问机制进行实验的成本。它们提供了更低的费用和更低的延迟。通过一个或多个以流动性为中心的 rollup 或前面提到的流动性中心,可以轻松地实现对即时 DEX、稳定币和法币进出通道的访问。
没有实验,就不可能预测由正确实施的模块化技术栈所催生的用例。当互联网出现时,比尔·盖茨对用例的**猜测是观看棒球比赛的录像。这恰好表明,如果不允许任何人对其进行无需许可的创新,预测一项技术将走向何方是多么困难。
误解 7: Rollups 不能像 L1 链一样进行硬分叉
还有普通的一种误解认为 Rollups 不能进行硬分叉。他们与基础层上的固定桥绑定在一起,硬分叉意味着基础层本身必须进行分叉。
事实:模块化链上的** Rollups 允许无缝进行硬分叉,而不依赖于基础层
这种误解源于如何在以太坊上实现 Rollups,它们结合了到基础层的桥以及状态验证机制。我们不应将桥和验证机制混为一谈。
Rollup 本身当然可以进行硬分叉,这与 L1 分叉的方式非常相似。桥本身是一个单独的结构。Jon Charbonneau 在这篇文章中很好地解释了为什么 Rollups 不等于桥(https://dba.mirror.xyz/hyRKK4_PDrO2FKpF6eIRvnq8sA_Mx7dXtQf_MWzSWTU?ref=blog.availproject.org)。Rollup 不是由桥定义的,因此,某个其他链上桥的硬分叉能力不应等同于 Rollup 本身的硬分叉能力。
一个在 Avail 上的** Rollup 可以被视为与任何普通区块链相似。Rollup 的完整节点与 Rollup 节点同步。不同之处在于,Rollup 交易数据也被发送到 Avail,而 Avail 上的 DA(数据可用性)轻节点随后可以随机抽样这些数据并验证数据可用性。这些轻客户端也嵌入在 Rollup 节点中以便于此过程。与以太坊风格或固定结算层类型的 Rollup 相比,这种构造的主要区别在于 Rollup 节点和轻客户端验证规范链,而不依赖基于智能合约的固定验证机制。
如果人们仍然不被关于这一主题的理论讨论所说服,他们可以参考我们的 OpEVM 原型。这个原型是一个基于 Avail 构建的**乐观链(optimistic chain),具有去中心化的定序器集(decentralized sequencer set)和无需许可的瞭望塔(permissionless watchtower)。它可以轻松地进行硬分叉,而无需在 Avail 上做任何改变。值得注意的是,Avail 不支持任何智能合约,所以 Rollup 没有固定的桥,这赋予了它**性。
OpEVM 原型:https://github.com/availproject/op-evm/?ref=blog.availproject.org
总结
目前,区块链仍然是一个小众行业。我们需要更多的用户、更广泛的应用和比现在可能的更多用例。
要达到这个目标,我们需要降低实验的成本,并让用户和开发者在单一或模块化生态系统之间做出明智的选择。我们希望通过这篇文章,你能更多地了解模块化系统的可扩展潜力,并在需要时能更好地做出这样的选择。有了合适的工具,我们相信你一定能创造出超乎我们想象的创新。
让成千上万的 rollups 繁荣发展吧!
原文:https://blog.availproject.org/7-myths-about-modular-blockchains/
编译:Modular 101
阅读更多:
全面对比四大 DA 层:Avail、Celestia、以太坊、EigenDA!
Avail 愿景:成为以太坊 rollup 默认的 DA 层!
模块化区块链如何创造丰富性,解决单链的稀缺性问题
本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。