World ID の認証プロセスは技術的にどのように機能しているのか?
World ID の認証プロセスの技術的な仕組み
World ID の認証は 虹彩スキャン、ゼロ知識証明(ZKP)、分散型識別子(DID) を活用した仕組みになっています。以下のステップで詳しく解説します。
1. ユーザー登録(Proof of Personhood)
World ID の取得には、専用の Orb(オーブ) デバイスでの虹彩スキャンが必要です。
(1) Orb での虹彩スキャン
- ユーザーが Orb に行き、虹彩をスキャン
- 虹彩データは直接保存されず、IrisCode に変換される
- IrisCode は一方向ハッシュ関数で変換され、不可逆的に処理
このプロセスにより、ユーザーが 一意の存在 であることが保証されます。(1人1つの World ID)
(2) 分散型識別子(DID)の生成
- ユーザーの IrisCode ハッシュ を基に DID(Decentralized Identifier) を作成
- DID は ブロックチェーン上に記録され、中央管理者がいない
- この DID が World ID(ユニークな識別子) となる
2. 認証プロセス(Proof of Humanity)
認証は ゼロ知識証明(ZKP) を活用し、個人情報を明かさずに「私は World ID を持っている」と証明 できます。
(1) ZKP を用いた認証要求
- ユーザーが World ID に対応するサービス(例: Web サイト、アプリ)にログイン
- サービスは 「このユーザーが World ID を持っているか?」を確認
- ユーザーは World App(またはその他の Wallet)で認証をリクエスト
(2) ZKP による検証
- World ID の DID と秘密鍵を使って、ZKP を生成
- ZKP によって「自分が登録済みである」ことだけを証明
- 重要: どのユーザーか、虹彩データなどは一切送信されない
- 検証者(サービス側)が ZKP をチェックし、ユーザーの World ID を確認
(3) 認証成功 → アクセス許可
- ZKP の検証が成功すると、認証完了
- ユーザーは World ID を使ってサービスにログインできる
3. 認証の具体的な技術要素
技術的な要素を分解すると、以下のようになります。
技術 | 役割 |
---|---|
Orb | 虹彩スキャン + IrisCode 生成 |
IrisCode ハッシュ | ユーザーの一意性を保証(保存はしない) |
分散型識別子(DID) | ユーザー ID をブロックチェーンに記録 |
ゼロ知識証明(ZKP) | 個人情報を明かさずに認証を実施 |
World App | ユーザーの World ID を管理し、認証を提供 |
4. World ID の強み(従来の認証との違い)
✅ 個人情報を開示しない(ZKP の活用)
→ 「私が登録済みであること」だけを証明し、名前や虹彩データは送らない
✅ 中央管理者なし(DID + ブロックチェーン)
→ Google や政府のような中央機関が管理しないため、検閲耐性が高い
✅ 1人1アカウントの保証(虹彩スキャン)
→ ボットや多重アカウントを防ぎ、フェアな投票やガバナンスを実現
まとめ(World ID 認証プロセス)
1️⃣ ユーザー登録(Orb で虹彩スキャン → DID を発行)
2️⃣ 認証リクエスト(World ID で ZKP を生成)
3️⃣ ゼロ知識証明で検証(DID を明かさずに証明)
4️⃣ 認証成功 → サービス利用可能
このプロセスにより、プライバシーを保護しながら、唯一の人間であることを証明 できるのが World ID の特徴です。