「ミラ、この暗号分かる?」
由紀はノートに書かれた不思議な文字列をミラに見せた。
ミラは静かに見つめ、小さく頷いた。そして別の紙に何かを書いて渡す。
「『明日、図書館で』…どうやって読めたの?」
ミラは口に指を当てた。秘密だ、というジェスチャー。
葵が近づいてきた。「暗号通信の練習?」
「ミラだけが解読できるんです」由紀が説明した。
「完全秘匿という概念がある」葵が興味深そうに言った。「暗号文から平文について何の情報も得られない状態だ」
「何も?」
「そう。シャノンが証明した。完全秘匿を達成する方法は、ワンタイムパッドだけだと」
ミラがノートに書いた。「Key length ≥ Message length」
「ミラの言う通り。鍵の長さがメッセージと同じか長く、ランダムで、一度しか使わない。これが条件だ」
由紀は驚いた。「じゃあ、ミラと私は同じ長さの秘密の鍵を共有してる?」
ミラが微笑んで頷いた。彼女はいつ鍵を共有したのだろう。
葵が説明を続けた。「H(M|C) = H(M)。暗号文Cを観測しても、平文Mのエントロピーは減らない。つまり、何も学べない」
「でも」由紀が考えた。「鍵をどうやって安全に共有するの?」
「鍵配送問題だ。これが現代暗号の最大の課題」
ミラが別のメモを書いた。「Quantum key distribution: solve key problem」
「量子鍵配送?」由紀が首を傾げた。
「量子力学の性質を使って、鍵を安全に共有する方法。でも、それはまた別の話だ」葵が言った。
由紀はミラを見た。「ミラは、どうやって鍵を私に渡したの?」
ミラは何も答えない。ただ、窓の外を指差した。
「あの時か!」由紀が思い出した。「一緒に星を見た夜、ミラが何か数列を呟いてた」
ミラが頷く。
葵が感心した。「視覚的または聴覚的に鍵を共有したんだね。盗聴されにくい方法だ」
「でも、誰かが聞いてたかもしれない」
「その時は」葵が説明した。「完全秘匿は保証されない。ワンタイムパッドの安全性は、鍵の秘密性に依存する」
ミラが書いた。「Trust = secure channel」
「信頼が安全な通信路を作る」葵が翻訳した。「情報理論と人間関係の接点だ」
由紀はノートを見つめた。「私とミラの間には、秘密のチャネルがあるんですね」
「そう。二人だけが共有する鍵、二人だけが知る符号化方式。それが秘密チャネルだ」
ミラが立ち上がり、由紀に新しいメモを渡した。
「New key for tomorrow. Memorize and destroy.」
由紀は数列を覚え、紙を小さく破った。
葵が言った。「完全秘匿の代償は、鍵管理の手間だ。でも、その価値がある通信もある」
「私とミラの通信には、価値がある」由紀が微笑んだ。
ミラが小さく頷いた。
「情報理論は、秘密を守る数学でもある」葵が静かに言った。「でも、最も強い暗号は、信頼関係かもしれない」
由紀とミラは目を合わせた。言葉にしなくても、相互情報量は高かった。
葵が続けた。「実際には、ほとんどの安全なシステムは暗号と人間の信頼を組み合わせている。完全秘匿は理論的には美しいが、実践的には要求が高い。だから現代のシステムは計算量的安全性を使う」
「計算量的安全性?」由紀が尋ねた。
「暗号を破るのに現在のコンピュータで数百万年かかるようにする。完璧ではないが、十分に良い」
部室には、誰にも解読できない二人だけの沈黙があった。
それは、完全秘匿より強い、心の暗号だった。