跳至内容
0%

EIP-7702:Pectra 升级后 Ethereum 开发者快速接入指南

Lisa Ma headshot

作者 Lisa Ma

发布于 2025年5月19日2 分钟阅读

EIP-7702 是 Ethereum Pectra 升级的一部分,为 EOA 提供智能账户能力
EIP-7702 为 EOA 提供智能账户能力

想看精简版?没问题。可以看看我们在 X 上的系列内容,里面有简明讲解和演示。

Ethereum 的路线图正朝着加密货币的主流普及迈进,其中**EIP-7702尤为引人关注,它包含在Pectra 硬分叉中。这次升级标志着 Ethereum 迈向账户抽象**的关键一步,是一项旨在让链上体验更流畅、更智能、更易用的突破性进展。具体来说,EIP-7702 让外部拥有账户(EOA)能够使用智能合约账户的功能。

作为开发者,你们是下一代链上创新的构建者,我们希望确保你们能够充分利用 EIP-7702 的全部潜力。作为为数百万链上应用提供支持的基础设施建设者,我们希望在这一过程中为你提供指引。

这是我们深入解读 EIP-7702 系列文章的第一篇,专为像你这样的应用开发者撰写。我们将一起探讨这项提案为何如此重要、其底层运作原理,以及需要考虑的关键技术因素,帮助你判断是否(以及为何)要将这些前沿功能集成到你的应用中。让我们一步步构建未来。

要点速览:

  • EIP-7702 让 EOA 能够将控制权委托给智能合约账户,使其可以直接从自己的地址执行代码
  • 它与主流的 AA 标准 ERC-4337 兼容,因此现有钱包可以直接变成智能合约钱包,无需创建新地址或转移资产
  • 对用户而言,它将带来类似 Web2 的功能,包括账户恢复和便于身份验证的 passkey 登录,同时也保留了 Web3 的优势,例如由他人赞助 gas 费用,以及使用任意代币(而不仅是 ETH)支付 gas

Ethereum 账户的现状

2024 年 5 月,Vitalik Buterin 提出了EIP-7702,这项提案有可能从根本上改变 Ethereum 账户的运作方式。它最初只是在一次全体核心开发者会议前用 22 分钟写成的草案,如今已被纳入 Pectra 升级。EIP-7702 代表着迈向完全账户抽象的关键一步,同时也解决了眼前的可用性难题。

但要理解 Ethereum 未来的走向,我们需要先了解其当前架构。

目前,Ethereum 用户依赖两种账户类型:由私钥控制的外部拥有账户(EOA),以及可以直接执行代码的智能合约账户(SCA):

外部拥有账户:

  • 可以发起交易
  • 无法直接从自身地址执行代码
  • 仅限于基本操作

智能合约账户:

  • 可以执行代码
  • 无法发起交易
  • 更灵活、更可编程

EIP-7702 的目标是将这两者合二为一,让任何账户都能像智能合约一样运作。通过让 EOA 能够直接从自身地址执行代码,Ethereum 开发者可以在链上构建媲美 Web2 水准的用户体验,具备以下功能:

  • 会话密钥(session key)
  • 账户社交恢复
  • 不依赖助记词的身份验证机制
  • 将多个操作批量处理为单次点击

以下是你需要了解的 EIP-7702 工作原理。

关于 EIP-7702 与 ERC-4337 你需要知道的

EIP-7702 并不会取代 Ethereum 现有的 AA 标准 ERC-4337。EIP-7702 的设计初衷是与 ERC-4337 互补,让这些账户抽象功能更容易触达用户。但 ERC-4337 确实存在一个限制:

  • 由于它与 EOA 不向后兼容,因此需要创建新钱包

EIP-7702 消除了这一限制,而无需对 EVM 的共识逻辑做更深层的改动:

  • 使用现有钱包
  • 无需创建新账户或进行迁移
  • 与 ERC-4337 的基础设施完美契合
  • 现有 EOA 只需通过委托指示符(delegation designator)委托智能合约逻辑

