以太坊改进提案-4337:账户抽象如何重塑以太坊交易

研究洞察以理解下一代以太坊账号管理

账号抽象 (AA) 代表了我们与 Ethereum 互动方式的根本变化。通过将交易验证与执行解耦并重新构想钱包架构,该提案解决了历史上阻碍主流采用的关键摩擦点。EIP-4337 的引入使这一愿景变得可行,而无需对以太坊的核心协议进行更改。

基础:理解以太坊的账号模型

要理解账号抽象的重要性,我们首先需要研究当前在以太坊上存在的两种类型的账号。外部拥有的账号(EOAs)通过私钥和助记词进行控制——这是大多数用户使用的传统方法。而合约账号(CAs)则按照智能合约定义的规则运行。

这个二进制系统创造了固有的限制。EOA 无法自动执行复杂的交易逻辑,而智能合约钱包则需要支付手续费和部署成本。账户抽象弥补了这一差距,允许智能合约逻辑管理 EOA,从而创建我们所称的可编程钱包。这解锁了批量交易、自定义签名方案和赞助交易等可能性——这些功能在传统金融中感觉是标准的,但在加密货币中仍然难以实现。

为什么以太坊社区接受了这个解决方案

AA解决的痛点是具体且广泛的。考虑用户面临的摩擦:管理助记词,为基本操作支付燃气费,恢复丢失的账号,或者一次授权一个交易的批量操作。账号抽象通过引入可定制的账号安全模型和灵活的燃气支付机制来简化这些体验。

除了用户体验,开发者还获得了同样宝贵的东西:一个可编程的框架。与其在严格的链上约束下构建,他们现在可以设计针对特定用例的交易验证和执行逻辑。这种灵活性代表了以太坊上可能性的根本扩展。

演变:从 EIP-2938 到 EIP-4337

账号抽象的道路并不简单。2020年,出现了两个竞争提案:

EIP-2938 提议将合约账号提升至 “顶层” 状态,使其能够直接支付费用和执行交易。这将需要协议层面的变更,虽然在技术上雄心勃勃,但在操作上风险较大。

EIP-3074 引入了两个新的操作码——AUTH 和 AUTHCALL——允许外部拥有账户(EOAs)将交易权限委托给智能合约。尽管这一方法具有创新性,但也要求核心协议进行修改,并面临社区对实施复杂性的担忧。

由于以太坊的共识层需要大量工作,两个提案都被暂停。任何在此层面引入的错误都需要进行硬分叉来解决,这带来了不可接受的风险。

这一突破出现在 EIP-4337,它实现了账号抽象,而无需修改以太坊的基础层。相反,它引入了一种用于交易处理的平行基础设施,从根本上改变了生态系统处理这一问题的方式。

EIP-4337: 可行的架构

EIP-4337 的卓越之处在于其应用层的实现。它并没有改变核心协议规则,而是引入了与传统交易处理共存的新参与者和流程:

UserOperation 对象代表了账号持有者的交易意图。与标准交易不同,它们是在被签名之前创建的,从而为系统在验证和执行签名的方式上提供了灵活性。

打包者充当专门的节点,收集多个用户操作,将它们聚合成单个打包交易。可以把它们看作是交易聚合器,旨在提高操作的效率。

入口点合约作为执行中心。它接收打包的用户操作,使用特定于账号的逻辑验证其签名,并通过 ExecuteUserOp 函数触发执行。

智能合约钱包 取代了传统的EOA作为主要的账户接口。这些钱包由可编程逻辑控制,而不仅仅是私钥密码学。

支付助手合约为燃气费用支付引入了革命性的灵活性。用户现在可以使用任何代币支付交易费用,费用可以由应用程序赞助,或者使用完全自定义的费用逻辑。这消除了以太作为每次交互的前提条件。

钱包工厂 使得新智能合约钱包的高效创建成为可能,减少了用户加入生态系统的开销。

聚合器 验证签名捆绑,允许加密优化,从而降低链上验证成本。

AA功能的以太坊交易流动方式

让我们追踪一个具体示例,看看在EIP-4337下交易是如何运作的:

