以太坊协议繁荣之路:EVM改进、账户抽象与多维Gas

以太坊协议可能的未来(六):繁荣篇

有些事物很难归入单一类别,在以太坊协议设计中,有许多「细节」对以太坊的成功非常重要。实际上,约一半的内容涉及不同类型的 EVM 改进,其余部分则由各种小众主题构成,这就是「繁荣」的意义所在。

Vitalik 关于以太坊可能的未来(六):The Splurge

繁荣:关键目标

  • 将 EVM 变为高性能和稳定的「最终状态」
  • 将账户抽象引入协议,让所有用户享受更安全和便捷的账户
  • 优化交易费用经济,提高可扩展性同时降低风险
  • 探索先进的密码学,使以太坊在长期内显著改善

Vitalik 关于以太坊可能的未来(六):The Splurge

EVM 改进

解决了什么问题?

目前的 EVM 难以进行静态分析,这使得创建高效实现、正式验证代码和进行进一步扩展变得困难。此外,EVM 的效率较低,难以实现许多形式的高级密码学,除非通过预编译显式支持。

它是什么,如何运作?

当前 EVM 改进路线图的第一步是 EVM 对象格式(EOF),计划在下一个硬分叉中纳入。EOF 是一系列 EIP,指定了一个新的 EVM 代码版本,具有许多独特的特征,最显著的是:

  • 代码(可执行,但无法从 EVM 中读取)与数据(可读取,但无法执行)之间的分离
  • 禁止动态跳转,仅允许静态跳转
  • EVM 代码无法再观察与燃料相关的信息
  • 添加了一种新的显式子例程机制

旧式合约将继续存在并可创建,尽管最终可能会逐步弃用旧式合约(甚至可能强制转换为 EOF 代码)。新式合约将受益于 EOF 带来的效率提升。

在引入 EOF 后,进一步的升级变得更加容易,目前发展最完善的是EVM 模块算术扩展(EVM-MAX)。EVM-MAX 创建了一组专门针对模运算的新操作,并将其放置在一个无法通过其他操作码访问的新内存空间中,这使得使用诸如 Montgomery 乘法等优化成为可能。

一个较新的想法是将 EVM-MAX 与单指令多数据(SIMD)特性结合,SIMD 作为以太坊的一个理念已经存在很长时间,最早由Greg Colvin 的 EIP-616提出。SIMD 可用于加速许多形式的密码学,包括哈希函数、32 位 STARKs 和基于格的密码学,EVM-MAX 和 SIMD 的结合使得这两种性能导向的扩展成为自然的配对。

Vitalik 关于以太坊可能的未来(六):The Splurge

现有研究链接

  • EOF:
  • EVM-MAX:
  • SIMD:

剩下的工作及权衡

目前,EOF 计划在下一个硬分叉中纳入。尽管总是有可能在最后一刻移除它,但这样做将面临很大挑战。移除 EOF 意味着未来对 EVM 的任何升级都需在没有 EOF 的情况下进行,虽然可以做到,但可能更困难。

EVM 的主要权衡在于 L1 复杂性与基础设施复杂性,EOF 是需要添加到 EVM 实现中的大量代码,静态代码检查也相对复杂。然而,作为交换,我们可以简化高级语言、简化 EVM 实现以及其他好处。可以说,优先考虑以太坊 L1 持续改进的路线图应包括并建立在 EOF 之上。

需要做的一项重要工作是实现类似 EVM-MAX 加 SIMD 的功能,并对各种加密操作的 gas 消耗进行基准测试。

如何与路线图的其他部分交互?

L1 调整其 EVM 使得 L2 也能更容易地进行相应调整,如果二者不进行同步调整,可能会造成不兼容,带来不利影响。此外,EVM-MAX 和 SIMD 可以降低许多证明系统的 gas 成本,从而使 L2 更加高效。它还使得通过用可以执行相同任务的 EVM 代码替代更多的预编译变得更加容易,可能不会大幅影响效率。

Vitalik 关于以太坊可能的未来(六):The Splurge

账户抽象

解决了什么问题?

目前,交易只能通过一种方式进行验证:ECDSA 签名。最初,账户抽象旨在超越这一点,允许账户的验证逻辑为任意的 EVM 代码。这可以启用一系列应用:

  • 切换到抗量子密码学
  • 轮换旧密钥
  • 多重签名钱包和社交恢复钱包
  • 使用一个密钥进行低价值操作,使用另一个密钥(或一组密钥)进行高价值操作
  • 允许隐私协议在没有中继的情况下工作,显著降低其复杂性,并消除一个关键的中央依赖点

自 2015 年账户抽象提出以来,其目标也扩展到了包括大量「便利目标」,例如,某个没有 ETH 但拥有一些 ERC20 的账户能够用 ERC20 支付 gas。

它是什么,如何运作?

账户抽象的核心是简单的:允许智能合约发起交易,而不仅仅是 EOA。整个复杂性来自于以一种对维护去中心化网络友好的方式实现这一点,并防范拒绝服务攻击。

