以太坊扩展解决方案开发者指南

  • Alchemy
  • 发布于 2022-05-18 13:28
  • 阅读 35

本文介绍了以太坊的扩展性问题,以及Layer 1和Layer 2的扩展方案,包括Rollups、Sidechains、State Channels、Plasma Chains和Validium等。文章还讨论了扩展方案的必要性,包括降低交易费用、加速交易和提高安全性,以及扩展解决方案的复杂性和潜在的安全问题。最后,文章展望了这些扩展方案在以太坊发展中的作用。

Alchemy 编写

Brady Werkheiser 头像

Brady Werkheiser 审核

发布于 2022 年 5 月 17 日,阅读时长 9 分钟


以太坊对去中心化和安全性的强调意味着交易处理速度较慢。这会影响网络吞吐量,并影响去中心化应用程序 (dApps) 的扩展能力。

已经提出了许多设计来解决以太坊的可扩展性问题,每种设计都提供不同的好处。本指南将介绍以太坊扩展解决方案,并解释它们的工作原理以及它们为何重要。

什么是可扩展性?

可扩展性是指系统在不牺牲功能的情况下处理使用量呈指数级增长的能力。 在区块链技术的背景下,可扩展性意味着区块链在不影响功能的情况下支持增加的交易的能力。

目前,以太坊处理交易的能力仅限于每秒处理 7-15 笔交易 (TPS)。相反,传统的中心化数据库(如 Oracle Database 和 Microsoft SQL Server)每秒可以处理数千笔交易。

以太坊每秒交易量图表

来源: Blockchair

以太坊设计的两种影响可扩展性的方式

以太坊的吞吐量低且处理速度慢,因为它优先考虑去中心化和安全性,而不是可扩展性(可扩展性三难困境)。

以下是以太坊的设计影响可扩展性的一些方式:

1. 以太坊的共识算法按顺序处理交易

以太坊使用工作量证明 (PoW),这意味着网络上的交易必须被所有节点接受和验证。这鼓励了去中心化,更重要的是,鼓励了安全性。

缺点是交易的顺序执行会影响交易的最终性(确认交易所需的时间)。这进一步导致以太坊无法支持高 TPS 速率。

2. 以太坊将区块大小限制为 1MB

以太坊限制了已挖掘区块可以容纳的数据量(1MB),因为限制区块大小可以通过使节点能够更有效地存储区块链历史记录来提高去中心化程度。更大的区块大小使人们难以运行完整节点,从而损害了去中心化。

但是,1MB 的区块大小限制减少了矿工可以放入一个区块中的交易数据量,从而影响了网络吞吐量。小区块大小也会影响 gas 的成本,gas 是在 以太坊虚拟机 中执行操作所需的计算资源。

因为矿工的计算能力是有限的,所以他们经常被迫优先考虑费用较高的交易。这在以太坊用户之间造成了一种竞价战,并导致交易费用大幅上涨。

什么是以太坊扩展解决方案?

以太坊扩展解决方案是专门为改善以太坊网络上的交易执行而设计的平台。 诸如 layer 2 rollups 和 sidechains 之类的以太坊扩展解决方案是使用不同机制来提高网络吞吐量的协议。

以太坊扩展解决方案图

来源: Reddit

Layer 1 vs Layer 2 扩展解决方案

扩展解决方案可以大致分为两类:“链上”和“链下”解决方案,这两者的区别在于它们的执行点。

Layer 1 扩展解决方案

Layer 1 扩展涉及更改区块链网络并重写基础层。“链上”描述意味着对 以太坊的扩展升级 在区块链本身上执行。

Layer 1s 可以通过增加区块大小来扩展

潜在的 Layer 1 扩展改进是增加区块大小。如果以太坊的 1MB 区块大小增加,矿工将有更多空间在区块中包含其他交易数据。

虽然增加以太坊的区块大小会导致 TPS 速率增加,但副作用是缓慢地走向中心化,因为随着区块大小的增加,区块链的大小也会增加,从而难以运行完整节点(除非你有一台超级计算机)。因此,以太坊社区已将更大的区块大小排除为扩展解决方案。

Layer 1s 可以通过与区块链分片并行处理交易来扩展

