讨论侧链与Rollup的架构、安全保证和扩展性能方面的异同。

对比侧链和Rollup的架构、安全保证和扩展性能。

侧链与Rollups:解决区块链可扩展性问题的两种方案

作者:Emmanuel Awosika 编译:深潮 TechFlow

侧链和Rollups是解决区块链可扩展性问题的两种方案。这两种解决方案的核心思想是将计算从资源受限的区块链(如以太坊)转移到专为规模化优化的独立区块链上。这种方法带来了一些好处,比如降低每笔交易的成本,减少延迟,提高整体吞吐量。但相似之处仅此而已。

侧链和Rollups在其扩展方法上根本不同,并且在设计决策和权衡上也有所不同。对于希望利用这两种解决方案构建可扩展的dapp的开发者来说,了解它们的区别非常重要。

本文概述了Rollups和侧链,并探讨了它们在架构、安全保证、扩展性能等方面的差异。

什么是侧链?

侧链是与另一个区块链(称为“主链”)并行运行的区块链网络。通常,侧链通过一个双向跨链桥与主链连接,允许在两个网络之间转移资产,以及可能的任意数据,如合约状态、Merkle 证明和特定交易的结果。

大多数侧链都有自己的共识机制和验证者,与主链分开。这使得侧链能够在不依赖其他区块链的情况下结算和完成交易。然而,这也意味着桥接到侧链的资金的安全性取决于存在强大的加密经济激励,以防止验证者之间发生恶意行为。

侧链的类型

侧链可分为EVM兼容和非EVM侧链:

  • EVM兼容的侧链使用以太坊虚拟机(Ethereum Virtual Machine)的自定义实现。这些侧链在共识机制和执行效率方面进行了优化,同时保留了以太坊的特性。

  • 非EVM侧链实现了不同的虚拟机架构,无法运行以太坊原生的dapp。在非EVM链上构建的开发者可能需要学习其他语言来创建dapp。

不同类型的侧链示例包括Avalanche、Fantom、Celo和LianGuailm(EVM兼容的侧链),以及NEAR、Solana和Algorand(非EVM侧链)。

提交链和Optimistic侧链

并非每个侧链都完全依赖自身的安全性;一些侧链,尤其是提交链和Optimistic链,依赖于主链提供某些安全保证。提交链定期向另一个区块链提交加密承诺以更新其最新状态。主链无法验证这些状态证明,但它确保诚实的参与者对无效的区块头提出质疑。

Optimistic链的运作方式类似,要求验证者定期将区块头提交到主链上的智能合约。然而,Optimistic链没有单独的共识机制,区块头被简单地假设为有效,直到受到防欺诈的挑战。Optimistic链可以在只有一个验证者的情况下运行,而提交链需要多个验证者才能正常运行。

在这两种情况下,诚实的参与者可以向父区块链证明侧链上发生的恶意行为。这样,即使侧链的大多数验证者都作恶,用户仍然可以获得一定的安全保证。

但诚实的参与者无法在没有访问存储在区块中的状态数据的情况下证明恶意行为。由于主链只接收来自侧链的区块头,它无法保证区块的可用性。不诚实的区块提议者可以通过隐藏区块数据来进行不诚实的行为,例如从跨链桥中窃取资金。这个问题被称为数据可用性问题,它是所有侧链(不仅仅是提交链、Optimistic侧链和Rollups)在安全性属性上的差异的核心。

什么是Rollup?

Rollup通过在单独的执行环境中处理交易来提高底层区块链的可扩展性。与侧链类似,Rollup具有用于在父区块链和Rollup之间转移资产的跨链桥。它们还实施了优化措施,以提高用户的计算速度和成本效益。

