応用の記録 / Proof of Personhood

失効確認を捨てて、
一意性だけ借りる

マイナンバーカードを「国のID」としてではなく、「一人一枚の、固有の鍵を持つカード」として使う。J-LIS に問い合わせないので失効は分からない。でも「同じ人が二回来られない」だけは残る。それが安く手に入る。頭の整理のための一枚。

思いつき

Van Rossem で、何が可能になったか

2026 年 7 月 18 日から、Cardano はマイナンバーカードの署名(RSA)を読めるようになった。ここから、こういう使い方が見えてくる。

国に問い合わせない使い方
カードをかざす
   ↓
カードが、その場で署名を出す(固有の鍵で)
   ↓
その署名を、こちらで確かめる  ← J-LIS に聞かない
   ↓
「本物のカードが、確かに署名した」と分かる

国の窓口(J-LIS)に問い合わせないので、いわばマイナンバーカードを、ただの「固有の鍵を持つカード」として扱うことになる。持ち主から見れば、Java カードを一枚渡されているのと変わらない。ただし、決定的な違いが一つある。

確認

問い合わせなくても、ここまで分かる

「失効確認ができない=何も信用できない」ではない。問い合わせずに確認できることは、意外と多い。

できる
このカードが本物か(政府の認証局が発行した証明書か)。証明書の署名を確かめれば、オフラインで分かる。
できる
鍵が一意か。カードごとに違う鍵を持つ。
できる
その場で署名したか。毎回チャレンジを変えれば、複製や使い回しを弾ける。
できない
失効していないか。紛失・期限切れは、J-LIS に聞かないと分からない。

確認できないのは、最後の一つだけ。そして一回限りの短いイベントなら、紛失から悪用までの隙が狭すぎて、この穴はほぼ問題にならない。低リスクだからこそ、失効確認を省ける。これがこの発想の一番の勘所にあたる。

正体

これは Proof of Personhood である

「一意であることを使って、一人一回」―― これには名前がある。Sybil 耐性、または Proof of Personhood(一人であることの証明)

ふつう「一人一回」を保証するには、こちらが本人確認の名簿を作らないといけない。この案は、それを国に肩代わりさせている。マイナンバーカードは一人一枚なので、名簿を作らなくても「同じ人は二回来られない」が成り立つ。

前例がある

インドの Anon Aadhaar が、まさにこれをやっている。国の ID を使い、個人情報を出さずに「一意な一人」を証明する。概念は実証済みで、ethereum.org の開発者ツールにも載っている。突飛なアイデアではない。

核心

なぜ配布カードでなく、マイナンバーカードか

「まるで Java カードを持ってもらう感じ」――そのとおりで、しかもここに答えが入っている。配ったカードには無くて、マイナンバーカードにあるもの。それが一人一枚である。

配布 Java カードマイナンバーカード
一人が持てる枚数何枚でも一枚だけ(国が保証)
Sybil 耐性なしあり
カード代1 枚 約 1,000 円0 円(みんな持っている)
名簿づくり自分でやる不要(国が済ませてある)
人数が増えると費用が比例して増える費用は増えない

Proof of Personhood を、
一人あたり 0 円で、名簿も作らずに手に入る。
これは配布式では、原理的に追いつけない。

使い分け

どこで、どちらが効くか

費用が人数に比例するかどうかで、境目が決まる。一言でいうと ―― 事前に相手が誰か分からない/配る暇がないほど、マイナンバーカードが効く。

配布カードで足りるマイナンバーカードが効く
人数少ない・固定メンバー多い・不特定
事前準備配れる(会員制など)配れない(初見の人が来る)
期間一回・短期繰り返す・広域
ジムの会員、社員証、部室の鍵市民全体、住民投票、給付、広域クーポン

配布カードは「誰に配るか」を先に決めないといけない。マイナンバーカードはその場に来た初見の人が、既に持っている。ここだけは、お金を積んでも配布式では追いつけない。

いちばん効く適用先 ― 避難所の配給

この方式が最も強く効くのは、災害時の配給(一人一回)である。理由が三つ重なる。①災害直後は名簿が作れない(誰がどの避難所に来るか分からない、他市からも流れてくる)。②通信が落ちても動く ―― もともと国に問い合わせない方式なので、回線が死んでもオフラインで成立する。③一回の配給は低リスクなので、失効確認の穴が問題にならない。
平時の設計より、むしろ災害時にこそ効く。ここは「あったら便利」ではなく「これでないと難しい」領域にあたる。
→ 必要な機能の切り分けと、開発者への具体的な依頼は 避難所の配給 ― 機能の切り分け に分けて書いた。

問題

正直な、三つの引っかかり

法律
これが本当のブロッカー。技術は動く(カードは PIN さえ合えば誰のアプリにも署名を返す)。問題は、署名検証者の枠組みの外でマイナンバーカードの証明書を使っていいのか。シリアル番号の利用制限などが、この使い方に及ぶかは判断が示されていない。灰色。グレーゾーン解消制度で一文で聞ける論点にあたる。
貸し借り
「一人一枚」でも、カードと PIN を他人に貸せば理屈上はなりすませる。ただし実際のリスクは低い。マイナンバーカードの暗証番号を他人に渡す心理的な壁は、銀行の暗証番号なみに高く、普通の人はやらない。
現実に問題になるのは、その人が搾取されている状況(暗証番号を奪われるなど)のときで、これは技術の穴ではなく社会的に弱い立場の人が狙われるという別種の問題にあたる。技術で完全に潰そうとせず、一回の価値を搾取の手間に見合わないほど小さく保ち、後から申告できる人間側の窓口を用意するのが、低リスク用途では現実的。
心理
この資料は「マイナンバーカードで国に見られるのが嫌で離れた人」を狙う話だった。その人に「イベントでカードをかざして」と言うと引かれうる。ただし反論も立つ ―― 利用者証明用の証明書なら個人情報はゼロ(基本 4 情報を含まない)、しかも国に問い合わせない。公式のマイナウォレットより、むしろ私的である。
まとめ

なぜ、これが軽いのか

この資料の他の話(国家級の ID をオンチェーンで完全に扱う)は、失効確認も、将来の P-384 対応も、法律の地雷原も抱えていて、重かった。この応用は違う。

難問を反転させている
重い話    低リスクにできない
          → 失効確認が要る/重い基盤が要る/地雷原

この応用  低リスクでいい
          → 失効確認が要らない
          → 今の RSA 対応で足りる
          → 残る価値は Sybil 耐性という明確な一点
          → ブロッカーは技術ではなく、法律だけ

「低リスクである」ことが、難所を全部消している。
あとは「使っていいか」を、国に聞くだけ。

この一枚の位置づけ

思考の整理であって、実装計画ではない。法律の可否は未確認で、そこが確定するまでは動かせない。ただしこの資料の中で、実装が最も軽い応用である ―― カードは既に全員が持ち、技術は 7 月 18 日に揃い、残る問いは一つだけだから。