EIP-7702 的执行流程

EIP-7702 依赖一种巧妙的委托机制,用户需要提供授权以执行智能合约代码。这种授权在用户明确撤销之前一直有效,也就是说用户需要信任自己所授权的代码不是恶意的。

执行流程如下:

  1. 设置:EOA 决定将控制权委托给智能合约钱包
  2. 验证:系统检查委托是否经过正确签名
  3. 执行:EOA 获得智能合约的能力
  4. 清理:如果 EOA 决定撤销智能合约控制权,则必须再发送一笔 7702 交易,将委托重新设置为 0

EOA 通过存储委托指示符来获得像智能合约账户一样运作的能力。该指示符是一段特殊代码 0xef0100 \|\| address,其中 address 指向包含所需功能或操作的智能合约。

委托指示符使用被禁用的操作码 0xef,以便与常规数据区分开来,确保代码执行操作会从指定地址加载代码。

当交易发送到该 EOA 时,EOA 会执行指定地址上的代码,从而获得智能合约账户的功能。

应用开发者需要考虑的采用与安全因素

EIP-7702 能否被采用,主要取决于一个因素:钱包提供商。由于钱包位于应用之上游,如果没有钱包的支持,应用开发者和他们的用户就无法使用 EIP-7702 所带来的功能。

与智能合约账户相比,EIP-7702 也呈现出不同的安全模型。最主要的是,EIP-7702 账户仍保留原始的 EOA 私钥,而该私钥可以覆盖智能账户的安全规则。

你应该如何集成 EIP-7702 所支持的钱包功能,取决于几个因素:你的应用所处的开发阶段、目标用户类型,以及在多链部署应用时所需的灵活性程度。

面向已有用户和内嵌钱包的开发者

如果你已经有内嵌钱包,那就很幸运了。我们将帮助你通过智能账户管理不同类型的用户:

  • 现有 EOA 用户可以升级为 ERC-4337 账户
  • 新用户可以直接从纯 ERC-4337 账户开始
  • 系统将同时支持智能 EOA(EOA+7702)和纯 ERC-4337 账户

面向尚未部署应用的开发者

对于全新起步的应用而言:虽然 ERC-4337 和 EIP-7702 都能实现账户抽象,但它们在现代区块链应用中服务于不同的需求。

ERC-4337 提供纯粹的智能合约账户,具备最大程度的可编程性、丰富的交易自定义能力和成熟的工具链,非常适合单链应用,以及大多数以账户功能为核心诉求的多链应用。

相比之下,EIP-7702 提供了一种混合方案,让账户既可以作为 EOA,也可以作为智能合约运作,实现跨链的无缝兼容和在各网络间一致的地址,同时由于无需立即部署合约,初始 gas 成本也更低。

以下情况选择 ERC-4337:

  • 深度的账户可编程性是核心需求
  • 你在构建多链应用,但不需要在某些链上使用 EOA、在另一些链上使用 SCA 这样的灵活性
  • gas 成本不是主要考虑因素
  • 你需要丰富的交易自定义能力
  • 你希望利用现有的 4337 基础设施

以下情况选择 EIP-7702:

  • 你在构建多链应用,且各网络间地址的一致性是关键需求
  • 初始 gas 成本是你关心的问题
  • 与现有 EOA 基础设施的向后兼容很重要
  • 你希望能够先从简单方案起步,随后再逐步升级

EIP-7702 的关键优势在于其灵活性:你不必在 EOA 和智能账户的能力之间做出取舍,这对于需要同时与传统和现代区块链基础设施交互、并计划跨链扩展的应用来说尤为有价值。

面向与外部第三方钱包对接的应用

许多使用最广泛的钱包,比如 MetaMask,都计划在今年集成智能钱包功能。以下是你可以进一步了解的一些主题:

其他考虑事项

