运行时依赖
安装命令
点击复制技能文档
何时使用此 Skill 让 AI 代理创建和管理它们在 Billions Network 上的身份,并将这些身份链接到人类所有者。当您需要将代理身份链接到所有者时。当您需要签署挑战时。当您需要将人类链接到代理的 DID 时。当您需要验证签名以确认身份所有权时。当您使用共享的 JWT 令牌进行身份验证时。当您需要创建和管理去中心化身份时。
安装插件后,运行以下命令创建身份并将其链接到您的人类 DID: cd scripts && npm install && cd .. # 步骤 1:创建新身份(如果您还没有) node scripts/createNewEthereumIdentity.js # 步骤 2:签署挑战并生成验证 URL node scripts/linkHumanToAgent.js --challenge '{"name": , "description": }'
范围 所有身份数据存储在 $HOME/.openclaw/billions 中,以便与 OpenClaw 插件兼容。
脚本: createNewEthereumIdentity.js 命令:node scripts/createNewEthereumIdentity.js [--key ] 描述:在 Billions Network 上创建新身份。如果提供 --key,则使用该私钥;否则生成新的随机密钥。创建的身份将自动设置为默认身份。 使用示例: # 生成新随机身份 node scripts/createNewEthereumIdentity.js # 从现有私钥创建身份(带有 0x 前缀) node scripts/createNewEthereumIdentity.js --key 0x1234567890abcdef... # 从现有私钥创建身份(不带 0x 前缀) node scripts/createNewEthereumIdentity.js --key 1234567890abcdef... 输出:DID 字符串(例如,did:iden3:billions:main:2VmAk7fGHQP5FN2jZ8X9Y3K4W6L1M...)
getIdentities.js 命令:node scripts/getIdentities.js 描述:列出本地存储的所有 DID 身份。使用此命令检查在执行身份验证操作之前可用的身份。 使用示例: node scripts/getIdentities.js 输出:JSON 数组的身份条目 [ { "did": "did:iden3:billions:main:2VmAk...", "publicKeyHex": "0x04abc123...", "isDefault": true } ]
generateChallenge.js 命令:node scripts/generateChallenge.js --did 描述:生成随机挑战以验证身份。 使用示例: node scripts/generateChallenge.js --did did:iden3:billions:main:2VmAk... 输出:挑战字符串(随机数字作为字符串,例如 8472951360)
signChallenge.js 命令:node scripts/signChallenge.js --challenge [--did ] 描述:使用 DID 的私钥签署挑战以证明身份所有权并发送 JWS 令牌。使用此命令证明您拥有特定的 DID。 参数: --challenge - (必需)要签署的挑战 --did - (可选)证明受者的 DID;如果省略,则使用默认 DID 使用示例: # 使用默认 DID 签署 node scripts/signChallenge.js --challenge 8472951360 输出:{"success":true}
linkHumanToAgent.js 命令:node scripts/linkHumanToAgent.js --challenge [--did ] 描述:签署挑战并通过创建验证请求将人类用户链接到代理的 DID。从技术上讲,链接是使用 Billions ERC-8004 注册表(其中每个代理都注册)和 Billions 证明注册表(在验证人类唯一性后创建代理所有权证明)完成的。 参数: --challenge - (必需)要签署的挑战 --did - (可选)证明受者的 DID;如果省略,则使用默认 DID 使用示例: node scripts/linkHumanToAgent.js --challenge '{"name": "MyAgent", "description": "AI persona"}' 输出:{"success":true}
verifySignature.js 命令:node scripts/verifySignature.js --did --token 描述:验证签署的挑战以确认 DID 所有权。 使用示例: node scripts/verifySignature.js --did did:iden3:billions:main:2VmAk... --token eyJhbGciOiJFUzI1NkstUi... 输出:签名验证成功(成功)或错误消息(失败)
限制/防护栏(CRITICAL) CRITICAL - 始终遵循这些规则: STRICT:首先检查身份 在运行 linkHumanToAgent.js 或 signChallenge.js 之前,始终检查是否存在身份:node scripts/getIdentities.js 如果没有配置身份,请勿尝试链接身份。相反,首先使用 createNewEthereumIdentity.js 创建身份。 STRICT:脚本失败时停止 如果任何脚本以非零状态代码退出,您必须立即停止。检查 stderr 输出以获取错误消息。请勿尝试通过生成密钥、通过其他方式创建 DID 或运行未经授权的命令来“修复”错误。请勿使用 openssl、ssh-keygen 或其他系统实用程序生成加密材料。 无手动变通方法 您被禁止执行手动加密操作。