经过多年的努力,旨在扩展功能的同时限制拒绝服务(DoS)风险,最终得出了实现「理想账户抽象」的解决方案:ERC-4337。

ERC-4337 的工作原理是将用户操作的处理分为两个阶段:验证和执行。所有验证首先被处理,所有执行随后被处理。在内存池中,只有当用户操作的验证阶段只涉及其自身账户并且不读取环境变量时,才会被接受。这可以防止多重失效攻击。此外,对验证步骤也强制实施严格的 gas 限制。

Vitalik 关于以太坊可能的未来(六):The Splurge

现有研究链接

  • 关于账户抽象历史的演讲:
  • ERC-4337:
  • EIP-7702:
  • BLSWallet 代码(使用聚合功能):
  • EIP-7562(写入协议的账户抽象):
  • EIP-7701(基于 EOF 的写入协议账户抽象):

剩下的工作及权衡

目前主要需要解决的是如何将账户抽象完全引入协议,最近受到欢迎的写入协议账户抽象 EIP 是EIP-7701,该提案在 EOF 之上实现账户抽象。一个账户可以拥有一个单独的代码部分用于验证,如果账户设置了该代码部分,则该代码将在来自该账户的交易的验证步骤中执行。

主要的权衡似乎是「快速写入一种让较少人满意的方案」与「等待更长时间,可能获得更理想的解决方案」,理想的方法可能是某种混合方法。一种混合方法是更快地写入一些用例,并留出更多时间来探索其他用例。另一种方法是在 L2 上首先部署更雄心勃勃的账户抽象版本。

它如何与路线图的其他部分互动?

包含列表需要支持账户抽象交易,在实践中,包含列表的需求与去中心化内存池的需求实际上非常相似,尽管对于包含列表来说灵活性稍大。此外,账户抽象实现应该尽可能在 L1 和 L2 之间实现协调。如果将来我们期望大多数用户使用密钥存储 Rollup,账户抽象设计应以此为基础。

Vitalik 关于以太坊可能的未来(六):The Splurge

EIP-1559 改进

它解决了什么问题?

EIP-1559 于 2021 年在以太坊上激活,显著改善了平均区块包含时间。

然而,当前EIP-1559的实施在多个方面并不完美:

  1. 公式略有缺陷:它并不是以 50% 的区块为目标,而是针对约 50-53% 的满区块,这取决于方差。
  2. 在极端情况下调整不够迅速。

后面用于 blobs 的公式(EIP-4844)是专门设计来解决第一个问题的,整体上也更简洁。然而,EIP-1559 本身以及 EIP-4844 都未尝试解决第二个问题。

此外,还有其他与 EIP-1559 无关的以太坊资源定价的弱点,但可以通过对 EIP-1559 的调整来解决。其中一个主要问题是平均情况与最坏情况的差异:以太坊中的资源价格必须设置得能够处理最坏情况,即一个区块的全部 gas 消耗占用一个资源,但实际的平均使用远低于此,导致了低效。

什么是多维 Gas,它是如何运作的?

解决这些低效问题的方案是多维 Gas:为不同资源设定不同的价格和限制。这个概念在技术上独立于 EIP-1559,但 EIP-1559 的存在使得实现这一方案更为容易。如果没有 EIP-1559,最优地打包一个包含多种资源约束的区块就是一个复杂的多维背包问题。而有了 EIP-1559,大多数区块在任何资源上都不会达到满负荷,因此「接受任何支付足够费用的交易」这样简单的算法就足够了。

目前我们已经有了用于执行和数据块的多维 Gas;原则上,我们可以将其扩展到更多维度:如 calldata(交易数据),状态读取 / 写入,和状态大小扩展。

EIP-7706引入了一种新的 gas 维度,专门针对 calldata。同时,它还通过将三种类型的 gas 统一到一个(EIP-4844 风格的)框架中,简化了多维 Gas 机制,从而也解决了 EIP-1559 的数学缺陷。EIP-7623是一种更为精准的解决方案,针对平均情况与最坏情况的资源问题,更严格地限制最大 calldata,而不引入整个新维度。

Vitalik 关于以太坊可能的未来(六):The Splurge

现有研究链接

  • EIP-1559 FAQ: EIP-1559 FAQ
  • 关于 EIP-1559 的实证分析: Empirical analysis
  • 允许快速调整的改进提案: Proposed improvements
  • EIP-4844 FAQ 中关于基础费用机制的部分: EIP-4844 FAQ
  • EIP-7706: EIP
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 5
  • 分享
评论
0/400
ShibaMillionairen'tvip
· 6小时前
EVM 迭代进化必胜
回复0
链圈打工人vip
· 07-10 21:15
期待EVM大升级
回复0
去中心化老干部vip
· 07-10 21:13
前途一片光明
回复0
OnChainDetectivevip
· 07-10 21:09
EVM优化要加速了
回复0
ApeEscapeArtistvip
· 07-10 21:05
EVM升级刻不容缓
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)