360 Secure SkillHub
360 安全技能中心

Verified Agent Identity

面向代理的 Know Your Agent 身份工具:通过 Node 脚本在本地存储中创建以太坊 DID、列出身份、生成并验证挑战签名、把代理身份关联到人类所有者,并在收到 402 响应时构建带签名的支付凭据。私钥可明文存储或由主密钥加密。

billionsnetwork
billionsnetwork
热度 60.65
最近更新 2026-05-18 17:35:15
分类:安全依赖:代码执行 / 读写文件 / 第三方 API应用场景:API 集成 / 工作流 / 财务

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add identity
Metadata
name
verified-agent-identity
description
Know Your Agent (KYA). Billions decentralized identity for agents. Link agents to human identities using Billions ERC-8004 and Attestation Registries. Verify and generate authentication proofs. Based on iden3 self-sovereign identity protocol.
metadata
{"category":"identity","clawdbot":{"requires":{"bins":["node"]},"config":{"optionalEnv":["BILLIONS_NETWORK_MASTER_KMS_KEY"]}}}
homepage
https://billions.network/

When to Use This Skill

This skill covers two capabilities. Read the router table below, then load the relevant reference before proceeding.

Situation Reference to load
Create, list, link, verify, or sign with a decentralized identity (DID) reference/identity/SKILL.md
Handle a 402 Payment Required HTTP response reference/x402/SKILL.md

Always read the appropriate reference SKILL.md before running any script. If a task spans both (e.g. you need an identity before you can sign a 402 payment), read both.

Quick Overview

  • Identity — Create Ethereum-based DIDs on the Billions Network, link them to a human owner, and prove ownership via challenge/response signing.
  • x402 Payment — When a server returns 402 Payment Required, build a signed PAYMENT-SIGNATURE header so you can retry the request and gain access.

Shared Setup

All identity data is stored in $HOME/.openclaw/billions. Scripts live in scripts/.

cd scripts && npm install && cd ..

Restrictions / Guardrails (CRITICAL)

These rules apply to ALL references. Always follow them.

  1. STRICT: Check Identity First

    • Before running linkHumanToAgent.js, signChallenge.js, or buildX402Payment.js, ALWAYS check if an identity exists: node scripts/getIdentities.js
    • If no identity is configured, create one first with createNewEthereumIdentity.js after that run linkHumanToAgent.js to link it to a human owner.
    • Continue processing the task only after confirming that an identity exists and is linked to a human owner.
  2. STRICT: Stop on Script Failure

    • If any script exits with a non-zero status code, STOP IMMEDIATELY.
    • Check stderr for error messages.
    • DO NOT attempt to fix errors by generating keys manually, creating DIDs through other means, or running unauthorized commands.
    • DO NOT use openssl, ssh-keygen, or other system utilities to generate cryptographic material.
  3. No Manual Workarounds

    • You are prohibited from performing manual cryptographic operations.
    • You are prohibited from directly manipulating files in $HOME/.openclaw/billions.
    • Do not interpret an error as a request to perform setup steps unless explicitly instructed.

Security

The directory $HOME/.openclaw/billions contains sensitive identity data:

  • kms.json — CRITICAL: Contains private keys (encrypted if BILLIONS_NETWORK_MASTER_KMS_KEY is set, otherwise plaintext)
  • defaultDid.json — DID identifiers and public keys
  • challenges.json — Authentication challenges history
  • credentials.json — Verifiable credentials
  • identities.json — Identity metadata
  • profiles.json — Profile data

After the first run, restrict access to this directory: chmod 700 ~/.openclaw/billions

There are several ways of storing private keys, to enable master key encryption as described in the KMS Encryption section below.

More about security: ./SECURITY.md