arc did は、アイデンティティと信頼を管理します:自分自身、provider、または blocklet のための DID アイデンティティの生成、検証可能な資格情報の発行と検証、そしてあなたが信頼する発行者の一覧の管理です。
arc 2.0.0-beta.50(commit a99fb2c37、main、2026-09-11)に対して取得したものです。dump をコピーする前に arc --version を実行してください。コマンド面を固定するのは commit です。
arc did <subcommand> [options]グローバルフラグ(概要 を参照):--json、--view、--instance / -i(どのローカル ARC インスタンスか;省略すると default)、および --home(インスタンスのルート;どのインスタンスにするかを選ぶには --instance を使う)。arc did init --home は、--home が選ばれたルートにアイデンティティを作成する場面の一つです。
アイデンティティ
arc did init
DID アイデンティティを生成します。
使用法
arc did init [options]--developer:開発者のルートキーを生成する(ROLE_ACCOUNT)--provider:開発者キーから provider の DID を派生する(ROLE_PROVIDER)--blocklet:開発者キーから blocklet の DID を派生する(ROLE_BLOCKLET)--force:既存のアイデンティティを上書きする
--developer/--provider/--blocklet のいずれも指定しない場合は、実行した場所に基づいてどの種類を生成するかを自動検出します。
arc did info
アイデンティティと資格情報の情報を表示します。
arc did info例(認識可能なプロジェクトの外で実行)
$ arc did info
ERROR: No entity manifest found in current directory (looked for blocklet.yaml, .aup/, index.html, index.{txt,md,ans}, package.json)例(アイデンティティと発行済みの資格情報を持つプロジェクトの中で実行)
$ arc did info
acme-widget DID=z2qaHJMfMAjP3t1eooziSUa6n7v25AbyfH4G1 CREDENTIAL=true ISSUER=z2qaHJMfMAjP3t1eooziSUa6n7v25AbyfH4G1arc did check
現在の provider に対して conformance テストを実行します。
arc did checkarc did list
このインスタンスの home に保存されているアイデンティティを一覧表示します —— ディスク上にあるアイデンティティファイルをそのまま読むだけで、デーモンが動いている必要はありません。arc 2.0.0-beta.48(commit 5a5316bde、main、2026-09-10)に対して取得したものです。
arc did list [options]例(新しい home、まだ何も生成されていない)
$ arc did list --home /tmp/arc-did-doc-home
No identities例(arc did init --developer の実行後)
$ arc did init --developer --home /tmp/arc-did-doc-home
CREATED developer:developer DID=z1kExiHjGkUcBe6YTpyspLLNy1wb2vfCsV2
Next: arc did list --home /tmp/arc-did-doc-home
$ arc did list --home /tmp/arc-did-doc-home
developer DID=z1kExiHjGkUcBe6YTpyspLLNy1wb2vfCsV2 TYPE=developer--home はディスク上のフォルダを直接指します。一方 --instance / -i は、インスタンスレジストリ(arc service list)を通じて解決されます。did list 自体は稼働中のデーモンを必要としませんが、指定する名前は実際に作成したものでなければなりません:
$ arc did list -i doc519-nonexistent
ERROR: no instance named "doc519-nonexistent". `arc service list` shows 5終了コード 1。(shows の後の数字は、この例を取得した時点でこのマシンにあったインスタンスの数であり、あなたが打った名前とは何の関係もありません。)実在するインスタンスは、そのデーモンが動いていても止まっていても機能します —— arc service start はすでにそれに developer のアイデンティティを生成しているため、新しいインスタンスに対する最初の did list は、素の --home フォルダの場合とは違って空にはなりません:
$ arc service start -i doc519didlist --home /tmp/arc-doc519-instance-home --port 0
...
Status: up
$ arc did list -i doc519didlist
developer DID=z1jhrDL9b5Et2jgSZJwPkL324R4aVaXBHbf TYPE=developer
$ arc service stop -i doc519didlist
Service stopped: doc519didlist
$ arc did list -i doc519didlist
developer DID=z1jhrDL9b5Et2jgSZJwPkL324R4aVaXBHbf TYPE=developer(上記の service start/service stop の出力からは splash banner の行を省略しています。)--json は同じ行を構造化データとして返します:
$ arc did list -i doc519didlist --json
{
"identities": [
{
"name": "developer",
"did": "z1jhrDL9b5Et2jgSZJwPkL324R4aVaXBHbf",
"entityType": "developer"
}
],
"total": 1,
"hintSelector": "-i doc519didlist"
}資格情報
arc did issue
検証可能な資格情報を発行します。
使用法
arc did issue [options]--skip-check:conformance チェックをスキップする--counter-sign:既存の VC に、信頼された発行者キーで反署名(counter-sign)する--issuer-key <path>:発行者キーファイルへのパス、--counter-signと併用する--expiration <date>:有効期限、ISO 形式--all:すべてのエンティティ(provider + blocklet)に対して VC を発行する--trust:反署名した後、その発行者を自動的に信頼済みとして登録する
arc did verify
資格情報を検証します。
arc did verify信頼された発行者
arc did issuer は、あなたの環境が信頼する発行者の一覧を管理します。
arc did issuer <subcommand> [options]arc did issuer list
信頼されているすべての発行者を一覧表示します。
例
$ arc did issuer list
No trusted issuersarc did issuer add
信頼する発行者を追加します。
使用法
arc did issuer add <name> [options]--name <name>(必須):発行者の識別子、ファイル名の接頭辞として使われる--from-key <path>:DID と公開鍵を含むキーファイルへのパス--from-file <path-or-url>:.did.jsonファイルへのパス、または HTTPS URL--from-vc <path>:VC ファイルへのパス、反署名の proof の署名者を抽出する--proof-index <n>:--from-vcに複数の proof がある場合に、インデックスで特定の proof を選ぶ--did <did>:DID アドレス、base58z...形式--pk <key>:公開鍵、16 進形式
arc did issuer remove
信頼する発行者を削除します。
arc did issuer remove <name>arc did issuer inspect
信頼する発行者についての詳細情報を表示します。
arc did issuer inspect <name>arc did issuer reset
信頼ストアをリセットします:手動で追加した発行者を削除します。このビルドには復元できる同梱シード集合はありません —— きれいな home ではこのコマンドは no-op です。
使用法
arc did issuer reset [options]--yes:確認プロンプトをスキップする(stdin が TTY でない場合は必須)
例(きれいな home)
$ arc did issuer reset --yes
RESET no-op
$ arc did issuer list
No trusted issuers--help は今でも "restore shipped seeds" と書きます。このビルドではその一行を信じないでください。--json は {"removed":[],"restored":[]} を出します。発行者を追加したあと、同じ --yes コマンドは REMOVED <name> を表示し、arc did issuer list は再び No trusted issuers を報告します。