Sign-in with Agent

🤖 AI 代理的链上身份认证标准

SIWA 让 AI 代理以 ERC-8004 链上身份完成服务认证,支持多钱包签名、服务器验证、x402 支付及反向验证码,实现完整的代理身份体系。

收藏
5.3k
安装
1.9k
版本
0.0.4
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

SIWA(Sign-In With Agent)是专为 AI 代理设计的链上身份认证 SDK,基于 ERC-8004 标准实现代理注册与验证。开发者可通过 @buildersgarden/siwa 快速集成:

代理端签名:支持 Bankr、Circle、Privy、Private Key、Keyring Proxy(自托管+可选2FA)等多种钱包方案,通过 signSIWAMessage 生成符合 ERC-8004/ERC-8128 规范的认证消息。

服务器端验证:提供 Next.js、Express、Hono、Fastify 等框架的原生中间件,自动处理 nonce 生成、签名验证、身份解析。

x402 支付集成:当 API 返回 402 状态码时,代理可解码 Payment-Required 头,构造签名支付载荷并通过 Payment-Signature 重试,实现「先认证后付费」的自动化流程,支持 pay-once 会话模式。

反向 CAPTCHA:独特的人机区分机制——服务器下发多约束文本生成挑战(行数、ASCII和、词数等),利用 LLM 的单步自回归生成能力解题,人类因需迭代而难以通过。提供 solveCaptchaChallenge(登录时)和 retryWithCaptcha(请求中)两种集成模式。

显著优点

  • 标准先行:直接对接 ERC-8004(代理身份注册)与 ERC-8128(HTTP 签名验证),避免私有协议碎片化
  • 全栈覆盖:从底层签名到框架中间件、从支付到验证码,SDK 分层设计清晰
  • 多链支持client-resolver 模块支持动态 PublicClient 解析,便于构建多链后端
  • 支付原生:x402 方案将链上支付语义融入 HTTP 状态码,对代理调用友好
  • 安全增强:Keyring Proxy 提供自托管+2FA 选项,反向 CAPTCHA 防止人类冒充代理

潜在局限

  • 标准依赖:ERC-8004/8128 尚处草案阶段,主网采用率与长期稳定性待观察
  • 验证码成本:每触发一次 CAPTCHA 需调用 LLM 生成文本,高频场景下延迟与费用显著
  • 学习曲线:x402 支付流、ERC-8128 HTTP 签名、反向 CAPTCHA 三套机制并行,集成复杂度较高
  • 生态早期:代理注册表(agentRegistry)的权威数据源与抗女巫攻击机制未完全公开

适合人群

  • 构建 AI 代理服务的全栈开发者,需为代理赋予可验证链上身份
  • DeFi/支付协议团队,探索「代理代付」「按调用付费」等新型商业模式
  • 对「人机区分」有强需求的应用,希望利用 LLM 特性设计专属门槛

常规风险

  • 私钥泄露:Private Key 模式虽便利,但生产环境易因密钥管理不善导致资产损失
  • 重放攻击:依赖 nonce-store(Memory/Redis/KV)实现,配置不当可能导致签名重放
  • 支付前置风险:x402 的 pay-once 会话若实现有漏洞,可能出现「一付多用」或会话劫持
  • 标准漂移:草案阶段 EIP 参数调整可能带来破坏性更新

Sign-in with Agent 内容

.claude文件夹
assets文件夹
bankr文件夹
circle文件夹
keyring-proxy文件夹
private-key文件夹
privy文件夹
references文件夹
server-side文件夹
手动下载zip · 40.0 kB
settings.local.jsonapplication/json
请选择文件