暗号化は本当に私たちのデータを守るのか?

暗号化は本当に私たちのデータを守るのか?
このページは、生成AIにより自動翻訳されています。

安全な接続でメールを確認したり、オンライン小売業者から商品を購入したりするとき、個人情報やクレジットカード情報がどのように保護されているのか、疑問に思ったことはないだろうか。

私たちの情報が詮索好きな目から守られているのは、メッセージを判読できない形に変え、意図された受信者以外には読めないようにする 暗号アルゴリズムのおかげだ。しかし、こうしたアルゴリズムとは何なのか、どのように広く使われるようになったのか、そして実際にはどれほど安全なのだろうか。

暗号化されたメッセージ

最初期の暗号技法は、実際には数千年前の古代ギリシャにまでさかのぼる。実際、「cryptography(暗号)」という言葉は、ギリシャ語で「秘密」と「書く」を意味する語を組み合わせたものだ。

たとえばスパルタ人は、 有名な方法を用いていた 。一定の太さの杖にパピルスを巻き付け、その長さに沿ってメッセージを書いたのだ。パピルスをほどくと、メッセージは判読できない状態になり、目的地に着いて正しい円周の別の杖に巻き付けられるまで読めなかった。

こうした初期の暗号アルゴリズムは、送信者と受信者が手作業で適用する必要があった。通常は、文字を単純に並べ替える方法、たとえば 転置 や 置換で構成されていた。

最も有名なのは「シーザー暗号」で、ローマ皇帝ユリウス・カエサルの軍司令官たちが使用した。メッセージ中の各文字を、暗号文ではアルファベット上でいくつか先にずらした別の文字に置き換えた。

しかし、時がたつにつれて、こうした単純な方法は安全でないことが判明した。暗号解読者と呼ばれる傍受者が、暗号文の単純な統計的特徴を利用して、平文や復号鍵まで容易に復元できたからだ。これにより、その方式を使った以後のメッセージも簡単に解読できてしまう。

現代のコンピューター技術によって、暗号解読者が「破る」ことの難しい、はるかに複雑な暗号アルゴリズムを実用的に使えるようになった。同時に、暗号解読者もこの技術を採用・発展させ、暗号システムを破る能力を高めてきた。

その一例が、第二次世界大戦中にドイツ軍が使用した エニグマ暗号システム をめぐる物語だ。近年では映画 『イミテーション・ゲーム』でも描かれている。

エニグマの比較的複雑な暗号アルゴリズムは、ドイツ軍の通信で実用化するため、電気機械式コンピューター技術を用いて実装されていた。同じ技術を発展させたものが、英国の暗号解読者が使った「ボンブ」機にも用いられ、暗号の解読を実用的なものにした。

現代の暗号システム

今日広く使われている暗号システムの起源は、現代的な電子コンピューターが普及し始めた1970年代にある。データ暗号化標準(DES)は、産業界と政府での利用を目的に、1970年代半ばに米国政府が設計・標準化した。デジタルコンピューターでの実装を想定し、バイナリー文字列に対して、比較的長い一連の転置・置換処理を行う方式だった。

しかし、DESには大きな問題があった。それは、 秘密鍵 の長さが比較的短い(56ビット)ことだ。1970年代から1990年代にかけて、コンピューターの処理速度は桁違いに向上した。その結果、正しい復号鍵が見つかるまで考えられるすべての鍵を単純に検索する「総当たり」暗号解読が、システムへの脅威としてますます現実的になった。

その後継である高度暗号化標準(AES)は、これとは対照的に最小でも128ビットの鍵を使用し、今日、インターネット通信を保護するために最も広く使われている暗号システムとなっている。

鍵をめぐる問題

AESにも限界がある。これまでのすべての暗号システムと同様に、 共通鍵暗号システムとして知られており、メッセージを暗号化する送信者(ここではアリスと呼ぶ)と、復号する受信者(ここではボブと呼ぶ)の両方が秘密鍵を知っている。

秘密鍵は秘密である以上、インターネットのような公開通信チャネルで単純に交換することはできない。傍受されれば、以後の暗号化メッセージがすべて危険にさらされる。では鍵を暗号化しようとすると、その暗号化方式をどう安全にするかという別の問題が生じる。

そのためアリスとボブは、暗号システムを使って秘密の通信を始める前に、対面での個人的な会合など、秘密の通信経路を使って秘密鍵を交換しなければならない。アリスとボブがそのような秘密の通信手段を持たないことも多いインターネット通信にとって、これは大きな実務上の障壁となる。

鍵配送問題として知られるこの障壁を乗り越えるため、1970年代に、 非対称鍵暗号システム、すなわち公開鍵暗号システムという、巧妙な別の種類の暗号システムが考案された。

公開鍵暗号システムでは、受信者のボブが2つの鍵を生成する。1つはボブが復号用に自分だけで保持する秘密鍵で、もう1つは公開暗号鍵であり、ボブはこれを公開チャネル経由でアリスに送る。アリスは公開暗号鍵を使ってボブ宛てのメッセージを暗号化できるが、それを復号できるのはボブだけで、ボブは自分の秘密鍵を使う。こうして、共通鍵暗号システムの鍵配送問題を解決できる。

実用上、公開鍵方式は共通鍵方式より計算負荷が高いため、両方の種類の暗号システムが使われる。公開鍵暗号システムはAESのような共通鍵方式の鍵を配布するためだけに使い、その後のすべてのメッセージの暗号化には共通鍵方式を使う。

したがって、最終的なプライバシーは、使用される共通鍵暗号システムと公開鍵暗号システムの両方の安全性に左右される。今日最も一般的に使われている公開鍵暗号システムは、1970年代にスタンフォード大学とMITの研究者が考案した。設計者のイニシャル(Ron Rivest、Adi Shamir、Len Adleman)にちなむ RSA暗号システム と、 ディフィー・ヘルマン方式であり、数論として知られる数学分野の技法を用いている。