步骤 1:表达意图 用户创建一个 UserOperation,指定他们的交易细节,包括最大费用(maxFeePerGas、maxPriorityFee)、目标合约交互和签名数据。重要的是,签名尚未应用——系统根据钱包合约的规则确定如何解释它。

步骤 2:内存池广播 用户操作进入一个专用的内存池,与标准的以太坊交易分开。这个专门的内存池允许打包者应用自定义逻辑进行排序和选择。

步骤 3:打包 打包者扫描用户操作内存池,选择操作并将其聚合。然后,他们调用入口点合约的 handleOps 函数,并传入打包内容。如果打包者同时作为区块构建者,他们可以直接将其包含在下一个区块中。否则,他们通过 MEV-Boost 或提案者-构建者分离协议等基础设施来确保包含。

步骤 4:验证 入口合约使用 validateUserOp 根据钱包合约的规则验证每个操作的签名。验证后,打包者将入口合约列入白名单,建立信任关系。

步骤 5:执行 钱包合约的 ExecuteUserOp 函数触发,执行实际的交易逻辑。该捆绑包现在已完成并包含在以太坊区块链中。

比较钱包架构:EOA vs. MPC vs. AA

功能 EOA 钱包 MPC 钱包 AA 钱包
账号类型 外部拥有 外部拥有 智能合约
创建成本 更高
交易费用 标准 标准 可变 (sponsor-able)
燃气支付 仅以太 仅以太 多种代币,第三方
批量操作 支持
签名方法 仅 ECDSA 仅 ECDSA 可定制
密钥管理 手动 手动 基于合同
账号恢复 不可用 可能 (离线) 内置机制
安全模型 无标准 离线恢复选项 链强制规则
生态系统整合 优秀 有限 增长

为什么EIP-3074被搁置

在EIP-4337获得关注之前,EIP-3074是账号抽象的主要替代方案。它引入了我们之前提到的相同AUTH和AUTHCALL操作码。以下是它未能推进的原因:

协议变更问题: EIP-3074 需要共识层的修改,这意味着核心以太坊节点需要采用新的行为。如果出现实施错误,唯一的补救措施将是影响整个网络的破坏性硬分叉。

**灵活性有限:**虽然EIP-3074允许外部拥有账户(EOA)像智能合约一样操作,但它保留了ECDSA作为固定的签名机制。这阻止了开发者尝试新颖的加密方法或实现更复杂的验证逻辑。

优势: EIP-3074 的核心优势在于优雅——任何 EOA 都可以获得类似智能合约的能力,而无需部署合约。然而,这种简单性以有限的自定义为代价。

相比之下,EIP-4337 接受更复杂的链上过程,以避免协议层风险,这是社区认为值得的权衡。

桥接:EIP-5003与钱包演变

尽管EIP-3074仍处于搁置状态,但讨论并未结束。EIP-5003引入了AUTHUSURP操作码,它与EIP-3074一起工作,使现有的EOA能够演变为智能合约账号。

这是一个实际场景:Alice的EOA授权Bob的地址在EIP-3074下代表她行事。使用AUTHUSURP,Bob的地址可以在Alice的地址上部署代码,有效地将她的账号从EOA升级为CA。这次迁移使Alice能够访问自定义签名方案和增强的安全性,而无需放弃她的原始地址或私钥。

这个设计模式建议生态系统采用渐进式迁移路径,而不是突然转变。

实际影响:降低门槛,增强安全性

随着以太坊不断追求主流采用,EIP-4337 的账号抽象解决了实际障碍。用户不再需要储存以太用于 gas 支付或记住助记词作为主要安全机制。开发者可以设计嵌入恢复机制、批量操作和自定义授权逻辑的钱包。应用程序可以赞助用户交易,降低入门的摩擦。

安全性也得到了提高。智能合约钱包可以实现多重签名验证、定时操作、消费限额以及其他超出基本私钥加密的保护措施。

Ethereum生态系统向账号抽象演化不仅仅是一次小规模的技术升级,而是对账户功能的根本重新构想——这使得加密互动更加接近用户对现代应用程序期望的无缝体验。

ETH2.67%
查看原文
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 评论
  • 转发
  • 分享
评论
0/400
暂无评论
交易,随时随地
qrCode
扫码下载 Gate App
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)