然而,Rollup会定期将区块提交到主链中,从而继承了主链的安全性和去中心化特性。这意味着父区块链为Rollup提供了以下安全属性的保证:

  • 可用性:Rollup区块的可用性得到保证,因为数据存储在更去中心化和安全的父网络上。用户可以始终向跨链桥合约证明Rollup状态的详细信息,并在Rollup验证者隐藏交易数据时提取资金。

  • 有效性:只有满足由母链强制执行的有效性条件的Rollup区块才能最终确定。

  • 存活性:由于Rollup数据存储在基础层上,任何人都可以重建Rollup的最后一个有效状态并生成新的区块。用户可以通过将交易发送到Rollup的链上智能合约来强制将其包含在Rollup中。

Rollup有两种形式:Optimistic型和零知识型。零知识型Rollup将区块与证明一起提交到母链,以确认链下交易的正确执行。如果证明在链上通过验证,该区块将在基础层上最终确定。

Optimistic型Rollup提交的区块没有任何证明来证明链下计算的有效性。除非另一方通过“欺诈证明”对某个交易的结果提出质疑,否则区块被简单地假定为有效。欺诈证明采用验证游戏的形式,在母链的介入下,两方争议某个计算,直到发现不诚实的一方。

Optimistic型Rollup以状态转换大部分有效的Optimistic假设命名。然而,这种Optimistic假设与加密经济激励相结合,保证了除非一个无效的区块长时间未被质疑,否则它将永远不会被主链最终确定。

不同Rollup类型的示例包括Arbitrum和Optimism(Optimistic型Rollup),以及Linea(零知识型Rollup)。零知识型Rollup在有效性证明方面与EVM不兼容,使用了自定义虚拟机指令集来优化证明的生成。

侧链与Rollup有何不同?

吞吐量:侧链的平均交易处理量通常比Rollup更高,因为它们不依赖于主链的共识和数据可用性。侧链可以通过调整区块大小和区块时间来实现更高的吞吐量,而Rollup无法做到这一点。Rollup的吞吐量受到母链数据带宽的限制。

成本:与Rollup相比,在侧链上的交易可能支付更少的费用。Rollup的运营成本包括数据存储和证明生成与验证,而侧链不会产生这些成本。

最终性:完全负责其安全性的侧链具有即时最终性,一旦获得大多数验证者的批准,区块就无法撤销。提交链或Optimistic侧链由于需要考虑区块头最终化的挑战,最终性时间比侧链更长。

安全性:Rollup的安全性由底层区块链保证,减少了用户的信任假设。侧链负责其安全性,但启动多样化和可靠的验证者可能很困难。提交链或Optimistic侧链的安全性依赖于验证者和提议者的数据可用性,没有其他安全保证。

跨链桥:Rollup和侧链使用相同的资产桥接方案,但桥接资金的安全性取决于其设计。Rollup桥接的资金由母链保障,而侧链桥接的资金安全性与验证者的诚实程度相关。

在选择Rollup或侧链时,取决于项目目标、用户需求以及与主链生态系统的关系。在不同情况下使用Rollup、侧链或两者的优势各不相同。

何时使用Rollup:

  • 用户需要最高的安全保证。
  • 用户可以容忍稍高的成本和增加的延迟/最终性。
  • 需要与母链生态系统建立更紧密的关系。
  • 计划改进Rollup上DApp用户的用户体验。
  • 希望在构建DApp时使用EVM工具和基础设施。

何时使用侧链:

  • 用户希望以最低的费用进行交易。
  • 用户希望交易快速处理,特别是在桥接资金时。
  • 可以容忍增加的信任假设和较低的安全保证。
  • 不认为与主链生态系统的紧密关系是首要任务。
  • 可以学习使用其他编程语言、工具和基础设施来构建DApp(如果使用非EVM侧链)。

何时同时使用侧链和Rollup:

  • 项目已在一个区块链上建立强大的网络效应,并准备扩展到多个生态系统。
  • 希望迎合不同类型的用户,并避免疏远市场的一方。
  • 有足够的资源来处理跨链扩展。