ERC-8196 智能体认证钱包:给 AI 代理的链上行为套上策略与审计两层闸 图 1
ERC-8196 智能体认证钱包:给 AI 代理的链上行为套上策略与审计两层闸 · 图 1

ERC-8196 智能体认证钱包:给 AI 代理的链上行为套上策略与审计两层闸

把私钥交给一个会自动下单、自动调仓的程序,是智能体经济里最危险的一步:程序没有常识,被提示注入一句就可能把整个金库转空。ERC-8196 的思路不是让智能体直接持有钱包,而是在钱包前面装一层策略引擎——链上登记一组允许规则,智能体的每一笔动作都必须先过规则检查,通过后由钱包合约代发,同时留下可查询的审计记录。按照以太坊 ercs 仓库的记录,这份提案名为 AI Agent Authenticated Wallet,状态为 Final,创建于 2026 年 3 月 14 日。

策略是登记在链上的数据,不是提示词

接口里的 registerPolicy 把一条策略写进合约,策略内容以哈希 policyHash 作为主键索引;getPolicy(bytes32 policyHash) 让任何人可以免 Gas 读回这条策略的登记信息;revokePolicy(bytes32 policyHash, string calldata reason) 则允许策略管理者撤销一条旧规则,并要求附上撤销理由文本。两条动作分别触发 PolicyRegisteredPolicyRevoked 事件。换句话说,“这个代理每天最多能花多少、能调用哪些合约”这类约束的当前版本,是可以从链上直接查证的,而不是藏在智能体提供商的服务器配置里。

ERC-8196 智能体认证钱包:给 AI 代理的链上行为套上策略与审计两层闸 图 2
ERC-8196 智能体认证钱包:给 AI 代理的链上行为套上策略与审计两层闸 · 图 2

executeAction 把代理意图和钱包执行分开

智能体并不直接调用 ERC-20 的 transfer,而是调用钱包合约的 executeAction,把想做的事作为参数提交。钱包合约先按登记的策略做检查,检查不过就整笔退回;检查通过后由钱包这个真正的资产持有者去执行底层调用,并记录 ActionExecuted 事件。每一次进入钱包的请求——无论通过还是拒绝——还会写入 AuditEntryLogged 事件。这形成了两份可以事后对账的账:策略账告诉你当时允许什么,审计账告诉你实际发生了什么。出现异常提现时,你不需要信任智能体厂商的后台日志,链上事件本身就是不可篡改的行为流水。

和 setApprovalForAll 或普通授权差在哪

常规授权是把额度或转让权一次性交给某个地址,交出去之后对方做什么、做几次,钱包无法在链上分辨。ERC-8196 的结构里,资产始终躺在钱包合约名下,外部地址至多是个提需求的人,每一笔都要重新过策略门。这更接近公司财务章管理制度:章不在经办人手里,每次用章登记一次。代价是多了合约这一层——钱包合约自身的漏洞、策略被管理员恶意改写的风险,都属于智能合约风险,标准用 revokePolicy 的理由字段和全量审计事件来缓解,但没有消除。

普通用户可以自查的三件事

把它放进智能体钱包的光谱里看

给程序管钱的做法是一个光谱:最左端是把私钥直接写进配置文件,安全性约等于零;往右是专用子账户加限额,再往右是这层带策略引擎的钱包合约,最右端是完全人在环中的审批队列。ERC-8196 的位置在光谱右半边——它假设你确实愿意让程序自动执行日常动作,前提是每一笔都受链上策略约束、每一笔都留痕。选位置的依据不是技术先进与否,而是你能接受的事故半径:策略引擎挡得住越权,挡不住策略本身写错;审计日志能还原事故,不能阻止事故。所以对风险厌恶的资金,正确的用法往往是用它管理日常小额热钱包,冷存储仍然留在完全离人的批准队列里。

第一,查策略:调用 getPolicy 或在区块浏览器里过滤 PolicyRegistered 事件,看当前生效的规则是否和服务页面宣称的限额一致。第二,查审计:过滤 ActionExecutedAuditEntryLogged,把链上动作和客户端展示的动作逐条对照,链上有而客户端没展示的,就是必须追问的差额。第三,查撤销:PolicyRevoked 事件里的 reason 字段是免费的信息来源,频繁无理由撤销再注册的合约,说明规则处于人为随时改写的状态。按 ercs 仓库口径,该提案状态为 Final;Final 表示规范文本冻结,不等于市面上所有智能体钱包都已实现它,接入前仍然要用 EIP-165 或直接读函数列表核对。本文为机制说明,不构成任何投资建议。