選択的開示(Selective Disclosure)

選択的開示とは、証明に含まれる情報のうち、その場で必要な項目だけを見せ、それ以外は伏せたまま提示できる仕組みのことです。

別表記:選択的開示/Selective Disclosure/部分開示/選択開示/属性の選択的提示

紙の証明書との違い

免許証で年齢を確認してもらうとき、生年月日だけでなく、氏名も住所も本籍も相手に見えます。必要のない情報まで渡していることになります。相手は年齢しか知りたくないのに、住所まで知ってしまいます。

紙の証明書は、一枚の紙にすべてが印刷されているので、一部だけを見せることができません。手で隠しても、隠した部分が本物かどうかを相手は確かめられません。

デジタルの証明では、ここを分けられます。「年齢の条件を満たしている」ことだけを示し、生年月日そのものは見せない。所属部門を示したいだけなら、氏名は伏せる。伏せた項目があっても、見せた項目が発行者の署名したものであることは確認できます。

なぜ両方にとって利点があるのか

見せる側は、必要のない情報を渡さずに済みます。提示のたびに個人情報が相手に蓄積されていく、ということがなくなります。

確認する側も、余計な個人情報を預からずに済みます。預かれば、保管と管理の責任が生じます。漏えいすれば責任を問われます。本当に必要な情報だけを受け取るほうが、受け取る側にとっても楽な場面は少なくありません。

個人情報保護の観点からも、目的に必要な範囲を超えて情報を集めないことが求められます。選択的開示は、この要請を技術的に実現する手段になります。

どう実現されるのか

証明を発行する段階で、項目ごとに分けて扱える形にしておきます。氏名、所属、役職、有効期限といった項目を、それぞれ独立した部品として証明に入れます。

提示するときに、見せる項目だけを開き、残りは開かないまま渡します。開かなかった項目は、相手には「何かがある」ことしか分かりません。

ここで一つ、技術的な工夫があります。各項目には、ランダムな値を混ぜたうえで計算した値(要約値)が使われます。発行者が署名するのは、この要約値のほうです。提示するときは、見せる項目については元の値とランダムな値を渡し、相手は要約値を計算し直して署名と照合します。

このランダムな値を混ぜる一手間がないと、問題が起きます。たとえば「部門」という項目は、取りうる値が限られています。営業部、経理部、人事部、と候補を全部試せば、伏せた項目の要約値から元の値を突き止められてしまいます。ランダムな値が混ざっていれば、総当たりができません。

伏せた項目についても、それが確かに発行者の署名の対象であったことは確認できます。都合の悪い項目だけを削って提示する、ということはできません。削れば、署名と合わなくなります。

方式の違い

選択的開示を実現する方式は一つではありません。

項目ごとに要約値を作り、発行者がそれらをまとめて署名する方式があります。仕組みが分かりやすく、広く使われている署名方式の上に作れるため、実装しやすい利点があります。ただし、署名は提示のたびに同じものを見せるので、相手は「前に来たのと同じ証明だ」と分かります。

提示のたびに違う形の署名を作れる特殊な署名方式を使うものもあります。こちらは複数の提示を結びつけられないという利点がありますが、対応している実装が限られ、計算の負担も大きくなります。

どちらを選ぶかは、追跡されないことをどこまで重視するか、対応している製品や仕様は何か、によって決まります。

ゼロ知識証明との違い

選択的開示は、見せると決めた項目については、その値がそのまま相手に渡ります。「どの項目を見せるか」を選ぶ技術です。

ゼロ知識証明は、値そのものを渡さず、「条件が成り立っている」という事実だけを渡します。生年月日を見せずに「20歳以上」だけを示す、といった使い方です。より踏み込んだ絞り込みですが、計算の負担も大きくなります。

多くの業務用途では、選択的開示で足ります。

AIエージェントとの関係

AIエージェントが持つ権限の証明にも、選択的開示は使えます。

そのAIが特定のフォルダを読む権限を持っていることだけを相手に示し、社内の組織構造や委任した人の氏名は伏せる、といった使い方です。社内では全項目を見せ、取引先には権限の範囲だけを見せる、と相手によって開く項目を変えることもできます。

一枚の証明書を、相手に応じて必要な部分だけ見せて使い回せるので、相手ごとに別の証明書を発行する手間が省けます。

よくある誤解

伏せた項目は、相手に存在すら分からないのか。 「何かの項目がある」ことは分かります。中身が分からない、ということです。項目の数や並びから推測される情報が気になる場合は、発行時に項目の構成を工夫する必要があります。

選択的開示があれば、提示の履歴は追跡されないのか。 方式によります。同じ署名を毎回見せる方式では、相手は複数の提示を結びつけられます。追跡されないことが要件なら、提示のたびに署名を変えられる方式を選ぶ必要があります。

見せる項目を選べるなら、嘘の項目を混ぜられるのか。 できません。見せる項目はすべて発行者の署名の対象で、内容を変えれば署名と合わなくなります。選べるのは「見せるか伏せるか」だけで、「書き換える」ことはできません。

一覧に戻る