
账户抽象(Account Abstraction)是推动以太坊用户体验进化的关键技术之一,它让账户逻辑从硬编码转向合约可编程。本专题围绕 EIP-4337 与 ERC-6900 展开,系统讲解账户抽象的设计目标、核心机制与模块钱包架构。你将深入理解 EntryPoint、UserOperation、Bundler、Paymaster 等核心组件,以及模块钱包的权限系统、代付策略与扩展模块设计。通过架构图与交互流程的可视化展示,帮助你掌握智能账户的部署执行流程与开发集成方式,适用于 Web3 钱包开发者、合约工程师与产品设计人员。
专题目录结构(建议共 12 篇)
🌱 第一阶段:理解账户抽象的起点与需求
- 从 EOA 到智能账户:账户抽象的设计动机与历史演进
- EOA vs 合约账户的差异与局限
- 用户操作痛点分析(gas、签名、权限管理等)
- AA 的提出背景与早期方案(如 EIP-2938)
- EIP-4337 原理详解:绕过共识层的账户抽象实现
- EntryPoint 架构
- UserOperation 的生命周期
- Bundler 的角色与执行流
- EIP-4337 核心合约与结构解读:EntryPoint 与验证流程
- EntryPoint 合约关键函数
- handleOps 流程与 paymaster 执行顺序
- validation vs execution 阶段
- 智能账户架构设计:从 SimpleAccount 到自定义验证器
- SimpleAccount 实现分析
- 验证函数、nonce 管理、签名策略
- 如何定制你的 Smart Account
⚙️ 第二阶段:模块化扩展与实际应用
- Paymaster 机制详解:如何实现代付功能与策略控制
- 支持代付的场景与优势
- 白名单、限额、时间窗等策略设计
- 实现一个自定义 Paymaster 合约
- EIP-1271 签名验证标准与合约账户兼容性方案
- 为什么 EOA 的 ecrecover 不适用于合约账户
- EIP-1271 接口规范与实现方式
- 前端如何集成合约签名验证
- Web3 前端如何接入账户抽象:连接器、登录与签名
- Wallet SDK 与 Bundler 接入方式
- UserOperation 构造与签名流程
- Viem / Ethers.js v6 / Wagmi 中的实践
- 模块钱包架构解析:ERC-6900 与模块管理框架
- ERC-6900 核心思想:模块化合约账户
- executionModule、permissionModule、validatorModule 分类
- 多模块协作执行逻辑详解
🧩 第三阶段:进阶机制与生态落地
- 权限管理模块设计:如何实现可组合的权限系统
- Module 的注册与调用过程
- Role-based Access Control(RBAC)在模块钱包中的实现
- 使用案例:父母钱包、企业级多签账户
- Session Key 与临时权限机制:链游、Bot、签名授权最佳实践
- 什么是 Session Key?与 MPC/Passkey 的关系
- 限时限权的操作授权机制
- 应用案例:链游自动操作、社交 dApp 快速交互
- 安全性分析:账户抽象带来的新攻击面与防护策略
- Paymaster 滥用与 gas griefing
- 验证函数被绕过的可能性
- 合约钱包的回滚风险与模块升级安全