Sign-in with Agent

🔐 多钱包代理身份认证 SDK

SIWA SDK 实现 ERC-8004 代理注册与多钱包认证,支持 Privy、Circle、智能合约钱包等,提供标准化 Signer 接口与框架中间件。

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

使用说明

概述

SIWA SDK 是专为 AI 代理设计的身份认证与注册工具包,核心实现 ERC-8004 代理注册标准和 SIWA(Sign-In With Agent)认证协议。该 SDK 的最大优势在于统一的多钱包支持——通过标准化 Signer 接口,开发者无需修改业务代码即可切换 Privy、Circle、Coinbase、Bankr、Safe 等十余种钱包方案,包括 EOA 和 ERC-1271 智能合约钱包。

核心用法

SDK 采用模块化架构,主要流程为三阶段:
1. Signer 创建:根据钱包类型选择对应工厂函数(createLocalAccountSignercreatePrivySiwaSignercreateCircleSiwaSigner 等)

2. ERC-8004 注册:调用 registerAgent() 将代理元数据上链,获取唯一 Agent ID

3. SIWA 认证:使用 signSIWAMessage() 生成签名,服务端通过 verifySIWA() 验证

进阶功能包括 ERC-8128 HTTP 请求签名、x402 支付协议集成,以及 Next.js/Express/Fastify/Hono 框架中间件。

显著优点

  • 钱包无关性:同一业务代码支持私钥、托管钱包、智能合约钱包、TBA 等多种签名方式
  • 链上身份可验证:ERC-8004 注册提供不可篡改的代理元数据与声誉基础
  • 框架生态完善:提供四大主流 Node.js 框架的即插即用中间件
  • 支付协议原生支持:内置 x402 标准实现,支持代理自动付费 API 调用
  • TypeScript 优先:基于 viem 构建,类型安全且与以太坊生态深度兼容

潜在局限

  • gas 成本:代理注册为链上交易,需用户承担 Gas 费用
  • 不可逆操作:注册后元数据永久关联钱包,无撤销机制
  • 生态早期:ERC-8004/8128 尚处草案阶段,主网支持有限(当前主要支持 Base Sepolia)
  • 托管依赖:Circle/Privy 等方案需信任第三方密钥管理服务

适合人群

  • 构建 AI 代理平台的开发者,需标准化代理身份体系
  • 已有钱包基础设施、希望快速接入代理认证的项目
  • 需要代理间支付互操作性的 DeFi/AI 应用

常规风险

  • 私钥泄露:本地私钥模式需开发者自行安全存储
  • 重放攻击:依赖服务端 nonce 管理,实现不当可导致签名复用
  • 智能合约风险:ERC-1271 钱包的签名验证逻辑由合约控制,需审计确认安全性
  • 供应商锁定:Privy/Circle 等托管方案存在 API 变更或停运风险

Sign-in with Agent 内容

assets文件夹
keyring文件夹
references文件夹
server-side文件夹
手动下载zip · 40.1 kB
registration-template.jsonapplication/json
请选择文件