以太坊早期的账户模型将用户行为与密钥控制紧密耦合,限制了钱包的灵活性与可扩展性。**账户抽象(Account Abstraction, AA)**试图打破这一耦合,让合约账户像外部账户一样发起交易、管理资产、实现自定义逻辑。

本章将深入解析 AA 背后的动机、核心 EIP(特别是 EIP-4337)、核心组件(EntryPoint、UserOperation 等)与运行流程,并展示其对未来 Web3 用户体验、支付模型与安全性的深远影响。


✦ 1. 什么是账户抽象(Account Abstraction)?

账户抽象:让合约账户也能像外部账户(EOA)一样自主发起交易,并定义自定义验证逻辑。

传统以太坊账户模型:

类型 特点 限制
EOA(外部账户) 私钥控制,直接发交易 不能自定义签名方式;易丢失私钥
CA(合约账户) 只能被动接收调用 无法主动发交易;签名依赖外部账户

账户抽象的目标是融合两者优点:

✅ 安全性 + ✅ 灵活性 + ✅ 主动性


✦ 2. 为什么需要AA?

🔒 安全性需求

🌍 用户体验

🧩 可组合性