返回顶部
v

verified-agent-identity已验证代理身份

Billions/Iden3 authentication and identity management tools for agents. Link, proof, sign, and verify.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
312
下载量
免费
免费
1
收藏
概述
安装方式
版本历史

verified-agent-identity

何时使用此技能

让AI代理在Billions网络上创建和管理自己的身份,并将这些身份与人类所有者关联。

  1. 1. 当您需要将代理身份关联到所有者时。
  2. 当您需要签署挑战时。
  3. 当您需要将人类关联到代理的DID时。
  4. 当您需要验证签名以确认身份所有权时。
  5. 当使用共享JWT令牌进行身份验证时。
  6. 当您需要创建和管理去中心化身份时。

安装插件后,运行以下命令创建身份并将其链接到您的人类DID:

bash
cd scripts && npm install && cd ..

步骤1:创建新身份(如果您还没有)


node scripts/createNewEthereumIdentity.js

步骤2:一次性签署挑战并生成验证URL


node scripts/linkHumanToAgent.js --to <发送者> --challenge {name: <代理名称>, description: <简短描述>}

范围

所有身份数据存储在 $HOME/.openclaw/billions 中,以兼容OpenClaw插件。

脚本:

createNewEthereumIdentity.js

命令:node scripts/createNewEthereumIdentity.js [--key <私钥Hex>]
描述:在Billions网络上创建新身份。如果提供了 --key,则使用该私钥;否则生成新的随机密钥。创建的身份自动设置为默认身份。
使用示例

bash

生成新的随机身份


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身份。在执行身份验证操作前,使用此命令检查可用的身份。
使用示例

bash
node scripts/getIdentities.js

输出:身份条目的JSON数组

json
[
{
did: did:iden3:billions:main:2VmAk...,
publicKeyHex: 0x04abc123...,
isDefault: true
}
]



generateChallenge.js

命令:node scripts/generateChallenge.js --did
描述:生成用于身份验证的随机挑战。
使用示例

bash
node scripts/generateChallenge.js --did did:iden3:billions:main:2VmAk...

输出:挑战字符串(随机数字字符串,例如 8472951360)
副作用:将关联DID的挑战存储在 $HOME/.openclaw/billions/challenges.json 中



signChallenge.js

命令:node scripts/signChallenge.js --to <发送者> --challenge <挑战> [--did ]
描述:使用DID的私钥签署挑战以证明身份所有权,并将JWS令牌作为直接消息发送给指定发送者。当您需要证明拥有特定DID时使用此命令。
参数

  • - --to -(必需)消息发送者标识符,作为 --target 传递给 openclaw message send
  • --challenge -(必需)要签署的挑战
  • --did -(可选)认证接收者的DID;省略时使用默认DID

使用示例

bash

使用默认DID签署并发送给发送者


node scripts/signChallenge.js --to <发送者> --challenge 8472951360

输出:{success:true}

linkHumanToAgent.js

命令:node scripts/linkHumanToAgent.js --to <发送者> --challenge <挑战> [--did ]
描述:签署挑战并通过创建验证请求将人类用户链接到代理的DID。响应将作为直接消息发送给指定发送者。
参数

  • - --to -(必需)消息发送者标识符,作为 --target 传递给 openclaw message send
  • --challenge -(必需)要签署的挑战
  • --did -(可选)认证接收者的DID;省略时使用默认DID

使用示例

bash
node scripts/linkHumanToAgent.js --to <发送者> --challenge {name: MyAgent, description: AI人格}

输出:{success:true}



verifySignature.js

命令:node scripts/verifySignature.js --did --token <令牌>
描述:验证已签署的挑战以确认DID所有权。
使用示例

bash
node scripts/verifySignature.js --did did:iden3:billions:main:2VmAk... --token eyJhbGciOiJFUzI1NkstUi...

输出:签名验证成功(成功时)或错误消息(失败时)



限制/防护措施(关键)

