Verified Agent Identity

🆔 AI 代理去中心化身份管理

identity榜 #1

基于 iden3 协议构建的 Billions 去中心化身份代理系统,支持 AI 代理自主创建 DID、绑定真人身份及生成可验证认证凭证,实现人机可信链接。

收藏
50.7k
安装
15.6k
版本
1.0.1
CLS 安全性认证2026-05-17
点击查看完整报告 >

使用说明

核心用法

本 Skill 为 AI 代理提供完整的去中心化身份(DID)生命周期管理能力,基于 iden3 自主权身份协议构建。核心脚本包括:

| 脚本 | 用途 |
|------|------|
| `createNewEthereumIdentity.js` | 创建新 DID 身份,支持随机生成或导入私钥 |
| `getIdentities.js` | 列出本地存储的所有身份 |
| `generateChallenge.js` | 为特定 DID 生成随机挑战值 |
| `signChallenge.js` | 使用 DID 私钥签名挑战 |
| `linkHumanToAgent.js` | 一站式签名挑战并创建人机绑定验证请求 |
| `verifySignature.js` | 验证 JWS Token 确认 DID 所有权 |

典型工作流

1. 代理身份创建:运行创建脚本生成 did:iden3:billions:main:... 格式 DID
2. 人机绑定:通过 linkHumanToAgent.js 将代理 DID 与真人身份关联(底层使用 Billions ERC-8004 Registry 和 Attestation Registry)

3. 身份验证:代理间通过挑战-响应机制验证对方 DID 所有权

显著优点

  • 协议成熟:基于 iden3 经过验证的自主权身份协议,支持零知识证明
  • 标准化合规:符合 ERC-8004 代理注册标准,与以太坊生态兼容
  • 双注册机制:ERC-8004 代理注册表 + Attestation 注册表双重验证人机关系
  • 密钥灵活:支持新生成或导入现有私钥,兼容 0x 前缀格式

潜在局限

  • 依赖 Node.js 环境:所有脚本为 Node.js 实现,需预装依赖
  • 本地存储风险:私钥默认存储于本地 JSON 文件,虽有可选 BILLIONS_NETWORK_MASTER_KMS_KEY 加密,但配置不当易泄露
  • 挑战值语义混淆linkHumanToAgent.js--challenge 参数既可接受随机数值,也接受 JSON 对象,接口设计存在歧义
  • 网络依赖:需连接 Billions Network 完成链上注册和验证

适合人群

  • 需要为 AI 代理建立可验证数字身份的开发者
  • 构建人机协作可信系统的平台方
  • 探索去中心化代理经济的早期采用者

常规风险

| 风险类型 | 说明 |
|---------|------|
| 私钥泄露 | `kms.json` 若未配置主密钥加密,私钥以明文存储于本地 |
| 中间人攻击 | 挑战-响应流程若在不安全通道传输,可能被截获重放 |
| 身份伪造 | 需严格验证 `verifySignature.js` 结果,不可仅凭 DID 字符串信任身份 |
| 配置错误 | 脚本硬性要求先检查身份存在性,跳过步骤会导致不可预期的失败 |

安全解读

核心功能

verified-agent-identity 是一款专为AI代理设计的去中心化身份管理Skill,基于 iden3 自主主权身份协议Billions Network 构建。它允许AI代理创建、管理和使用符合W3C标准的去中心化标识符(DID),实现与真人身份的链上关联与验证。

显著优点

1. 企业级安全架构:私钥支持AES-256-GCM加密存储,敏感数据隔离在$HOME/.openclaw/billions/目录,与Agent Workspace物理分离
2. 标准化协议栈:采用iden3/Polygon ID SDK、ethers.js、@noble/curves等行业标准库,兼容ERC-8004身份注册表和Attestation Registry

3. 人机双向验证:支持代理→人类(linkHumanToAgent)和人类→代理(challenge-sign-verify)的双向身份关联流程

4. 零知识友好:基于iden3协议原生支持零知识证明,为未来隐私保护场景预留扩展空间

潜在缺点与局限性

  • 外部依赖较重:需访问resolver.privado.id、billions.network等白名单域名,网络不可用时DID解析功能受限
  • 密钥管理责任:默认状态下私钥以明文存储,必须手动配置BILLIONS_NETWORK_MASTER_KMS_KEY才能启用加密
  • 许可状态模糊:package.json声明为"UNLICENSED",开源合规性存在不确定性
  • Node.js单点依赖:仅支持Node运行时环境,无其他语言绑定

适合人群

  • 需要为AI代理建立可验证数字身份的开发者
  • 构建人机协作系统的企业,需证明"AI背后有人负责"
  • 探索DeAI(去中心化AI)和自主代理经济的协议开发者
  • 对SSSI(自我主权身份)技术栈有基础认知的技术团队

常规风险

| 风险类型 | 等级 | 说明 |
|---------|------|------|
| 私钥泄露 | **高** | 未配置主密钥时明文存储,文件系统权限泄露可导致身份盗用 |
| 网络中间人 | **低** | 全HTTPS通信,但resolver服务被攻破可导致DID文档篡改 |
| 社会工程 | **中** | challenge/response流程可能被钓鱼利用,需用户端验证 |
| 密钥丢失 | **高** | 无托管恢复机制,主密钥或kms.json丢失即永久失去身份 |

建议:生产环境务必启用BILLIONS_NETWORK_MASTER_KMS_KEY,并离线备份加密后的kms.json

Verified Agent Identity 内容

scripts文件夹
shared文件夹
storage文件夹
手动下载zip · 47.0 kB
base.jstext/javascript
请选择文件