一般的なRSA暗号システムを動画で解説。

強みと弱み

では、今日使われているAESやRSA/ディフィー・ヘルマン方式は、どれほど安全なのだろうか。

実際の暗号システムの安全性は、その数学的設計特性(「数学的安全性」)と、実装や使用の詳細(「実装上の安全性」)の両方に左右される。ここでは数学的安全性に焦点を当てるが、暗号の不適切な実装や誤用が、長年にわたり発見されてきた多くのセキュリティ上の脆弱性の根本原因となっていることも付け加えておきたい。

現代のAESおよびRSA/ディフィー・ヘルマン暗号システムの数学的安全性は、特定の数学問題の計算複雑性が大きすぎるため、現在のコンピューター技術を使う攻撃者が妥当な時間内に解けないという前提に依拠している。

こうした複雑性に関する前提は、現時点では数学的に証明できない。しかし、暗号研究コミュニティが長期間(AESでは15年以上、RSAおよびディフィー・ヘルマン方式では30年以上)研究してきたにもかかわらず、それらが妥当性を保っていることは、この前提が正しいことを示すかなり強い証拠となる。

さらに、RSAおよびディフィー・ヘルマン方式の場合、基礎となる数学問題は、 数論に取り組む数学者たちが独立して研究してきた自然な問題である。

具体的には、RSA方式を破ることは、 大きな合成整数を素数の積に素因数分解する問題 と密接に関連している。一方、ディフィー・ヘルマン方式の安全性は、与えられた素数を法として、ある整数(指定された底)の 離散対数を求める 問題に基づいている。

この2つの例は、少なくとも18世紀以来、数論で研究されてきた問題だが、数学者たちはいまだにそれらを解く効率的なアルゴリズムを発見していない。このことは、計算上の難しさにある程度の確信を与えるかもしれない。

それでも、過去30年間の数学上の大きな進歩により、こうした問題は従来の想定より短い時間で解けるようになった。これにコンピューターの処理速度向上も加わり、既知の最良の攻撃アルゴリズムに対して一定の安全性を確保するには、より長い鍵が必要になっている。

たとえば、標準的な安全性水準におけるRSAの推定 鍵長 は、1980年代初頭の約400ビットから、今日では1,200ビット超へと増加している。

これまでのところ、鍵長を段階的に延ばすことで、問題解決に関わるコンピューター技術の進歩を補うことができている。しかし、将来のアルゴリズム研究におけるブレークスルーによって、RSAのようなシステムが実用的な鍵長では安全でなくなる可能性は現実にある。

たとえば2013年、欧州の研究チームは、 離散対数問題の特定の変種 (小標数の有限体における離散対数問題として知られる)を解く効率的なアルゴリズムを発見した。RSAやディフィー・ヘルマン暗号で一般に用いられる問題の変種には適用できないようだが、暗号システムの安全性と自然な数学の進歩との、いたちごっこの脆さを示している。

暗号技術の未来

暗号技術に大きな影響を与える可能性のある展開が2つあると私は考えている。

1つ目は、 量子技術の発展に関するものだ。1990年代の理論上の画期的な成果として、数学者のPeter Shorは、大規模量子コンピューターの可能性を 示した 。量子力学の原理を利用して整数の素因数分解問題や離散対数問題を効率的に解き、RSAおよびディフィー・ヘルマン方式を安全でなくするものだ。

大規模量子コンピューター技術はまだ実現しておらず、実現の見通しも依然として不透明だが、実現した場合に暗号技術にもたらし得る影響は、いくら強調してもしすぎることはない。

幸い、研究者たちは、将来この問題が生じた場合に対処するため、すでに2つの可能な方法を考案している。1つは、量子コンピューターによる攻撃に対しても安全だと考えられている公開鍵暗号システムの開発だ。もう1つは 量子暗号であり、物理的な前提と量子物理学の法則に依拠して安全性を提供する通信技術である。

2つ目の可能性は、 クラウドコンピューティングの利用拡大に関係する。保存されている個人データを暗号化で保護しない限り、クラウドサーバー(またはハッカーなど、そのデータにアクセスできる他の主体)からデータのプライバシーを守ることはできない。

一方、利用者が従来型の暗号アルゴリズムを使うと、サーバーが利用者のためにデータを有用な形で処理する(たとえばデータを検索する)ことも妨げられるという副作用がある。この一見矛盾する状況を克服するため、暗号研究コミュニティでは、サーバーにデータを明かすことなく、暗号化されたデータをサーバーが処理できる新しい種類の暗号システムを現在開発している。

ご覧のとおり、暗号技術の最先端は、現在、私たちのメールやオンライン取引の大半を保護できるほど強固だが、今後もそうであるかは完全には確かでない。未来、とりわけ量子コンピューターは、さらに強力な暗号システムをもたらすかもしれない一方、それを破る新たな手段の可能性も高める。いたちごっこは続く。

この記事は The Conversationとの協力により掲載されています。掲載は、世界経済フォーラムが見解を支持することを意味するものではありません。

Agendaの最新情報を受け取るには、 週刊ニュースレターに登録してください。

著者:Ron Steinfeldは、モナシュ大学の情報技術上級講師。

画像:コンピューター画面の前に手のシルエットが映る。REUTERS/Pawel Kopczynski。

シェア:

ライセンスと再掲載について
世界経済フォーラムの寄稿文は、クリエイティブ・コモンズ表示-非営利-改変禁止 4.0 国際ライセンスおよび同フォーラムの利用規約に従い、再掲載が可能です。