紀元前3,000年から現在にいたるまで、機密性の高い情報を暗号化し、またその暗号を解読するために、さまざまな手法が使われてきました。一方、インターネットが拡大を続けるなか、そこで日々やり取りされる機密性の高い情報の量も増大しています。それゆえ、日常の情報セキュリティを支える暗号化アルゴリズムの重要性は高まるばかりです。
暗号と暗号化技術の歴史には、人を惹きつけてやまないところがあります。それは、暗号の作成者と暗号の解読者のあいだで交わされる果てしない戦いの歴史です。そこでは、暗号化アルゴリズムの開発サイクルが絶えず繰り返され続けており、その分だけ既存の暗号化アルゴリズムを解読する試みもなされています。そしてさらにそれを追うようにして、解読されたアルゴリズムに代わる新たな暗号化アルゴリズムが生み出されているのです。
戦いは今も続いていますが、現在では、鍵の強度を高め続けることがより重視されるようになっています。そのため、既存の鍵がハッキングされ解読されようとしているなかで、あるいは、鍵の脆弱性の存在が見えつつある状況において、すでに新しい鍵の準備は終わっており、鍵は出番を待っているのです。ところで、RSAという鍵のアルゴリズムがありますが、日常生活のなかでインターネットにある程度の時間アクセスしていれば、このアルゴリズムに遭遇します。RSAアルゴリズムの影響はいたるところで確認できます。RSAアルゴリズムは1977年に、Ron Rivest、Adi Shamir、Len Adlemanによって公開されました。公開以降、このRSAでは、多くの変更が行われています。あるアルゴリズムが解読されると、または、解読されようとしている状況で、代わりの新しいアルゴリズムが用意されてきたのです。しかしコンピューターの処理能力が向上した結果、次世代のRSAアルゴリズムさえも、解読されるおそれが高くなってきたのです。毎度のことながら、解読されるのは時間の問題に過ぎません。
サイバー犯罪との戦いにおいて次に何が起きるのか、どんな大きな変化が待ち構えているのかを詳しく把握するために、暗号化の歴史における過去の重要な出来事のいくつかを振り返ってみましょう。
現在知られている最古の暗号は古代エジプトのモニュメントに記されたヒエログリフ(古代エジプト文字)であるとされており、それは、5,000年以上前に刻まれたと言われています。19世紀になってようやく、この暗号は解読可能なものと考えられるようになりました。ここで歴史が語っていることがあるとすれば、それは、セキュリティの世界においては永久に侵すことのできないままになっている領域は何1つ存在しないという事実です。
シーザーの暗号
紀元前1世紀になると、シーザーの暗号という名の暗号が登場します。非常に有名な暗号化手法の1つで、ローマ皇帝のユリウス・シーザーは頻繁にこれを使用していました。この暗号は、元のアルファベットの文字を一定の数だけ後にずらして作成します。これは、シフト暗号とも呼ばれており、ずらした文字数は、メッセージを送る人と受け取る人だけが知っています。ただしシフト数は最大でも26しかないので、それらをすべて試せば簡単に暗号を解読できてしまいます。ランダムシフトの技術が利用できる場合は、「26x25x24x … = 400000000000000000000000000!」といった具合に文字の置き換えの組み合わせを効果的に増やすことが可能であるため、メッセージの解読をとても難しくすることができます。
シーザーの暗号は、一定のルールに従って文字の配列を置き換える換字式暗号の暗号化手法をベースにしています。これは歴史上最も広く使用された暗号化システムです。ただし、頻度分析を使えば、換字式暗号はどれも解読が可能です。この分析では、言語パラメータを組み込んで、文字の出現頻度をもとに暗号化される前の文字を推測します。
第一次世界大戦の勃発を期に最新の通信システムが開発され、機密情報の秘匿性を確保する必要が生じた結果、暗号化と暗号の解読の技術が急速に進歩します。機械式暗号機の出現により、最も複雑な暗号でさえも解読できる可能性が高まり、同時に、より複雑な暗号化の手法を開発することも可能になりました。そして過去のあらゆる世代を通じて最も人々の関心を集めた暗号が登場するのです。ドイツンのエニグマ機による強力な暗号です。
エニグマ機による暗号
1918年にドイツのエンジニア、Arthur Scherbiusが発明したエニグマ機による暗号は、複式置換え法による換字式暗号化をその特徴としていました。この装置には、アルファベット26文字が刻まれた「スクランブラー」と呼ばれる複数のローターと、プラグボードが1つ搭載されています。エニグマ機はあるアルファベットを文字単位で別のアルファベットに変換することができました。キーボードで文字を1文字打ち込むごとにスクランブラーが1目盛り回転する仕組みになっており、暗号化も復号も1つの鍵で簡単にできますが、鍵は入力した文字ごとに変更されます。
ドイツの侵略の脅威にさらされていたポーランドは「Bombe」と呼ばれる独自の暗号解読装置を作り出します。しかし、エニグマには次々と改良が加えられ、エニグマの生成する暗号のパターンも増え続けていったため、ポーランドがこのまま暗号解読の作業を続けても成果は期待できなくなりました。1939年、第二次世界大戦が始まる2週間前に、ポーランドは調査の結果と暗号解読の作業をイギリスに引き渡します。この情報をもとにイギリスは最終的にドイツ軍のエニグマの利用パターンを突き止め、エニグマの暗号は解読されることになるのです。
秘密にされた解読の成果
コンピューターサイエンスと人工知能の父として知られるアラン・チューリングは、現代のコンピューターの先駆けとなる電気機械式の「Bombes」という巨大な装置を作り出します。ブレッチリー・パークの諜報基地でエニグマの暗号の解読にあたり大きな戦果あげたUltraと呼ばれるチームにとって、Bombesの存在は欠かせないものでした。ドイツの動きやドイツの軍事作戦に関する通信の内容を解読して得られた情報は1938年の終わりから45年の終戦まで、連合軍にとって重要な情報源であり続けます。この画期的な成果は最高機密として扱われたため外部に漏れず、ドイツは完全にエニグマを信頼して終戦まで使い続けたのです。エニグマの暗号を解読できていたという事実は1974年まで公にされませんでした。
第二次世界大戦以降、暗号の作成者と暗号の解読者が使用するツールは、機械的な装置から刻々と処理能力を増すコンピューターへと移行していきます。インターネットの成長や、パソコンとスマートフォンの普及に伴い、日々の情報セキュリティの重要性は高まるばかりです。もはや軍事的な観点や行政機関の観点だけの話ではなくなっています。そしてその結果、我々はまた、終わりのない戦いの場に戻ることになるのです。今度の相手はサイバー犯罪者です。そこで相手に一歩先んじるためには、そのためにできることを理解しなければなりません。裏にはどんな障害が新たに待ち構えているのか知る必要があるのです。
原文はこちら