Pectra 升级 / EIP-7702
Pectra 升级 / EIP-7702
本页内容正在整理中,欢迎贡献。
概述
2025 年 5 月,以太坊完成 Pectra 升级(Prague 执行层 + Electra 共识层的合称)。其中最受开发者关注的是 EIP-7702,它为 EOA(外部账户)带来了临时智能合约逻辑,是迄今为止对用户体验影响最深远的账户抽象升级。
主要内容
EIP-7702:为 EOA 注入合约逻辑
EIP-7702 引入了新的交易类型(Type 4),允许 EOA 在一笔交易中临时将自己的代码设置为某个合约的代码:
EOA 发送 Type 4 交易: authorization_list: [(chain_id, contract_address, nonce, signature), ...]
效果: - EOA 地址的 code = contract_address 的字节码 - 下次调用该 EOA 时,将执行合约逻辑 - 可随时通过发送新的 Type 4 交易清除或更换EIP-7702 能做什么?
1. Gas 代付(Sponsored Transactions)
// 用户授权后,Paymaster 可代为支付 Gas// 用户无需持有 ETH 即可使用 DApp2. 批量交易
// 一笔交易完成:approve + swap// 原来需要两笔交易,现在一笔搞定function executeBatch(Call[] calldata calls) external { for (uint i = 0; i < calls.length; i++) { (bool success,) = calls[i].target.call{value: calls[i].value}(calls[i].data); require(success); }}3. 会话密钥(Session Keys)
// 授权临时密钥在有限范围内操作账户// 游戏场景:无需每次操作都弹出钱包确认4. 社交恢复
// 为 EOA 添加多签或社交恢复逻辑// 不再因丢失私钥而永久失去账户EIP-7702 vs ERC-4337
| 特性 | EIP-7702 | ERC-4337 |
|---|---|---|
| 是否需要部署新合约 | 否(借用已有合约逻辑) | 是(SmartAccount 合约) |
| 账户地址 | 保持原 EOA 地址 | 新的合约地址 |
| 向后兼容 | 完全兼容现有 EOA | 需要迁移 |
| 激活条件 | 用户签名一笔 Type 4 交易 | 部署合约 + EntryPoint |
| 适合场景 | 现有 MetaMask 用户升级体验 | 新用户原生智能账户 |
Pectra 包含的其他重要 EIP
执行层(Prague)
| EIP | 说明 |
|---|---|
| EIP-7702 | EOA 智能合约化 |
| EIP-2537 | BLS12-381 预编译(高效 BLS 签名验证) |
| EIP-7623 | 提高 calldata 成本(推动更多使用 blob) |
| EIP-7840 | 将 blob 调度参数放入 EL 配置 |
共识层(Electra)
| EIP | 说明 |
|---|---|
| EIP-7251 | 最大有效余额提升至 2048 ETH(减少验证者数量) |
| EIP-7002 | 执行层触发退出(合约可发起验证者退出) |
| EIP-7549 | 将委员会索引移出证明 |
| EIP-6110 | 将验证者存款内联到区块 |
EIP-7251:验证者整合
验证者最大余额从 32 ETH 提升到 2048 ETH:
- 大型质押者可将多个 32 ETH 验证者合并为一个
- 减少网络中活跃验证者数量,降低共识通信开销
- 不影响散户:仍可以 32 ETH 作为独立验证者
EIP-7002:执行层触发退出
// 智能合约现在可以触发验证者退出// 重要性:流动性质押协议(Lido、Rocket Pool)可以实现自动化退出// 无需中心化操作员手动退出
address constant WITHDRAWAL_REQUEST_PREDEPLOY = 0x...;IWithdrawalRequest(WITHDRAWAL_REQUEST_PREDEPLOY).add{value: fee}( validatorPubkey, withdrawalAmount);开发者行动指南
- 了解 EIP-7702:阅读 EIP 规范,了解 Type 4 交易格式
- 关注智能合约钱包库:Safe、Ambire 等已开始适配 EIP-7702
- Paymaster 集成:如果你的 DApp 希望代付 Gas,评估 EIP-7702 方案
- 会话密钥:游戏、高频交互场景考虑引入会话密钥改善 UX