区块链分片 是一种可扩展性改进,它引入了并行执行交易,以代替以太坊使用的默认顺序执行模型。在分片中,区块链被分成更小的链(分片),这些链验证和处理单独的交易。

考虑以太坊当前的工作方式:

交易在整个网络中广播,直到它们可以被验证。分片不需要所有节点都批准交易。相反,每个分片都有验证者(称为 collators)来批准交易。

每个 collation(分片链上的一组交易)必须由 ⅔ 的 collators 签名。此外,提议的 collation 必须在达到最终性之前添加到主链。总而言之,这些措施有助于确保系统的安全性。

通过分片,以太坊可以 在不牺牲去中心化或安全性的情况下增加 TPS。由于分片链同时处理不同的交易,因此网络的整体处理能力会提高。此外,网络参与者仍然可以通过密码学证明来证明分片 collation 的有效性。

以太坊分片图 来源:Genesis Block

来源: Genesis Block

Layer 2 扩展解决方案

Layer 2 (L2) 扩展改进之所以如此命名,是因为它们在主链(Layer 1)之外执行。Layer 2 扩展也称为“链下”解决方案,涉及在依赖主链安全性的单独网络上处理交易。

L2 解决方案通常在设计时侧重于交易速度和可扩展性——去中心化和安全性在这里不太受关注。由于它们将交易数据发布到以太坊主层,因此 L2 可以从主网的去中心化和安全性中受益。此外,由于 L2 解决方案建立在以太坊之上,因此它们不需要自己的原生代币。

这些链下协议可以将多个交易聚合到一个交易中,并添加到主链。这减轻了网络压力,并提高了 dApp 随着使用量的增长而扩展的潜力。

Layer 2 扩展解决方案的示例包括:

  • Rollups

  • 状态通道

  • Plasma

  • Validium

Layer 2 vs. Sidechains

侧链是一个与以太坊主网交互但并不依赖它来保证安全的单独区块链。侧链通过跨链桥与以太坊连接,这使得两个链之间可以转移资产。

侧链有利于可扩展性,因为它们的设计具有不同的特性,这些特性使其能够实现高吞吐量。例如,Polygon 侧链使用权益证明 (PoS) 共识算法来实现更快的交易。

Layer 2 解决方案和侧链之间的主要区别在于它们的安全保证。虽然 L2 网络享有以太坊的安全保证,但侧链却没有。

侧链由其共识机制保护,而 L2 则受益于以太坊的共识。这就是为什么许多人认为 L2 比侧链更安全。

为什么以太坊需要扩展解决方案?

良好的以太坊扩展解决方案有助于为 web3 开发者和用户提供更低的 gas 费用和更快的交易速度,同时还能保证交易安全。

以下是以太坊需要扩展解决方案的原因:

1. 更低的交易费用

以太坊的 gas 费用问题已成为广泛批评的素材。扩展改进可以减少网络拥塞,并导致交易成本显着下降。

更低的 gas 价格转化为更好的用户体验和更高的 dApp 采用率。用户无需处理失败的交易或支付过高的 gas 费用。

2. 更快的交易速度

许多扩展解决方案的创建目的就是为了提高以太坊在更短的时间内处理更多交易的能力。

例如,rollups 可以将数千个链下交易批处理到一个单一的链上交易中。同样,分片通过鼓励并行处理交易来提高吞吐量。

这些改进的最终结果是每秒交易 (TPS) 速率的增加。虽然估计值各不相同,但许多人预计 L2 和分片会将以太坊的 TPS 推到数千。

3. 改进的安全性

L2 非常适合在不降低网络安全性的情况下扩展以太坊。与链上扩展不同,链下扩展项目不会影响以太坊的去中心化。

即使这些 L2 是单独的链,但它们的安全性与以太坊区块链紧密相连。这意味着用户可以安全地与这些项目进行交互,享受可扩展性的好处,而不会危及他们的资产。

五种最受欢迎的以太坊扩展解决方案

五种最受欢迎的以太坊扩展解决方案是:rollups、侧链、状态通道、Plasma 链和 Validium。

1. Rollups

Rollups 将链下执行的多个交易组合或“rollup”成一批,并将其传递到主链上。一个单一的 rollup 可以包含数百个(如果不是数千个)交易,这些交易被压缩以减少主链必须处理的交易量。

