# ゼロ知識証明とデジタルアイデンティティの複数のジレンマデジタルIDシステムにおいて、プライバシーを保護するためにzk-SNARKsを活用する方法は、徐々に主流になりつつあります。さまざまなzk-SNARKsに基づくデジタルIDプロジェクトが、ユーザーが身分の詳細を明かさずに有効な身分証明を証明できるように、ユーザーフレンドリーなソフトウェアパッケージを開発しています。生体認証技術を使用して検証し、zk-SNARKsを通じてプライバシーを保障するWorld IDのユーザー数は1000万人を突破しました。台湾地域とEUにおいても、デジタルID分野の関連プロジェクトはzk-SNARKs技術にますます注目しています。表面上、zk-SNARKs技術に基づくデジタルIDは広く採用されており、去中心化加速主義(d/acc)の大きな勝利のように見えます。それはプライバシーを犠牲にすることなく、私たちのソーシャルメディア、投票システム、さまざまなインターネットサービスを魔女狩りやロボット操作から保護できます。しかし、事は本当にそんなに単純でしょうか?zk-SNARKsに基づく身分証明にはリスクが存在するのでしょうか?この記事では以下のポイントを明らかにします:- zk-SNARKsパッケージは多くの重要な問題を解決しました。- zk-SNARKsで包装された身分証明には依然としてリスクが存在します。これらのリスクは主に「一人一身分証明」属性の厳格な維持に起因しています。- "富の証明"を使って女巫攻撃に対抗することはほとんどのアプリケーションシナリオでは不十分であり、私たちは何らかの"類似の身分証明"の解決策が必要です。- 理想的な状態は、N個の身分証明を取得するコストがN²であることです。- マルチアイデンティティは最も現実的な解決策です。マルチアイデンティティは、明示的な(、例えばソーシャルグラフに基づくアイデンティティ)、または暗黙の(さまざまなタイプのzk-SNARKsアイデンティティの共存)である可能性があります。! [ヴィタリック:デジタルアイデンティティ+ ZKテクノロジーの下での複数のジレンマ](https://img-cdn.gateio.im/social/moments-1fa15b87f0dad953ff390e1ff4499f3d)## zk-SNARKsで包装された身分証明はどのように機能しますか?あなたが眼球をスキャンしてWorld IDを取得したり、携帯電話のNFCでパスポートをスキャンしてzk-SNARKsに基づくパスポートの身分証明を取得したりすると、あなたの携帯電話には秘密値sがあります。オンチェーンのグローバルレジストリには、公開ハッシュ値H(s)があります。アプリにログインする際、特定のアプリに固有のユーザーID、すなわちH(s, app_name)を生成し、zk-SNARKsを用いて検証します: このIDはレジストリ内のどれかの公開ハッシュ値と同じ秘密値sから派生しています。実際の設計はより複雑である可能性があります。World IDでは、アプリケーション専用IDにアプリケーションIDとセッションIDのハッシュ値が含まれているため、同一アプリケーション内の異なる操作も相互に関連を解除できます。zk-SNARKsパスポートに基づく設計も同様の方法で構築することができます。この身分証明のタイプは明らかな利点をもたらします。zk-SNARKs 身分証明の他に、ユーザーはしばしば身分証明のために完全な法定身分を開示する必要があり、これはコンピュータセキュリティの「最小特権原則」に深刻に違反します。現在の最良の改善策は、電話番号やクレジットカード番号などの間接トークンを使用することですが、この分離は非常に脆弱です。そして、zk-SNARKs包装技術を利用することで、上記の問題は大いに解決されました。しかし、「一人一身分証明」という厳格な制約があるため、いくつかの問題は依然として解決されておらず、さらに深刻化する可能性があります。! [ヴィタリック:デジタルアイデンティティ+ ZKテクノロジーの下での複数のジレンマ](https://img-cdn.gateio.im/social/moments-18e125ae671fbd46a8f4b809256f301e)## zk-SNARKsそのものでは匿名性を実現できない完全に予想通りに機能する零知識証明身分プラットフォームを仮定すると、すべてのロジックが厳密に再現され、非技術ユーザーのプライベート情報を長期的に保護するための方法が中央集権的機関に依存せずに見つかったとします。しかし同時に、現実に即した仮定を行うことができます: アプリケーションはプライバシー保護に積極的に協力することはなく、"実用主義"の原則を遵守します。採用される設計方案は"ユーザーの便利さの最大化"の名の下に行われますが、実際には常に自身の政治的および商業的利益に偏るようです。このようなシーンでは、ソーシャルメディアアプリは各ユーザーにユニークなアプリ専用IDを割り当てる可能性があり、身分システムが「一人一身分」のルールに従うため、ユーザーは一つのアカウントしか持てません。現実世界では、匿名性の実現には通常複数のアカウントが必要です: 一つは「通常の身分」、他はさまざまな匿名の身分に使用されます。したがって、このモデルでは、ユーザーが実際に得られる匿名性は現在のレベルよりも低い可能性があります。このようにして、たとえ零知识证明で包装された「一人一身分」システムであっても、私たちはすべての活動が単一の公開身分に依存しなければならない世界に徐々に向かう可能性があります。## ゼロ知識証明だけでは、強制から身を守ることはできないたとえ自分の秘密値sを公開しなくても、誰もあなたの各アカウント間の公開された関連を見れませんが、もし誰かがあなたに公開を強制したらどうでしょうか?政府はすべての活動を確認するために秘密値の開示を強制する可能性があります。雇用主も、完全な公開情報の開示を雇用条件として簡単に設定できます。さらには、一部のアプリは技術的な観点から、ユーザーが他のアプリでの身分証明を開示することを要求し、登録を許可する場合もあります。同様に、これらの状況下では、zk-SNARKsの属性の価値は消えてしまいますが、「一人一アカウント」という新しい属性の欠点は依然として存在します。私たちは、おそらく設計の最適化を通じて脅迫リスクを低減できるでしょう。例えば、多者計算メカニズムを採用して各アプリケーション専用のIDを生成し、ユーザーとサービスプロバイダーが共に参加するようにします。これにより、アプリケーションの運営者が関与しない場合、ユーザーはそのアプリケーション内での専用IDを証明することができなくなります。これにより、他者に完全な身分を開示するよう強要することの難易度が増しますが、この可能性を完全に排除することはできず、またこのような提案には他の欠点も存在します。## zk-SNARKs自体では非プライバシーリスクを解決できませんすべての身分証明の形式には限界ケースがあります:- 政府が発行した身分証明では無国籍者をカバーできず、まだそのような証明書を取得していない人々も含まれていません。- このような政府に基づく身分証明システムは、複数国籍保持者に独自の特権を与えます。- パスポート発行機関はハッキング攻撃に遭う可能性があり、敵対国の情報機関が数百万の偽の身分証明を偽造する可能性もあります。- 傷病によって関連する生物特性が損なわれた人にとって、生体認証は完全に無効になります。- 生体認証は複製品に騙される可能性があります。これらのエッジケースは「一人一身分証明」属性のシステムを維持しようとする際に最も危険であり、プライバシーとは何の関係もありません。したがって、zk-SNARKsはこれに対して無力です。! [ヴィタリック:デジタルアイデンティティ+ZK技術の下での複数のジレンマ](https://img-cdn.gateio.im/social/moments-5c5e98a8645b7a2cc02bf3f26d7bf4d7)## "富の証明"に依存して魔女狩り攻撃を防ぐことは問題を解決するには不十分である純粋なサイバーパンクコミュニティでは、一般的な代替手段は「富の証明」に完全に依存して魔女狩り攻撃を防ぐことであり、あらゆる形の身分証明システムを構築することではありません。各アカウントに一定のコストを発生させることで、誰かが簡単に大量のアカウントを作成するのを防ぐことができます。理論的には、支払いに条件を付けることも可能です:アカウントを登録する際に、資金を1回だけ質入れし、アカウントが禁止されるという稀な場合にのみ、その資金を失うことになります。理論的には、これにより攻撃コストを大幅に引き上げることができます。この提案は多くのシーンで顕著な効果を発揮しますが、特定のタイプのシーンではまったく機能しません。私は二つのタイプのシーンに焦点を当てるつもりです、仮に「クラス普遍的基本所得シーン(UBI-like)」と「クラスガバナンスシーン(governance-like)」と呼ぶことにします。### クラウドファンディングのような普遍的基本所得シナリオ(における身分証明の必要性いわゆる「類大衆基本所得シナリオ」とは、非常に広範なユーザーグループに対して、支払い能力を考慮せずに一定量の資産やサービスを配布するシナリオを指します。Worldcoinはまさにこれを体系的に実践しています: World IDを持っている誰もが、定期的に少量のWLDトークンを受け取ることができます。私はこのような"小型全民基本收入)mini-UBIs("が実際に解決できる問題は、十分な量の暗号通貨を人々に提供し、基本的なオンチェーン取引やオンライン購入を行うことができるようにすることだと思います。具体的には以下が含まれる可能性があります:- ENS 名を取得する- チェーン上にハッシュを公開して、特定のzk-SNARKs身分証明を初期化する- ソーシャルメディアプラットフォーム料金の支払いさらに、類似の効果を実現する別の方法があります。それは「全民基本服务)universal basic services(」です:身分証明を持っている人に特定のアプリ内で制限された数の無料取引を送信する権限を提供します。最後に強調すべき重要なカテゴリーは「全民基本保证金)universal basic security deposit(」です。身分の機能の一つは、ユーザーが担保として同等の資金を預けることなく、責任追及の対象を提供することです。これにより、個人資本の量に対する参加の敷居を下げるという目標を達成するのにも役立ちます。! [Vitalik:デジタルアイデンティティ+ ZKテクノロジーの下での複数のジレンマ])https://img-cdn.gateio.im/social/moments-4ee3f0f2fb93f4937527d660b75452b7() 類似ガバナンス###における身分証明の需要投票システムを想像してみてください: ユーザーAのリソースがユーザーBの10倍であれば、Aの投票権もBの10倍になります。しかし、経済的観点から見ると、1単位の投票権がAにもたらす利益は、Bにもたらす利益の10倍です。したがって、全体的に見れば、Aの投票が自身にもたらす利益は、Bの投票が自身にもたらす利益の100倍になります。だからこそ、Aは投票に多くのエネルギーを投入し、どのように投票すれば自身の目標を最大化できるかを研究し、さらには戦略的にアルゴリズムを操作する可能性さえあります。これが、トークン投票メカニズムにおける"クジラ"が過度な影響を与える根本的な理由です。より普遍的で深い理由は、ガバナンスシステムが「1人が10万ドルを支配する」ことと「1000人が10万ドルを共有する」ことに同等の重みを与えるべきではないということです。後者は1000の独立した個人を表しているため、より豊かで価値のある情報を含むことになります。少量の情報の高度な重複ではなく、1000人からの信号は、異なる個人の意見が相互に相殺されるため、しばしば「穏やか」になります。これは、ガバナンス型システムが「資金の出所に関係なく、同規模の資金束を同じように扱う」という方法に本当に満足しないことを示しています。システムは実際には、これらの資金束の内部調整の程度を理解する必要があります。注意が必要なのは、上記の2つのシナリオの説明フレームワークに同意する場合、技術的な観点から見ると「一人一票」という明確なルールの必要性はもはや存在しないということです。- クラス全員基本所得のシナリオにおける適用に関して、実際に必要な身分証明の方案は: 最初の身分証明は無料で、取得可能な身分証明の数に制限を設けることです。より多くの身分証明を取得するコストが、システムを攻撃する行為の意味を失わせるほど高くなると、制限効果が達成されます。- ガバナンスに類似したシナリオのアプリケーションに関して、核心的なニーズは: 何らかの間接的な指標を通じて、あなたが関与しているこのリソースの背後に、単一の操作者がいるのか、それとも何らかの「自然に形成された」、調整度が低い集団がいるのかを判断できることです。この二つのシーンでは、身分証明は依然として非常に有用ですが、「一人一身份」といった厳格なルールに従う必要はもはや存在しません。! [Vitalik:デジタルアイデンティティ+ ZKテクノロジーの下での複数のジレンマ](https://img-cdn.gateio.im/social/moments-d49b614727dad9332ccc83574bcd8d59)## 理論上の理想状態は: N個の身分証明を取得するコストはN²である上述の論点から、私たちは、2つの圧力が対照的な両端から身分証明システムにおける複数の身分を取得する期待の難しさを制限していることがわかります。まず、"簡単に取得できる身分の数"に明確なハードリミットを設定してはいけません。もし一人が一つの身分しか持てないのであれば、匿名性については話にならず、身分を強制的に開示される可能性があります。実際、固定の数が1より大きい場合でもリスクはあります: もし全員が各自が5つの身分を持っていることを知っているなら、あなたはその5つすべてを強制的に開示されるかもしれません。この点を支持するもう一つの理由は、匿名性自体が非常に脆弱であるため、十分な安全バッファスペースが必要だということです。現代のAIツールを利用することで、クロスプラットフォームでのユーザー行動の関連付けが容易になり、言葉の使い方、投稿時間、投稿間隔、議論のトピックなどの公開情報を通じて、わずか33ビットの情報量で個人を正確に特定することができます。次に、身分証明は財務と完全に結びつけることができません(つまり、N個の身分証明を取得するコストはN)です。これは大規模な
zk-SNARKs身分証明:プライバシー保護と複数のジレンマのバランス
ゼロ知識証明とデジタルアイデンティティの複数のジレンマ
デジタルIDシステムにおいて、プライバシーを保護するためにzk-SNARKsを活用する方法は、徐々に主流になりつつあります。さまざまなzk-SNARKsに基づくデジタルIDプロジェクトが、ユーザーが身分の詳細を明かさずに有効な身分証明を証明できるように、ユーザーフレンドリーなソフトウェアパッケージを開発しています。生体認証技術を使用して検証し、zk-SNARKsを通じてプライバシーを保障するWorld IDのユーザー数は1000万人を突破しました。台湾地域とEUにおいても、デジタルID分野の関連プロジェクトはzk-SNARKs技術にますます注目しています。
表面上、zk-SNARKs技術に基づくデジタルIDは広く採用されており、去中心化加速主義(d/acc)の大きな勝利のように見えます。それはプライバシーを犠牲にすることなく、私たちのソーシャルメディア、投票システム、さまざまなインターネットサービスを魔女狩りやロボット操作から保護できます。しかし、事は本当にそんなに単純でしょうか?zk-SNARKsに基づく身分証明にはリスクが存在するのでしょうか?この記事では以下のポイントを明らかにします:
! ヴィタリック:デジタルアイデンティティ+ ZKテクノロジーの下での複数のジレンマ
zk-SNARKsで包装された身分証明はどのように機能しますか?
あなたが眼球をスキャンしてWorld IDを取得したり、携帯電話のNFCでパスポートをスキャンしてzk-SNARKsに基づくパスポートの身分証明を取得したりすると、あなたの携帯電話には秘密値sがあります。オンチェーンのグローバルレジストリには、公開ハッシュ値H(s)があります。アプリにログインする際、特定のアプリに固有のユーザーID、すなわちH(s, app_name)を生成し、zk-SNARKsを用いて検証します: このIDはレジストリ内のどれかの公開ハッシュ値と同じ秘密値sから派生しています。
実際の設計はより複雑である可能性があります。World IDでは、アプリケーション専用IDにアプリケーションIDとセッションIDのハッシュ値が含まれているため、同一アプリケーション内の異なる操作も相互に関連を解除できます。zk-SNARKsパスポートに基づく設計も同様の方法で構築することができます。
この身分証明のタイプは明らかな利点をもたらします。zk-SNARKs 身分証明の他に、ユーザーはしばしば身分証明のために完全な法定身分を開示する必要があり、これはコンピュータセキュリティの「最小特権原則」に深刻に違反します。現在の最良の改善策は、電話番号やクレジットカード番号などの間接トークンを使用することですが、この分離は非常に脆弱です。
そして、zk-SNARKs包装技術を利用することで、上記の問題は大いに解決されました。しかし、「一人一身分証明」という厳格な制約があるため、いくつかの問題は依然として解決されておらず、さらに深刻化する可能性があります。
! ヴィタリック:デジタルアイデンティティ+ ZKテクノロジーの下での複数のジレンマ
zk-SNARKsそのものでは匿名性を実現できない
完全に予想通りに機能する零知識証明身分プラットフォームを仮定すると、すべてのロジックが厳密に再現され、非技術ユーザーのプライベート情報を長期的に保護するための方法が中央集権的機関に依存せずに見つかったとします。しかし同時に、現実に即した仮定を行うことができます: アプリケーションはプライバシー保護に積極的に協力することはなく、"実用主義"の原則を遵守します。採用される設計方案は"ユーザーの便利さの最大化"の名の下に行われますが、実際には常に自身の政治的および商業的利益に偏るようです。
このようなシーンでは、ソーシャルメディアアプリは各ユーザーにユニークなアプリ専用IDを割り当てる可能性があり、身分システムが「一人一身分」のルールに従うため、ユーザーは一つのアカウントしか持てません。現実世界では、匿名性の実現には通常複数のアカウントが必要です: 一つは「通常の身分」、他はさまざまな匿名の身分に使用されます。したがって、このモデルでは、ユーザーが実際に得られる匿名性は現在のレベルよりも低い可能性があります。このようにして、たとえ零知识证明で包装された「一人一身分」システムであっても、私たちはすべての活動が単一の公開身分に依存しなければならない世界に徐々に向かう可能性があります。
ゼロ知識証明だけでは、強制から身を守ることはできない
たとえ自分の秘密値sを公開しなくても、誰もあなたの各アカウント間の公開された関連を見れませんが、もし誰かがあなたに公開を強制したらどうでしょうか?政府はすべての活動を確認するために秘密値の開示を強制する可能性があります。雇用主も、完全な公開情報の開示を雇用条件として簡単に設定できます。さらには、一部のアプリは技術的な観点から、ユーザーが他のアプリでの身分証明を開示することを要求し、登録を許可する場合もあります。
同様に、これらの状況下では、zk-SNARKsの属性の価値は消えてしまいますが、「一人一アカウント」という新しい属性の欠点は依然として存在します。
私たちは、おそらく設計の最適化を通じて脅迫リスクを低減できるでしょう。例えば、多者計算メカニズムを採用して各アプリケーション専用のIDを生成し、ユーザーとサービスプロバイダーが共に参加するようにします。これにより、アプリケーションの運営者が関与しない場合、ユーザーはそのアプリケーション内での専用IDを証明することができなくなります。これにより、他者に完全な身分を開示するよう強要することの難易度が増しますが、この可能性を完全に排除することはできず、またこのような提案には他の欠点も存在します。
zk-SNARKs自体では非プライバシーリスクを解決できません
すべての身分証明の形式には限界ケースがあります:
これらのエッジケースは「一人一身分証明」属性のシステムを維持しようとする際に最も危険であり、プライバシーとは何の関係もありません。したがって、zk-SNARKsはこれに対して無力です。
! ヴィタリック:デジタルアイデンティティ+ZK技術の下での複数のジレンマ
"富の証明"に依存して魔女狩り攻撃を防ぐことは問題を解決するには不十分である
純粋なサイバーパンクコミュニティでは、一般的な代替手段は「富の証明」に完全に依存して魔女狩り攻撃を防ぐことであり、あらゆる形の身分証明システムを構築することではありません。各アカウントに一定のコストを発生させることで、誰かが簡単に大量のアカウントを作成するのを防ぐことができます。
理論的には、支払いに条件を付けることも可能です:アカウントを登録する際に、資金を1回だけ質入れし、アカウントが禁止されるという稀な場合にのみ、その資金を失うことになります。理論的には、これにより攻撃コストを大幅に引き上げることができます。
この提案は多くのシーンで顕著な効果を発揮しますが、特定のタイプのシーンではまったく機能しません。私は二つのタイプのシーンに焦点を当てるつもりです、仮に「クラス普遍的基本所得シーン(UBI-like)」と「クラスガバナンスシーン(governance-like)」と呼ぶことにします。
クラウドファンディングのような普遍的基本所得シナリオ(における身分証明の必要性
いわゆる「類大衆基本所得シナリオ」とは、非常に広範なユーザーグループに対して、支払い能力を考慮せずに一定量の資産やサービスを配布するシナリオを指します。Worldcoinはまさにこれを体系的に実践しています: World IDを持っている誰もが、定期的に少量のWLDトークンを受け取ることができます。
私はこのような"小型全民基本收入)mini-UBIs("が実際に解決できる問題は、十分な量の暗号通貨を人々に提供し、基本的なオンチェーン取引やオンライン購入を行うことができるようにすることだと思います。具体的には以下が含まれる可能性があります:
さらに、類似の効果を実現する別の方法があります。それは「全民基本服务)universal basic services(」です:身分証明を持っている人に特定のアプリ内で制限された数の無料取引を送信する権限を提供します。
最後に強調すべき重要なカテゴリーは「全民基本保证金)universal basic security deposit(」です。身分の機能の一つは、ユーザーが担保として同等の資金を預けることなく、責任追及の対象を提供することです。これにより、個人資本の量に対する参加の敷居を下げるという目標を達成するのにも役立ちます。
! [Vitalik:デジタルアイデンティティ+ ZKテクノロジーの下での複数のジレンマ])https://img-cdn.gateio.im/webp-social/moments-4ee3f0f2fb93f4937527d660b75452b7.webp(
) 類似ガバナンス###における身分証明の需要
投票システムを想像してみてください: ユーザーAのリソースがユーザーBの10倍であれば、Aの投票権もBの10倍になります。しかし、経済的観点から見ると、1単位の投票権がAにもたらす利益は、Bにもたらす利益の10倍です。したがって、全体的に見れば、Aの投票が自身にもたらす利益は、Bの投票が自身にもたらす利益の100倍になります。だからこそ、Aは投票に多くのエネルギーを投入し、どのように投票すれば自身の目標を最大化できるかを研究し、さらには戦略的にアルゴリズムを操作する可能性さえあります。これが、トークン投票メカニズムにおける"クジラ"が過度な影響を与える根本的な理由です。
より普遍的で深い理由は、ガバナンスシステムが「1人が10万ドルを支配する」ことと「1000人が10万ドルを共有する」ことに同等の重みを与えるべきではないということです。後者は1000の独立した個人を表しているため、より豊かで価値のある情報を含むことになります。少量の情報の高度な重複ではなく、1000人からの信号は、異なる個人の意見が相互に相殺されるため、しばしば「穏やか」になります。
これは、ガバナンス型システムが「資金の出所に関係なく、同規模の資金束を同じように扱う」という方法に本当に満足しないことを示しています。システムは実際には、これらの資金束の内部調整の程度を理解する必要があります。
注意が必要なのは、上記の2つのシナリオの説明フレームワークに同意する場合、技術的な観点から見ると「一人一票」という明確なルールの必要性はもはや存在しないということです。
この二つのシーンでは、身分証明は依然として非常に有用ですが、「一人一身份」といった厳格なルールに従う必要はもはや存在しません。
! Vitalik:デジタルアイデンティティ+ ZKテクノロジーの下での複数のジレンマ
理論上の理想状態は: N個の身分証明を取得するコストはN²である
上述の論点から、私たちは、2つの圧力が対照的な両端から身分証明システムにおける複数の身分を取得する期待の難しさを制限していることがわかります。
まず、"簡単に取得できる身分の数"に明確なハードリミットを設定してはいけません。もし一人が一つの身分しか持てないのであれば、匿名性については話にならず、身分を強制的に開示される可能性があります。実際、固定の数が1より大きい場合でもリスクはあります: もし全員が各自が5つの身分を持っていることを知っているなら、あなたはその5つすべてを強制的に開示されるかもしれません。
この点を支持するもう一つの理由は、匿名性自体が非常に脆弱であるため、十分な安全バッファスペースが必要だということです。現代のAIツールを利用することで、クロスプラットフォームでのユーザー行動の関連付けが容易になり、言葉の使い方、投稿時間、投稿間隔、議論のトピックなどの公開情報を通じて、わずか33ビットの情報量で個人を正確に特定することができます。
次に、身分証明は財務と完全に結びつけることができません(つまり、N個の身分証明を取得するコストはN)です。これは大規模な