「これ、読める?」
ミラが紙を差し出した。意味不明な文字列が並んでいる。
「暗号ですか?」由紀が興味津々だった。
「Encrypted message」ミラが頷いた。
陸が覗き込んだ。「うわ、全然分からん。『KHOOR ZRUOG』って何?」
葵が微笑んだ。「古典的な暗号だね。シーザー暗号かもしれない」
「シーザー暗号?」
「各文字を、アルファベット順で一定数ずらす。例えば、3文字ずらすと、AがDになる」
由紀が試した。「KHOORのKを3文字戻すと…H?」
「そう。Hだ。続けて」
「HELLO…?」
「正解!『KHOOR ZRUOG』は『HELLO WORLD』だ」
陸が感心した。「暗号って、こういう仕組みか!」
葵がホワイトボードに図を描いた。「暗号化は、情報を隠す技術。平文を暗号文に変換する」
「でも、ルールが分かれば簡単に解けちゃう」由紀が指摘した。
「そこで鍵の概念が重要になる。暗号化と復号化には鍵が必要」
ミラが新しいメモを見せた。「Public key, Private key」
「公開鍵暗号。送信者は公開鍵で暗号化。受信者だけが持つ秘密鍵で復号化できる」
陸が混乱した。「公開されてるのに、安全なの?」
「数学的に、公開鍵から秘密鍵を推測するのは極めて難しい。素因数分解などの計算量理論に基づく」
「難しそう…」
葵が簡単に説明した。「例えば、15は3×5と簡単に因数分解できる。でも、巨大な数になると、因数分解に何年もかかる」
「それで安全性が保たれるんですね」由紀が理解した。
「そう。情報理論と計算理論の交差点に、暗号理論がある」
ミラがさらに複雑な暗号を見せた。今度は数字とアルファベットの混合だった。
「これは?」陸が挑戦する気になった。
「ヒントを出そう。情報理論的に考えて。よく使われる文字は何?」
「英語なら、Eとか?」由紀が答えた。
「正確。頻度分析という手法がある。暗号文で最も多い文字は、平文のEかもしれない」
陸が数えた。「この暗号で一番多いのは『7』だ」
「じゃあ、7をEと仮定してみよう」
三人で協力して、少しずつ暗号を解いていく。頻度、パターン、文脈。情報理論の原理を使って。
「解けた!」由紀が叫んだ。
「何て書いてあった?」
「『Information is power』」
ミラが静かに微笑んだ。
葵が説明を続ける。「暗号は、情報の機密性を保つ。でも完璧な暗号は存在しない。シャノンが証明したワンタイムパッドだけが、理論的に破れない」
「ワンタイムパッド?」
「鍵が平文と同じ長さで、ランダムで、一度だけ使う。この条件を満たせば、情報理論的に安全だ」
陸が考えた。「でも、鍵をどうやって安全に送る?」
「それが鍵配送問題。量子通信や公開鍵暗号が、その解決策の一つだ」
ミラが最後のメッセージを見せた。今度はQRコードだった。
「これも暗号?」由紀が聞いた。
「ある意味、符号化の一種。情報を二次元パターンに変換してる」
陸がスマホでスキャンした。「『Thank you for learning』って出た!」
「情報を隠し、守り、伝える。それが暗号と符号化の世界だ」葵が言った。
由紀が感心した。「毎日使ってるメッセージアプリも、暗号化されてるんですよね」
「そう。現代社会は、暗号なしには成り立たない。クレジットカード、パスワード、通信。全て暗号で守られてる」
ミラが立ち上がった。「Secrets everywhere. Information is valuable.」
「秘密を守ることも、情報理論の大事な役割なんですね」
陸が笑った。「じゃあ、今日の部活の内容も暗号化しとく?」
「それは必要ないだろう」葵が笑った。
でも、情報の価値と秘密の重要性を、三人は確かに学んだ。