对于决定使用 EIP-7702 升级现有 EOA、并希望使用 7702 所支持*全部*功能的应用开发者而言,你需要一个中继器(relayer)。 虽然存在不同的中继器架构,但我们建议使用 4337 bundler,原因如下:

  • 提供标准化的中继接口;
  • 内置 paymaster 系统;
  • 确保向前兼容性;以及
  • 可以通过公共内存池(mempool)支持抗审查性

如果你需要 4337 bundler,Alchemy Bundler 可以满足你的需求。

展望未来:迈向主流采用之路

虽然 EIP-7702 有望让 Ethereum 变得更接近 Web 体验,但开发者应注意,主网初次上线后的采用程度取决于钱包能否率先集成这些功能——因此 EIP-7702 的可用性在短期内可能会受到限制。如果你想持续关注 Ethereum 开发者的最新讨论,可以查看这里的最新文章。

我们帮助你集成 EIP-7702

智能钱包提升用户数和交易量
智能钱包提升用户数和交易量

智能钱包帮助你实现零摩擦的链上体验。你现在就可以利用 EIP-7702 来升级你的 EOA,或部署新的 ERC-4337 账户。

  • 零摩擦入门:通过内嵌钱包实现用户熟悉的邮箱和社交登录
  • 无 gas 交易:为用户赞助 gas 费用,实现一键交易
  • 智能账户集成:轻松完成 SDK 集成,支持 ERC-4337、ERC-6900 和 EIP-7702

我们随时准备帮助你学习、构建和上线!

  1. 探索:阅读文档并开始构建。
  2. 需要支持?:联系我们!我们的团队 24/7 全天候待命,协助你实现这些功能

常见问题

什么是 EIP-7702?

EIP-7702 是包含在 Pectra 硬分叉中的一项 Ethereum 升级,它让外部拥有账户(EOA)能够将控制权委托给智能合约账户,使其获得智能账户的能力,例如批量交易、gas 赞助和社交恢复。

EIP-7702 如何与现有 EOA 协同工作?

EIP-7702 让现有 EOA 无需创建新账户或转移资产,就能获得智能合约功能。EOA 存储一个指向智能合约的委托指示符,使其能够直接从自身地址执行代码。

EIP-7702 与 ERC-4337 兼容吗?

是的,EIP-7702 的设计初衷是与 ERC-4337 互补,而非取代它。ERC-4337 提供纯粹的智能合约账户,而 EIP-7702 则让这些账户抽象功能能够被现有 EOA 使用,无需创建新钱包或进行迁移。

EIP-7702 为用户带来了哪些功能?

EIP-7702 带来了类似 Web2 的功能,包括账户恢复、便于身份验证的 passkey 登录、由他人赞助的交易 gas 费、使用任意代币(而不仅是 ETH)支付 gas,以及将多个操作批量处理为单笔交易。

使用 EIP-7702 的功能需要中继器吗?

如果你想使用 EIP-7702 所支持的全部功能,就需要一个中继器。我们建议使用 4337 bundler,因为它们提供标准化接口、内置 paymaster 系统,并确保向前兼容性。

什么情况下应该选择 EIP-7702 而不是 ERC-4337?

当你构建需要各网络间地址一致的多链应用时、当初始 gas 成本是你关心的问题时、当与 EOA 基础设施的向后兼容很重要时,或者当你希望先从简单方案起步、再逐步升级时,应选择 EIP-7702。

EIP-7702 的委托可以撤销吗?

可以,委托在用户明确撤销之前一直有效。要撤销智能合约控制权,需要再发送一笔 7702 交易,将委托重新设置为零。

EIP-7702 采用的主要依赖因素是什么?

主要依赖因素是钱包提供商的支持。由于钱包位于应用的上游,如果没有钱包的集成,应用开发者和他们的用户就无法使用 EIP-7702 的功能。

Background gradient

构建区块链应用

Alchemy 将最强大的 Web3 开发者产品和工具与资源、社区及专业支持结合在一起。