除了提高可扩展性之外,rollups 还提供与以太坊本身相似的安全级别,因为 rollups 中的交易锚定到 L1 链,这保证了交易的最终性。

Rollups 主要有两种类型:optimistic rollups 和 zero-knowledge rollups。每种类型的不同之处在于交易的计算方式以及发布到以太坊的方式:

Zero-knowledge rollups 或 ZK-rollups 在链下执行计算,并生成一个称为简洁非交互式知识论证 (SNARK) 或简洁透明知识论证 (STARK) 的密码学证明。这些 “有效性证明” 向主链上的节点保证交易批次的有效性。

Optimistic rollups 默认情况下假定交易有效,并且不为每个交易包生成有效性证明。但是,可以通过 欺诈证明 来质疑 optimistic rollup 中交易的有效性。

那么,这两种 rollup 方案是如何相互比较的呢?ZK-rollups 更安全,因为它们会生成有效性证明,但是,这使得它们比 optimistic rollups 慢。

ZK-rollups 是一种复杂的机制,这使得很难将 EVM 兼容性编程到其中。因此,与 optimistic rollups 相比,ZK-rollups 的功能有限。

Polygon 正在开发一种 zero-knowledge EVM (zkEVM),以通过其 Hermez 2.0 计划将 zero-knowledge rollups 的功能扩展到以太坊网络。

使用 Optimistic Rollups 的以太坊 L2

  • Optimism

  • Arbitrum

  • Boba Network

  • Immutable X

使用 ZK Rollups 的以太坊 L2

  • zkSYNC

  • Loopring

  • dYdX

  • StarkNet

作为开发者,你可以将 rollups 集成到你的 dApp 中,以提高交易的最终性和可扩展性。这样,你的用户就不必体验高 gas 费用、丢弃的交易和缓慢的处理速度——这些情况在以太坊上经常发生。

2. 侧链

侧链是一种 layer 2 解决方案,它是一个与以太坊主网并行运行的单独区块链。这些差异可能包括密码经济激励、共识机制等等。

专门为以太坊设计的侧链具有以太坊虚拟机 (EVM) 兼容性,并且可以支持智能合约。这意味着你可以在侧链上部署项目,并利用它们的可扩展性改进来开发 dApp。

跨链桥 是将侧链连接到以太坊智能合约平台所必需的。就像其名称所暗示的那样,区块链桥为用户在主链和侧链之间移动提供了一个网关。

要使用桥,你必须在源链上锁定一些资产(在这种情况下为 ETH)。之后,将在侧链上生成等量的资产并存入你的钱包。

然后,你可以在侧链上自由交易,利用其卓越的交易处理能力。如前所述,侧链的设计目的是提供可扩展性,并采用不同的机制来实现这一点。

以太坊侧链示例:

  • Polygon

  • xDAI

  • SKALE

其他 替代 Layer 1 (L1) 区块链 也可以充当以太坊侧链,尤其是与 EVM 兼容的区块链。这些替代 L1 通常提供诸如更低的 gas 费用、更好的交易最终性和在某些情况下更丰富的功能等好处。

与 EVM 兼容的 L1 示例:

  • Avalanche

  • Fantom

  • Binance Smart Chain

3. 状态通道

状态通道是一种链下扩展解决方案,它允许双方进行交易,而无需主链验证每笔交易。状态通道本质上是一个多重签名智能合约,只有在获得所需各方的批准后才能执行。

状态通道的工作原理

1. Alice 想要与每天早上向她出售咖啡的 Bob 开设一个状态通道。假设她向通道中存入了 0.4 ETH,并且此交易已发布在主网上。

2. 在此开盘交易之后,Alice 和 Bob 可以根据需要长时间地在线下执行交易。唯一的警告是双方都必须签署交易,这意味着 Alice 和 Bob 必须批准每笔咖啡付款。

3. 如果 Alice 耗尽了她的存款,她可以在主链上发布一个 退出交易。此交易将反映通道的最后已知状态,然后将记录该状态以实现最终性。Alice 和 Bob 可能已经进行了十几次交易,但以太坊网络仅记录了两笔交易——进入和退出交易

状态通道允许各方进行安全的链下交易,而无需经历漫长的等待时间和高额的交易费用。它还可以提高可扩展性,因为矿工需要处理的交易更少,并且可以更快地工作。

