「イミテーションゲーム」を観る前に読んでおきたい一冊

いまから4年ほど前。

あるデータが過去のある時点から改ざんされていないことを担保できる仕組みが必要になったのでいろいろと調べていたのですが、そのときにあるタイムスタンプサービスを紹介してもらいました。

タイムスタンプサービスというのは「ある時点でファイルが存在していたこと」と「その時点から改ざんされていないこと」を担保するための仕組みです。タイムスタンプというのは一般的にデータのハッシュ値に日時を追加してそれを証明書(暗号鍵)で署名したものを使いますので暗号鍵が必要となりますが、そのときに紹介してもらったのはこの鍵がいらないというサービスでした。

ただ、当時はデータの真正性を保証する仕組みはおろか、暗号化やそれを支える技術についてたいへん疎かったわたしはその斬新なサービスが本当にいいものなのかどうか、そもそも正しい仕組みなのかを判断することができませんでした。これは少し勉強しないといけないなと反省し、少しでも暗号に詳しくなれるよう勉強するために「暗号技術入門」という本を購入しました。



この本はタイトルのとおり暗号技術に関する書籍ですが、文字をスライドすせるだけのシーザー暗号から一般的な共通鍵、公開鍵暗号について事細かに説明が書かれており、さらにハッシュや乱数といった個々の技術に関する内容についても詳しく言及している良書です。わたしはこの本を読んだおかげで暗号化に関する基本的な知識や考え方を得ることができたので非常に感謝しているというか、暗号化について興味を持った人にはこの本をもれなくおすすめしているくらい気に入っています。

ネットワークが世界中の隅々まで行き届き、すべての機器がつながることが当たり前になりつつある現代においては「誰かとつながること」は当然のこととしてさらに通信でやり取りしているデータを意図した相手以外には見られないようにしなければなりません。


誰とでもつながることができるけど通信は見られたくない。


ご飯はたくさん食べたいけど太りたくない的な矛盾を感じるわけですがそんな両立の難しい問題を解決するのが暗号技術です。
こんなにおもしろい技術はなかなかないので少しでも興味がある人はぜひ本書を読んでいただきたいのですが、この本の中で少しだけですがエニグマについて触れている部分があります。

エニグマというのは第二次世界大戦のときにナチス・ドイツが用いていたことで有名な暗号用の機械のことなのですが、これを解読したのが数学者アラン・チューリングだと言われています。そしてその様子を描いた映画「イミテーションゲーム」がいよいよ来週末から公開されます。


暗号を解読するというと「何となく難しいことをするんだろうな」という程度のことしか以前は考えられませんでしたが、この本を読んで暗号を復号化することがいかに困難なことなのかということを理解すると、他人が考えた暗号を解読することの途方も無さに放心してしまいます。

本書の34ページから41ページにエニグマの仕組みが分かりやすくまとめられているので、もう一度そこだけでも読んで「イミテーションゲーム」を観ようと思います。