#dusk $DUSK @Dusk ゼロ知識証明サービスがあれば、必ずあなたを中に入れなければならないのですか?私は@Dusk のCitadel 2ドキュメントを読んだところ、むしろ答えは否定的だと分かりました。Citadelコントラクトはセッションが暗号学的に有効であることだけを検証するにすぎず、実際に通すかどうかを決めるのはService Provider(サービス提供者)です。この境界は「個人情報を開示する必要がない」という一言で簡単に覆い隠されがちです。つまり、ユーザーは最初にLicense Provider(ライセンス提供者)から資格情報を受け取り、そこから証明を生成します。証明は、自分が登録済みで信頼できる機関によって署名されたライセンスを持っていることを示します。すると、オンチェーンではユーザーがどの身分証(どの証明書)を使ったのかは見えません。しかしサービスの入口では、SPが自分でどのLPを信頼するか、どの属性を受け入れるかを判断しなければならない。さらに、セッションが期限切れでないか、取り消されていないか、そしてcookieを再利用できるかどうかも確認します。\n\n私はむしろ、これこそがCitadel 2のより正直な点だと思います。「証明が成立すれば資格が自動的に通る」という形で包み込まず、暗号学的検証と業務上の権限付与を2つのステップに分けています。ユーザーにとっては個人情報の露出が減ります。一方でサービス側にとってはルールが消えるわけではなく、資料一式を収集する代わりに、信頼する情報源を選び、セッション状態をチェックするだけになります。\n\nプレッシャーがかかる状況も具体的です。ユーザーの証明が完全に正しくても、サービスが「そのライセンスを発行したLPを信頼していない」や「セッションが期限切れだと分かった」などの理由でアクセスを拒否することがあります。ユーザーはオンチェーンで何か誤りが起きたのだと思ってしまうかもしれませんが、SPは単に自分がポリシーを適切に執行しているだけだと考えます。もしページに「検証に失敗しました」としか表示されなければ、双方とも本当の責任点を見つけられません。\n\nだから私は、DUSKのアイデンティティ設計を見るとき、「どれだけ属性を隠せるか」だけを尋ねるつもりはなく、各アプリが「証明が有効か」と「サービスの通過(放行)」が別問題であることをきちんと説明できているかを重視したいです。@Dusk のCitadel 2は確かに不必要な情報開示を減らせますが、アプリが誰を信頼するかを代わりに決めることはできません。今後最も注目すべきは、拒否されたときにユーザーが、問題が証明なのか、資格情報なのか、あるいはサービスのポリシーなのかを把握できるかどうかです。#dusk \n

