情報セキュリティ特論 (Advanced Information Security)

公開鍵暗号の数理的基礎から、ゼロ知識証明、秘密共有、電子投票などの高度なプロトコルまで。現代社会の信頼基盤を支える暗号技術の応用展開を深く掘り下げます。

Course Content

公開鍵暗号の発展

RSA、離散対数、平方剰余、そして楕円曲線暗号。異なる数学的問題に基づく暗号構成法を比較・検証します。

認証とデジタル署名

メッセージの真正性と否認防止。エンティティ認証プロトコルと、署名スキームの安全性を議論します。

コミットメントと秘密共有

情報を隠したまま存在を証明する手法や、信頼できない複数の主体に秘密を分散させる閾値理論を学びます。

ゼロ知識証明

「知識そのもの」を一切明かすことなく、自分がその知識を持っていることだけを証明する驚異的なプロトコルを詳解します。

電子投票とデジタルキャッシュ

匿名性と妥当性の両立。ブラインド署名などを用いた、次世代の社会システムを支える応用技術を検討します。

秘密計算と準同型暗号

データを暗号化したまま計算を行う。プライバシー保護とデータ活用を両立させる最先端のセキュリティ技術を概観します。

Lecture Notes: 応用暗号論が描く深遠なロマンス

#01: The RSA Paradox (RSA暗号)

「二人の仲を裂く(素因数分解する)ことなんて、誰にもできないよ」
彼は巨大な数(公開鍵)を彼女に贈りました。二人の愛の強さは、数学的な困難さに守られているはずでした。

しかし、彼女がふと彼のスマホを覗いたとき、付箋に書かれた「pとq(素数)」を見つけてしまいました。
どんなに巨大な鍵で心に鍵をかけても、物理的なトラップドア(秘密のメモ)が露出してしまえば、関係の崩壊は多項式時間で終わるのです。

#02: Discrete Logarithm Regret (離散対数)

「どうしてあんなひどいことを言ったの?」
彼女の問いに対し、彼は「指数関数的に感情が高ぶってしまったんだ」と言い訳しました。

放たれた言葉(結果)から、その原因となった感情(離散対数)を逆算するのは、現代のスーパーコンピュータを以てしても不可能です。
一度一方向関数に投げ込まれた悪意は、二度と元の穏やかな平文には戻らないのです。

#03: Quadratic Residue Choice (平方剰余)

「私のこと、本当に好き? それとも遊び?」
彼女が突きつけたのは、平方剰余(QR)か非剰余(QNR)かという、究極の二値判定でした。

彼は「法N」という社会的な体面を保ちつつ、彼女の問いに答えようとしましたが、
彼女は既に、彼の過去の行動からヤコビ記号を計算し、彼が「平方根を持たない男」であることを確信していました。

#04: Elliptic Curve Distance (楕円曲線暗号)

「最短距離で君に会いに行くよ」
そう豪語した彼でしたが、二人の距離は楕円曲線上の加法のように、奇妙な軌跡を描いていました。

直線の先にあるはずの彼女は、無限遠点(∞)へと遠ざかり、
どれだけスカラー倍(努力)を重ねても、二人が再び重なるポイントを見つけることはできませんでした。

#05: The Non-repudiation Fight (ディジタル署名)

「そんな約束、した覚えはないわ」
彼女の「否認」に対し、彼はかつてのラブレターを突きつけました。

そこには、彼女固有のハッシュ値と秘密鍵によって生成されたデジタル署名が、鮮明に残っていました。
「数学的に、これは君以外には書けないんだ」
証拠(署名)が完璧であればあるほど、愛が義務という名の「検証アルゴリズム」に成り下がったことを、彼は悟りました。

#06: Mutual Authentication (認証)

「あなたが本当に『私の愛する人』であることを証明して」
深夜の電話、彼女はチャレンジ&レスポンス認証を要求してきました。

彼が答えた秘密の合言葉は、昨日と全く同じものでした。
「残念。それはリプレイ攻撃対策がされていないわ」
彼女は冷たく電話を切り、セッションを強制終了(Disconnect)しました。

#07: Secret Commitment (コミットメント)

彼は将来の夢を箱に入れ、鍵をかけて彼女に預けました。
「中身はまだ秘密だけど、僕は決してこの約束を変えない(秘匿性と拘束性)」

しかし、数年後に彼が箱を開ける鍵(Open)を渡したとき、彼女は既にその箱を捨てていました。
約束の内容が正しいかどうかを検証する前に、検証者(彼女)のタイムアウトが発生していたのです。

#08: Threshold Heartbreak (秘密共有)

「僕の浮気の証拠は、三人の友人に分けて預けてある」
彼は(2,3)の閾値秘密共有スキームでリスクを分散したつもりでした。

しかし、親友二人がバーで意気投合し、秘密のシェアを合体(ラグランジュ補間)させてしまったのです。
三人のうち二人が裏切れば、秘密は一瞬で復元されます。信頼の閾値設定を誤った代償は、あまりに大きなものでした。

#09: The Cave of Secrets (ゼロ知識証明)

「浮気してないって信じて!」と叫ぶ彼に、彼女はアリババの洞窟のような試練を与えました。
「あなたが本当に誠実なら、私の知らない裏口から帰ってきてみせて。でも、その方法は教えないで。」

彼は何度も彼女の指定する出口から現れ、潔白を証明しました(確率的な納得)。
彼女は彼が浮気していないことを「知って」いましたが、彼がどうやってアリバイを作ったのかという「知識」は、永遠にゼロのままでした。

#10: Anonymous Proposal (電子投票)

「僕との結婚に賛成の人は、この箱に票を入れてください」
彼女一人の食卓で、彼は電子投票システムを導入しました。

集計の結果は「反対:1票」。
匿名性は完璧に守られていましたが、有権者が彼女一人しかいない以上、
その1票が誰のものかは、暗号化するまでもなく明白でした。

#11: The Blind Kiss (デジタルキャッシュ)

「私の愛を、誰にも知られずに使いたい(匿名性)」
彼女は彼にブラインド署名を求めました。彼は中身が見えない封筒に、言われるがまま署名(承諾)をしました。

後日、その署名が「別の男との婚約届」に使われていることを知ったとき、
彼はブラインド署名の恐ろしさと、デジタルキャッシュの二重使用(裏切り)の重さを痛感しました。