什么是模块化账户抽象?
作者 Logan Ross
Modular AA 是一场旨在推广模块化智能账户的运动。其目标是让账户对用户来说可定制,并让开发者能够构建具有丰富上下文且自成一体的账户功能。
模块化智能合约账户(SCA)让开发者能够为账户创建实用的新扩展功能。举例如下:
- 社交恢复(Social Recovery) - 允许受信任的设备或朋友在你失去账户访问权限时协助你恢复账户
- 消费限额(Spending Limits) - 允许应用代表你消费代币,但不超过指定限额
- Passkey 支持 - 使用生物识别(如 FaceID)登录
通过将模块化标准化,可以大幅降低交易对手风险,从而带来简单且安全的 web3 用户体验。
ERC-4337 标准规定了一套基础设施组件和编码标准,实现该标准后,用户就能以智能合约作为其主要账户类型,而不是私钥。此前,主要账户类型是 EOA(外部账户),与 SCA 不同,EOA 不具备自定义的验证和执行逻辑。
本文将概述模块化账户抽象(Modular Account Abstraction):它能实现什么,以及现有的标准和实现方式。
通过将模块化智能账户钱包嵌入你的 web3 应用,让用户无需助记词或 gas 即可上手,并借助我们纵向整合的 AA 基础设施进行扩展。
模块化智能合约账户有哪些不同类型?
智能合约账户本质上是智能合约:它们可升级、可扩展,也可被继承。根据 SCA 的具体实现方式,其可能允许或不允许添加插件/模块。本文将探讨模块化 AA 的两种不同概念:ERC-6900 和 SAFE Modules。
1. ERC-6900:模块化智能合约账户与插件
ERC-6900的目标是定义标准 Account 与 Module 实现之间的一套接口。该提案希望在切换账户实现时,改善开发者体验、Module 互操作性以及数据可移植性。
该标准的灵感来自 ERC-2535,但它并不要求开发者遵循 Diamond 模式。
什么是用于模块化智能合约账户的 ERC-6900 插件?
ERC-6900 定义了哪些类型的插件?
根据该标准,插件可分为三种类型:
- 验证方案(Validation Schemes) - 定义模块化智能合约账户(MSCA)在何种情况下会批准代表其执行的交易
- 执行逻辑(Execution Logic) - 在执行期间执行的任意逻辑
- 钩子(Hooks) - Hooks 可以在用户操作(user operation)执行前后触发要执行的任意逻辑

该标准还定义了:
- 如何为 MSCA 实现 Validation、Execution 和 Hook 插件。
- 符合标准的账户实现应如何添加、移除、更新和查看插件。
- FunctionReference 等辅助类型。

ERC-6900 定义了哪些类型的接口?
ERC-6900 规范定义了三个主要接口:IPluginUpdate、IPluginLoupe 和 IStandardExecutor。
1. IPluginUpdate
IPluginUpdate 接口定义了:
- 插件操作 ADD、REMOVE 和 REPLACE
- Validator 类型和 Hook 类型
- 用户定义的 struct,用于更新各类插件
- 标准化的 updatePlugins 函数(在更新插件时调用)以及在更新后触发的 ExecutionPluginUpdate 事件
2. IPluginLoupe
IPluginLoupe 的灵感来自 ERC-2535,ERC-6900 定义了 dapp 或其他合约如何读取 MSCA 所支持的插件。
3. IStandardExecutor
IStandardExecutor 是模块化智能合约账户应实现的接口,以支持开放式执行。
2. SAFE modules
所有基于 SAFE 的账户都支持 SAFE Modules。为了维持高安全标准,SAFE 团队遵循关注点分离模式,实现了不同的模块类型。
- Modules - 白名单地址,可以代表 Safe 智能账户执行交易。
- Guard - 一种合约,可以设置用于对将要执行的交易进行额外检查。
- Fallback Handler - 一种合约,可以设置用于处理任意传入(读取)调用。
更多信息可参见 Safe 的模块化 SCA 架构文章。
什么是 SAFE SCA modules?
SAFE 的 Modules 是独立的智能合约,拥有权限在用户的 SAFE 智能合约账户上执行交易。Modules 可以通过 execTransactionFromModule 函数在 SAFE 账户上执行任意交易。由于 SAFE 团队决定了 SAFE 账户的具体实现方式,插件开发者必须遵守相应的规则和指南。SAFE modules 仅_与 SAFE 账户兼容_。
模块开发者与用户之间存在重大的信任假设,因此经过实战检验的模块更有可能持续被采用。

什么是 SAFE SCA guards?
Guard 是可为 SAFE 账户设置的智能合约,用于对传入交易执行额外的安全检查。在交易执行前,会先调用 Guard 并传入所有交易参数;如果 Guard 没有回滚(revert),交易才会继续执行。
执行后会再次调用 Guard,以进行状态变更检查或执行任意逻辑。
Guard 也可以被视为一种 hook,因为它适用于交易前后的状态检查。

什么是 SAFE SCA fallback handler?
Fallback Handler 会执行所有发送给 SAFE 账户、且可由其处理的调用。这有助于符合行业通用标准,例如合约签名(EIP-1271)。据 SAFE 所述,“插件完全独立于核心 SAFE 合约,并维护各自的存储”。

结论
正如 ERC-6900 所描述、Safe Modules 所设计的那样,模块化账户抽象旨在通过插件扩展智能合约账户的能力——这些插件可由开发者构建,并由智能合约钱包用户安全安装。
如需了解更多信息,请浏览我们的 ERC-4337 教育中心,或了解我们开箱即用的 Embedded Accounts,立即开始构建。
相关概览
钱包2026年9月2日
智能体钱包:AI 智能体的会话与权限模型
AI 智能体如何在不持有私钥的情况下获得受限且可撤销的钱包访问权限:会话、委托签名与即时撤销。
钱包2026年7月29日
别再把私钥粘贴进 Cursor 了:如何给你的编码 agent 配一个钱包
给你的编码 agent 配一个钱包,而不必把私钥交给它。了解 Alchemy CLI agent 钱包如何使用限定范围的会话,让 agent 无需在 .env 中存放私钥即可完成交易。
钱包2026年6月24日
什么是 crypto bundler?
crypto bundler 将多笔交易或操作合并为一次链上提交,应用于 batching、MEV、rollup、代币发行和账户抽象等场景。

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