Verified Agent Identity

🆔 AI代理的去中心化身份与链上认证

identity榜 #1

为AI代理创建Billions去中心化身份,基于iden3协议实现人机身份绑定与零知识证明验证,支持ERC-8004链上注册。

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

使用说明

核心用法

verified-agent-identity 是专为AI代理设计的去中心化身份管理工具,基于Billions Network和iden3自主身份协议构建。该技能允许AI代理创建、管理和验证DID(去中心化标识符),实现与真人身份的可验证绑定。

关键功能模块:

  • 身份创建createNewEthereumIdentity.js 生成基于以太坊的DID,支持随机生成或导入现有私钥
  • 身份查询getIdentities.js 管理本地存储的多个DID身份
  • 挑战-响应认证generateChallenge.js 生成随机挑战,signChallenge.js 用私钥签名证明所有权
  • 人机绑定linkHumanToAgent.js 通过ERC-8004注册表和Attestation Registry完成代理到人的链上关联
  • 签名验证verifySignature.js 验证JWS令牌确认身份

典型工作流:
1. 创建身份 → 2. 生成挑战 → 3. 签名挑战 → 4. 链上注册绑定 → 5. 验证对方身份

显著优点

  • 协议级安全:基于iden3零知识证明和iden3 circuits,实现隐私保护的身份验证
  • 链上可验证:ERC-8004标准确保代理身份在Billions Network可审计、不可篡改
  • 人机分离设计:代理DID与真人DID通过Attestation Registry解耦绑定,符合监管合规要求
  • 标准化互操作:支持W3C DID标准和JWT/JWS令牌,便于跨系统集成
  • 灵活密钥管理:支持可选KMS加密(BILLIONS_NETWORK_MASTER_KMS_KEY),私钥可导出备份

潜在缺点与局限性

  • Node.js依赖:必须预装Node环境,增加运行时复杂度
  • 私钥安全风险:未配置KMS时私钥以明文存储于本地JSON文件
  • 单点网络依赖:绑定验证依赖Billions Network的可用性,主网稳定性待验证
  • 人机绑定摩擦:真人需配合完成挑战签名流程,不适合纯自动化场景
  • 凭证生态早期:Verifiable Credential的发行方和验证场景尚不完善

适合人群

  • 需要合规人机绑定的AI代理开发者(满足"AI需标识责任人"的监管趋势)
  • 构建多代理协作网络的团队(需相互验证身份防冒充)
  • 探索DeFAI/代理经济的Web3项目(ERC-8004支持代理链上资产操作)
  • 自主身份(SSI)有技术信仰的研究者和极客

常规风险

| 风险类型 | 具体说明 | 缓解建议 |
|---------|---------|---------|
| 密钥泄露 | `kms.json`明文存储或未授权访问 | 强制启用`BILLIONS_NETWORK_MASTER_KMS_KEY`环境变量 |
| 中间人攻击 | 挑战传输过程被截获篡改 | 结合TLS信道,验证挑战新鲜性(timestamp/nonce) |
| 链上隐私 | DID与地址的公开关联性 | 使用零知识证明选择性披露,避免敏感metadata上链 |
| 脚本注入 | `--challenge`参数未过滤导致命令注入 | 严格校验输入为JSON格式,禁用shell特殊字符 |
| 身份冒用 | 私钥备份被盗后无法吊销 | 设计密钥轮换机制,监控链上异常attestation |

安全等级说明

该技能涉及私钥生成、签名操作、链上身份注册等高危操作,虽已内置多重guardrails(强制检查身份存在性、禁止手动绕过、失败即停),但私钥本地存储的默认设计和Node脚本执行环境带来供应链攻击面。建议生产环境配合HSM或KMS使用,并审计scripts/目录完整性。

安全解读

核心用法

verified-agent-identity 是专为 AI 代理设计的去中心化身份管理工具,基于 Billions Network 和 iden3 自托管身份协议实现。核心功能包括:

1. 身份创建与管理:通过 createNewEthereumIdentity.js 生成新的以太坊兼容 DID(如 did:iden3:billions:main:...),支持从现有私钥导入或随机生成,所有身份数据存储于 $HOME/.openclaw/billions/

2. 人机身份关联:使用 ERC-8004 注册表和 Attestation Registry,通过 linkHumanToAgent.js 将代理身份与人类所有者绑定,需人类完成挑战签名验证。

3. 签名与验证signChallenge.js 对挑战进行 JWS 签名以证明身份所有权,verifySignature.js 验证第三方签名确认其 DID 控制权。

4. 挑战生成generateChallenge.js 为特定 DID 生成随机数挑战,用于后续的签名验证流程。

显著优点

  • 协议标准性:采用 W3C DID 标准和 iden3 协议,互操作性强,可直接对接 Polygon ID 生态。
  • 本地密钥管控:私钥完全本地存储,不依赖第三方托管,支持通过 BILLIONS_NETWORK_MASTER_KMS_KEY 启用 AES-256-GCM 加密。
  • 清晰的 Guardrails:SKILL.md 明确禁止手动密钥生成、文件直接操作和错误绕过,强制要求先检查身份再执行关联操作。
  • 网络边界清晰:所有 API 调用仅限于官方域名(billions.network、privado.id),无第三方数据收集。

潜在缺点与局限性

  • 依赖漏洞风险:扫描发现 29 个依赖漏洞,其中 4 个高危(undici HTTP 走私、WebSocket 内存耗尽、underscore DoS),主要来自 @0xpolygonid/js-sdk 的间接依赖,需等待上游修复。
  • 默认明文存储:若未设置主密钥环境变量,私钥以明文十六进制形式存储于 kms.json,存在本地泄露风险。
  • Node.js 环境依赖:必须预装 Node.js 运行时,且脚本执行失败时要求立即停止,对自动化流程的容错性较低。
  • UNLICENSED 许可证:无开源许可证,商业使用和二次开发受限。

适合人群

  • 需要为 AI 代理建立可验证数字身份的开发者
  • 构建人机协作系统、要求代理身份可追溯的团队
  • 已采用或计划集成 Polygon ID / iden3 生态的项目

常规风险

1. 供应链攻击:依赖树的深层漏洞(undici、uuid、underscore)可能被利用,建议配置 Dependabot 监控。
2. 密钥泄露:明文存储的私钥若被本地恶意程序读取,可导致身份盗用。

3. 社会工程:验证流程中的挑战-应答机制需确保挑战值的新鲜度和不可预测性。

Verified Agent Identity 内容

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