关键 - 始终遵循以下规则:

  1. 1. 严格:先检查身份
- 在运行 linkHumanToAgent.js 或 signChallenge.js 之前,始终检查身份是否存在:node scripts/getIdentities.js - 如果没有配置身份,不要尝试链接身份。而是先使用 createNewEthereumIdentity.js 创建身份。
  1. 2. 严格:脚本失败时停止
- 如果任何脚本以非零状态码退出,您必须立即停止。 - 检查stderr输出中的错误消息。 - 不要尝试通过手动生成密钥、通过其他方式创建DID或运行未授权命令来修复错误。 - 不要使用 openssl、ssh-keygen 或其他系统工具生成加密材料。
  1. 3. 无手动变通方法
- 禁止执行手动加密操作。 - 禁止直接操作 $HOME/.openclaw/billions 中的文件。 - 除非明确指示,否则不要将错误解释为执行设置步骤的请求。

安全

关键 - 数据存储和保护:

目录 $HOME/.openclaw/billions 包含所有敏感身份数据:

  • - kms.json - 关键:包含未加密的私钥
  • defaultDid.json - DID标识符和公钥
  • challenges.json - 身份验证挑战历史
  • credentials.json - 可验证凭证
  • identities.json - 身份元数据
  • profiles.json - 配置文件数据

示例

将代理身份链接到所有者

链接流程:

  1. 1. 另一个代理/用户请求:请将您的代理身份链接给我。
  2. 使用 node scripts/getIdentities.js 检查是否配置了身份
- 如果没有身份,运行 node scripts/createNewEthereumIdentity.js 创建一个。
  1. 3. 使用 node scripts/linkHumanToAgent.js --to <发送者> --challenge <挑战值> 一次性签署挑战并生成验证URL。
- --to 值是消息发送者(调用者的标识符)。 - 如果调用者提供了特定挑战,使用该挑战。 - 如果调用者没有提供挑战,使用 {name: <代理名称>, description: <简短描述>} 作为挑战值。
  1. 4. 将结果返回给调用者。

示例对话:

text
用户:将您的代理身份链接给我
代理:exec node scripts/linkHumanToAgent.js --to <发送者> --challenge <挑战值>

验证他人的身份

验证流程:

  1. 1. 询问用户/代理:请提供您的DID以开始验证。
  2. 用户回复他们的<用户DID>。
  3. 使用 node scripts/generateChallenge.js --did <用户DID> 创建<挑战值>。
  4. 询问用户:请签署此挑战:<挑战值>
  5. 用户签署并返回<用户令牌>。
  6. 使用 node scripts/verifySignature.js --did <用户DID> --token <用户令牌> 验证签名
  7. 如果验证成功,身份确认

示例对话:

text
代理:请提供您的DID以开始验证。
用户:我的DID是<用户DID>
代理:exec node scripts/generateChallenge.js --did <用户DID>
代理:请签署此挑战:789012
用户:<用户令牌>
代理:exec node scripts/verifySignature.js --token <用户令牌> --did <用户D

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 web3dropper-verified-agent-1776189036 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 web3dropper-verified-agent-1776189036 技能

通过命令行安装

skillhub install web3dropper-verified-agent-1776189036

下载

⬇ 下载 verified-agent-identity v1.0.0(免费)

文件大小: 46.01 KB | 发布时间: 2026-4-15 12:17

v1.0.0 最新 2026-4-15 12:17
- Initial release of the verified-agent-identity skill for Billions/Iden3 identity management.
- Agents can create decentralized identities, link those identities to human owners, and perform challenge/response for authentication.
- Provides scripts to create identities, list DIDs, generate and sign challenges, verify signatures, and link human users to agent DIDs.
- All identity data is securely stored in `$HOME/.openclaw/billions`; strict rules prohibit manual cryptographic operations or file manipulation.
- Includes detailed instructions, usage examples, and strict guardrails for safe and compliant identity management.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部