第2次世界大戦の情報セキュリティ:エニグマをハッキングせよ

エニグマはドイツ軍が開発した暗号機です。第2次世界大戦中に使用されていたものですが、エニグマにまつわるエピソードから、現代の情報セキュリティにも通じる教訓を得られます。

Enigma

ドイツの暗号機「エニグマ」のことは、多くの方がご存じだと思います。小説家や映像作家たちがエニグマの物語に魅了され、作品中で取り上げているからでしょう。最近であれば、『イミテーション・ゲーム/エニグマと天才数学者の秘密』が記憶に新しいところ。エニグマの解読に成功した著名なコンピューターの父、アラン・チューリング(Alan Turing)を題材としたアカデミー賞のノミネート作品です。

暗号機「エニグマ」

第2次世界大戦中、チューリングは多くの同僚の数学者(と言語学者、エジプト学者、チェスプレイヤー、さらにはクロスワードパズルの作成者など)とともに、ブレッチリーパークにある政府暗号学校なるところに勤務していました。そこは英国の暗号解読センターで、敵の通信を傍受し解読するための手法を開発していました。

エニグマは当時最も高度な暗号機であり、ナチスの空挺団や部隊の通信を保護し、ハッキングは不可能と考えられていました。しかし、ポーランドと英国の暗号解読者が解読方法を発見したことで、反ヒトラー同盟は第2次世界大戦で大きく優位に立ちます(チャーチルやアイゼンハワーの言葉を借りると「決定的優位」)。

エニグマの仕組みについては、こちらをご覧いただくか、YouTubeで実際に動いているところを見てみてください。

オペレーターがメッセージを入力するためにキーボード上の文字をタイプすると、信号が生成され、その信号は複数のローターを連結した電子グリッドを通過します。その後、変換された文字がダッシュボードに示され、この文字が暗号文に使用されます。ローターは入力のたびに回転するので、次に同じ文字を打っても異なる文字に変換されます。

エニグマのメッセージを継続的に解読できるようになったのは、暗号解読機「ボンバ」が開発されたおかげです。ボンバは科学と解読研究の成果であると同時に、ドイツ軍が犯したミスから生まれたものでもあります

エニグマのメッセージを継続的に解読できるようになったのは、暗号解読機「ボンバ」が開発されたおかげです。ボンバは科学と解読研究の成果であると同時に、ドイツ軍がエニグマを使うときに犯したミスから生まれたものでもあります。また、急襲で手に入れた暗号機とワンタイムパッドの分析や、原文に既知の単語を含むメッセージを暗号解読者が分析するという特殊作戦も、ボンバの開発に貢献しました。

エニグマの話から得られる教訓は何でしょうか?情報セキュリティの手法という観点で見ると、エニグマ自体は現代人にとって驚くほどのものでもありません。ですが、ここから学ぶべき点もあるのです。

1. 技術の優位性を過信しない。

ナチスがエニグマを解読不可能と考えたのはもっともです。ところが、連合国軍が独自に開発した機械は、暗号機の構成を分析し、コードを破ってメッセージを解読できるだけの性能を備えていました。それは当時利用できたテクノロジーから見れば飛躍的な進歩であり、ドイツ軍にそのような事態を予測することは不可能でした。ボンバを現代の暗号手法に置き換えるとしたら、何になるかは皆さんもご承知のとおりだと思います。そう、量子コンピューターです。

2. よく考えられた情報保護方式の中で何が「最弱点」になるかを予測するのは難しい場合も。

原文メッセージの文字と、それに対応する暗号化メッセージの文字は絶対に一致しないという暗号原理は、大して意味がない些末なことに見えるか、逆にむしろ適切な対策とすら思えるかもしれません。ですが、これは無効なキーを機械的に区別するための手段となってしまいました。つまり、原文メッセージの文字が暗号化メッセージの文字と1文字でも一致するような選択肢は、すべて排除すればいいのです。

3. 暗号鍵を少しでも強化する機会を常に模索すべき。

一般の人向けに、この教訓をパスワードの生成に当てはめることができます。当時、海軍エニグマと呼ばれる海軍向け暗号機には追加のローターが搭載され、暗号解読者たちを半年間も身動きが取れない状態に陥れたといいます。改造された暗号機のサンプルが、撃沈された潜水艦から回収されるまで、研究を再開できませんでした。Kaspersky Labのパスワードチェッカーを使ってみればわかるように、たった1文字を追加するだけでパスワードの解読時間が大幅に延びることがあります。

4. どんなに洗練されたシステムでも、人的要因が重要となる。

ドイツ軍のオペレーターが小さなミスや軽率な過ちを犯さなかったとしても、いずれ連合国はエニグマを解読できたでしょうか。それは、はっきりとはわかりません。一方、ドイツ軍司令部のとった行動は、この「人的要因」の定義に当てはまると言えるでしょう。ドイツ軍はエニグマが解読されたとは微塵も考えず、連合国の周到な戦いぶりには別の理由があると考え続けていたのですから。

5. 情報の優位性は諸刃の剣である。

連合国軍の司令部にとって最も重要な課題は、エニグマの解読成功で得優位性を損なうことなく、解読メッセージから得られた情報を活用することでした。ときには、成功の本当の理由を隠すために特殊作戦を展開することもありました(たとえば、護衛団を攻撃する前にあえて戦域上空に飛行機を飛ばす、敵国の諜報部に「貴重な内通者」がいるという偽の情報を流す、など)。あるときは、一部の作戦を諦める必要もありました(何も知らないふりをして、ドイツ軍にコヴェントリーを空爆させたこともあります)。

日を追うごとにテクノロジーは進歩し、コンピューターの能力は強化されていますが、情報を使用し、保護する上での原則はそれよりもはるかに遅いペースで変化しているので、今でも過去から学べることは大いにあります。

それでもエニグマは魅力的なお話にすぎない、という人には、映画『エニグマ』(脚本はトム・ストッパード(Tom Stoppard))や『イミテーション・ゲーム/エニグマと天才数学者の秘密』(アラン・チューリングの伝記映画)、ニール・スティーヴンスン(Neal Stevenson)の小説『クリプトノミコン』をお勧めします。さらに、暗号機シミュレーターもあります。たとえばこれは古き良きExcelで作られています。

ヒント

Windows Downdate攻撃から身を守る方法

Windows Downdateは、最新バージョンのOSを古いバージョンにロールバックさせ、脆弱性が残る状態を復活させ、攻撃者がシステムを容易に侵害できるような状態にする攻撃です。この攻撃のリスクを低減するにはどうしたらよいでしょうか?