みんなが使うのに、まだまだ難しい暗号技術

結城浩

2003年11月21日

たださんが日記で、 拙著『暗号技術入門 —— 秘密の国のアリス』に対してオススメのコメントをつけてくださった。 ありがとうございます。

高く評価してくださったから言うわけではないですけれど、

「RSA」とか「鍵長」のような発明者が使っている語彙が、 利用者の前に突然登場することがよくある

とか、

現代の暗号技術は、 (残念ながら)隣り合っていないレイヤと直接言葉を交わさなければ使いこなせないのである。

という視点はなかなか面白いなあ、と思いました。 確かに暗号技術は、まだまだ難しい技術なのですよね。

暗号本を書いて(つまりは自分なりに調べて・考えて)感じたのは、 いままで自分がぼんやりと理解したつもりになっていたことも、 ずいぶん間違っていたという点でした。

たとえば、擬似乱数生成器。 教養としては擬似乱数が暗号技術に使われていることは知っていたし、 暗号用に設計された擬似乱数生成器ではなければ危険だということも知っていた。 でも、そこで本質的に重要なのが 予測不可能性(unpredictability)という性質であることは知らなかった。 MD5の出力を入力にフィードバックするような乱数では駄目なのであった(これはp.309のアリスのクイズになった)。

それから、PGPのweb of trustの話。 鍵が正当であることと鍵の信頼度が独立な概念であることも、 どんな参考書を読んでもはっきりとは理解できなかった。 私は自分で文章に書いて(そして自分の文章を読んで)本当に理解した、 と思えた。

また、暗号に対する「鍵」、 メッセージに対する「ハッシュ値」、 そして擬似乱数列に対する「種」がパラレルにとらえられることも、 (私にとっては)驚くべき発見でした。 これは暗号本の最後にきちんとまとめました。

先日、担当の編集長さんとお会いしたときに 「あの暗号本はとても良い本です」 と言われ、私は思わず 「そう!良い本ですよねえ」 と言ってしまいました。自分で書いたくせに (^_^;

本屋さんで自分の暗号本を見るたびに、 良い本を書くことができたことを多くの人に感謝しつつ、 本に手を置いて「この本を、必要としている方に届けてください」 と私はいつも神さまに祈るのです。