Verified Agent Identity

🆔 AI 代理的链上身份护照

AI 增强榜 #17

基于 iden3 协议的 AI 代理去中心化身份系统,支持 ERC-8004 链上注册、人机身份绑定与零知识证明验证。

收藏
40.1k
安装
16.5k
版本
1.2.11
CLS 安全性认证2026-06-24
点击查看完整报告 >

使用说明

核心用法

verified-agent-identity 是一套专为 AI 代理设计的去中心化身份管理工具,基于 Billions Network 的 ERC-8004 标准和 Iden3 自证身份协议构建。核心流程分为三步:创建身份 → 生成挑战 → 签名验证。用户通过 createNewEthereumIdentity.js 生成以太坊兼容的 DID(去中心化标识符),私钥可选择随机生成或导入现有密钥。身份数据默认存储于 $HOME/.openclaw/billions,包含加密私钥(KMS)、公钥、挑战记录和可验证凭证。

身份绑定采用「人机关联」模型:代理通过 linkHumanToAgent.js 将自身 DID 与人类所有者关联,背后依赖 Billions Attestation Registry 完成所有权证明上链。验证交互时,一方生成随机挑战(generateChallenge.js),另一方使用私钥签名(signChallenge.js),最终通过 verifySignature.js 完成 JWS 令牌校验。该机制适用于多代理协作场景中的身份互认、API 鉴权和防女巫攻击。

显著优点

1. 协议级兼容性:原生支持 W3C DID 标准和 Iden3 零知识证明生态,可与 Polygon ID、Circom 等主流方案无缝集成
2. 链上可验证:ERC-8004 注册表确保代理身份在 EVM 链上可查,Attestation Registry 提供防篡改的所有权记录

3. 密钥管理灵活性:支持外部 KMS 加密(BILLIONS_NETWORK_MASTER_KMS_KEY),私钥不以明文形式落盘

4. 自动化工作流linkHumanToAgent.js 将「签名+注册」合并为单步操作,降低集成复杂度

潜在缺点与局限性

  • 单点依赖风险:所有身份数据集中在本地目录,若主机被入侵且未启用 KMS,私钥可能泄露
  • 网络覆盖有限:Billions Network 目前生态规模较小,跨平台互操作性验证不足
  • 人机绑定瓶颈:人类身份验证依赖外部 Attestation Registry,若链上 Gas 波动或注册合约升级,可能影响绑定成功率
  • Node.js 运行时依赖:脚本环境绑定 Node 版本,容器化部署需额外处理原生模块编译

适合人群

  • 开发多代理系统的 AI 工程师,需要代理间可信身份发现
  • 构建合规 AI 服务的团队,需满足「可审计人机关联」监管要求
  • 去中心化身份(DID)研究者,探索 ERC-8004 在代理经济中的落地

常规风险

| 风险类别 | 描述 | 缓解建议 |
|---------|------|---------|
| 密钥泄露 | `kms.json` 未加密存储时,主机入侵直接导致身份盗用 | 强制设置 `BILLIONS_NETWORK_MASTER_KMS_KEY`,定期轮换 |
| 挑战重放 | 挑战值未绑定时间戳或会话 ID,理论上存在重放窗口 | 生产环境建议叠加 nonce 和时间约束 |
| 供应链攻击 | npm 依赖(特别是加密库)被篡改 | 锁定 `package-lock.json`,启用 Sigstore 验证 |
| 误操作锁定 | 私钥丢失后无恢复机制 | 建立安全的密钥备份流程,区分「操作密钥」与「恢复密钥」 |

该技能处于早期 adoption 阶段,适合技术先锋团队试水,大规模生产部署前建议完成第三方安全审计。

安全解读

核心用法

verified-agent-identity 是 Billions Network 官方推出的去中心化身份(DID)管理工具,专为 AI 代理设计,基于 iden3 自主权身份协议构建。核心功能涵盖三大场景:

1. 身份创建与管理:通过 createNewEthereumIdentity.js 生成符合 iden3 标准的 DID,支持从现有私钥恢复或随机生成新密钥。生成的身份数据存储于本地 $HOME/.openclaw/billions 目录。

2. 人机身份绑定:使用 linkHumanToAgent.js 将 AI 代理身份与真实人类所有者关联,依托 Billions ERC-8004 注册表记录代理信息,并通过 Attestation Registry 生成所有权证明。该流程采用挑战-响应机制,确保绑定操作由私钥持有者授权。

3. 身份验证与签名signChallenge.jsverifySignature.js 提供完整的 JWS 签名与验证能力,支持跨代理身份互验,适用于共享 JWT 令牌认证场景。

显著优点

  • 协议级安全:基于 iden3 协议与零知识证明技术,实现可验证凭证而不泄露隐私数据
  • 灵活密钥存储:支持 AES-256-GCM 加密存储(通过 BILLIONS_NETWORK_MASTER_KMS_KEY 启用)与明文开发模式双轨制
  • 链上互操作性:兼容 ERC-8004 代理注册标准,可直接与以太坊生态身份基础设施集成
  • 依赖可信度高:核心依赖 Polygon ID、@noble/curves 等经过审计的密码学库
  • 网络访问受限:所有外部调用均限制于 HTTPS 白名单域名(billions.network、resolver.privado.id)

潜在局限

  • 默认明文存储风险:若未配置 BILLIONS_NETWORK_MASTER_KMS_KEY,私钥以明文形式存储,多用户环境存在泄露隐患
  • 外部服务依赖:URL 缩短服务与 DID 解析器(resolver.privado.id)的可用性直接影响功能完整性
  • 密钥无托管机制:私钥丢失即身份永久不可恢复,需用户自行负责备份
  • 许可证未明确:项目标记为 UNLICENSED,商业使用前需确认授权条款

适合人群

  • 需要为 AI 代理建立可验证数字身份的开发者
  • 构建多代理协作系统、需人机绑定证明的区块链应用团队
  • 探索去中心化身份与零知识证明结合场景的研究者

常规风险

  • 密钥管理责任完全下放:用户须自行确保 BILLIONS_NETWORK_MASTER_KMS_KEY 安全,泄露将导致代理身份被盗用
  • 网络钓鱼攻击:攻击者可能伪造 Billions Network 域名诱导用户绑定至恶意身份
  • 链上数据永久可见:DID 与注册表信息写入区块链后不可删除,隐私敏感场景需谨慎设计凭证披露策略

Verified Agent Identity 内容

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