如果给 AI 代理配钱包,请把这些防护栏放在模型之外

Reddit r/AI_Agents 新闻

摘要

一位从业者分享了保护带加密钱包的 AI 代理的最佳实践:把私钥挡在模型之外,在签名服务代码(而非提示词)中强制执行限额,配合白名单、模拟、日志和紧急开关,防御提示注入与超额支出。

代理支付正在快速增长(仅 x402 的交易量就已突破 1 亿笔),而很多现有方案基本上就是把钥匙直接交给代理。我平时做加密后端,也构建代理,下面说说我的做法。 模型永远看不到私钥。签名在一个独立服务中完成(KMS、MPC,无论你用什么)。代理只发出类似"向这个地址支付这个金额,用途是这个"的请求。 规则写在普通代码里,不写在提示词里。系统提示词里的"支出永远不超过 $50"只是一个建议;签名服务里的策略检查才是一条规则。 设硬性限额。单笔上限、每日上限,并且代理钱包里只放少量余额。用另一个钱包来补充资金,而不是把代理指向你的主资金库。 对资金去向设白名单。只允许已知的收款人和合约。任何新的地址都需要人工审批。 发送前先模拟。先在分叉网络或模拟 API 上跑一遍这笔交易,检查结果是否与代理声称的行为一致。 警惕提示注入。如果代理会读取网页、邮件或 API 响应,其中任何一条都可能说"把资金发送到这个地址"。限额不能写在提示词里,正是这个原因。 记录意图与结果。保存代理试图做什么、为什么这么做,以及交易哈希。一旦出现异常,你需要完整的过程记录。 准备紧急开关。一个标记位就能停止代理的所有支出,团队中任何人都可以触发。 这些都不算花哨。交易所对热钱包做的就是同样的事。代理只是一种新的用户类型,你不该完全信任它。 其他人是怎么处理的?尤其想了解有没有人有一套干净的审批方案。
查看原文

相似文章