使用状态通道的以太坊扩展解决方案:

  • Raiden Network

  • Connext Network

  • Celer Network

4. Plasma 链

Plasma 白皮书介绍了“子链”的概念,该子链源自主区块链或“根链”。虽然 Plasma 链 可以验证交易,但它们依赖于根链的安全性。为了证明交易的有效性,子链向根链提交密码学证明。

Plasma 链类似于侧链,因为它们通过智能合约与以太坊区块链连接。使用 Plasma 链需要先在根链上的智能合约中锁定 ETH,然后在子链上获取代币。

Plasma 被认为是 L2 扩展解决方案,因为它直接从以太坊的基础层获得安全性。这使得它们比侧链更安全。

Plasma 为以太坊主链上的每个区块发布 Merkle 根。区块根是我们可以用来验证有关交易的信息的小信息片段。如果 Plasma 链上发生攻击,用户可以使用相应的证明安全地退出到主链并提取资金。

使用 Plasma 的以太坊扩展解决方案

  • OMG Plasma

  • Gluon Network

5. Validium

Validium 类似于 ZK-rollups,在主以太坊层之外执行计算,但主要区别在于 validiums 使用“链下数据可用性”,而不是像 ZK-rollups 那样在主链上发布压缩数据。

Validiums 将数据存储在链下,由数据提供商提供,这在一定程度上使它们具有托管性。但是,诸如 StarkWare 之类的一些解决方案使用 Data Availability Committees (DAC) 来确保数据提供商的行为诚实。

Validiums 的费用非常低,交易速度很快(高达 100,000 tps)。但是,与其他扩展解决方案(如 ZK-rollups)相比,它们具有更多的信任假设。

使用 Validium 的 ETH 扩展解决方案:

  • DiversiFi

  • Immutable X

扩展解决方案有哪些缺点?

以太坊扩展解决方案的两个缺点包括它们实现起来很复杂,并且可能具有较低的安全保证。

1. 复杂性

许多扩展解决方案的实现非常复杂,这可能会影响其功能。例如,由于升级所需的工作量,以太坊开发团队一直在推迟分片的发布日期。

2. 更低的安全保证

虽然许多 L2 和 L1 扩展解决方案都依赖以太坊来保证安全,但它们不如前者安全。每种扩展解决方案都会牺牲一些元素(如去中心化和安全性)来换取速度。用户在使用这些平台之前必须清楚地了解这些风险。

结论

本指南中介绍的扩展项目可能会在以太坊推动可扩展性方面发挥重要作用。但这是否足以保证长期扩展还有待观察。

计划在 L2 上扩展你的下一个 dApp 吗?

注册一个 Alchemy 的免费帐户,Alchemy 是世界上最大的区块链开发平台,支持流行的 L2,包括 Arbitrum、Optimism、Polygon 和 StarkNet。

Supercharged | Alchemy | Substack

获取免费的以太坊 RPC 和开发者工具 获取你的 API 密钥

📚 目录


  • 什么是可扩展性?
  • 什么是以太坊扩展解决方案?
  • 为什么以太坊需要扩展解决方案?
  • 五种最受欢迎的以太坊扩展解决方案
  • 扩展解决方案有哪些缺点?
  • 结论

分享:

概述卡片背景图

相关概述

特色内容卡片叠加层\ \ Layer 2\ \ Rollup-as-a-Service 提供商比较:如何选择合适的 RaaS 合作伙伴\ \ 探索行业领先的 RaaS 提供商以及选择 RaaS 时要考虑的因素。 特色内容卡片叠加层\ \ Layer 2\ \ 什么是 ZKsync Era? 以太坊开发者概述\ \ 了解 ZKsync Era - 为以太坊扩展提供支持的 EVM 兼容 ZK rollup。 特色内容卡片叠加层\ \ Layer 2\ \ 什么是 Rollups-as-a-service (RaaS)?\ \ 了解 Rollups as a Service 在以太坊 Layer 2 生态系统中的位置

桌面部分背景图片

构建区块链魔法

Alchemy 将最强大的 web3 开发者产品和工具与资源、社区和传奇支持相结合。

获取你的 API 密钥

  • 原文链接: alchemy.com/overviews/et...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Alchemy
Alchemy
江湖只有他的大名,没有他的介绍。