量子コンピューターとセキュリティの終焉

2013年10月11日

量子コンピューティングと量子通信というコンセプトが生まれたのはわずか30年前のことです。それ以前の科学誌はこのテーマについての記事の掲載を拒否していました。当時はSF作品のように思えたからです。今では量子システムが現実のものとなり、一部では発売に至ったものもあります。量子コンピューターは、セキュリティ分野の中でも特に暗号に関して新たな疑問を提起し、それに答えるものです。

量子暗号-title

私たちは電波と電磁信号の世界に生きています。日常生活で電磁波が使われる例は、Wi-Fi、GSM、衛星テレビ、GPS、FMチューナー、スピードカメラなど、数え切れないほどあります。もちろん、メインフレームであれ、ラップトップであれ、スマートフォンであれ、コンピューターはこのエコシステムに欠かせない重要な部分です。電磁信号には可測性という非常に重要な特徴があります。信号のすべてのパラメーターを、変更することなく読み取るのはとても簡単です。まさにこれが理由で、上述の現代の技術のほぼすべてに暗号化が使用されています。暗号化によって、転送される情報が第三者に読み取られたり変更されたりするのを防いでいるのです。通常、通信中に別のチャンネルを使用することはありません。そこで暗号システムの開発者は、「すべての通信を他人に見られている可能性があるときに、どうやって秘密の暗号鍵のネゴシエーションを行うのか」という非常に複雑な問題を見事解決しました。この問題の解決策は、現代のすべてのプロテクションシステムの基盤となっていますが、量子コンピューターによってそれが破壊される可能性があります。量子暗号が次世代のセキュリティソリューションとなるのでしょうか?それでは見ていきましょう。

 

うたい文句

「量子コンピューティング」や「量子暗号」という名称は正確なものです。これらのシステムは、重ね合わせや微粒子のもつれといった量子効果に基づいています。

量子コンピューターは、日常的な作業にはあまり向いていませんが、現代の暗号アルゴリズムにおける一部の数学問題を高速で解くことができます。

一般的なコンピューターと量子コンピューターの一番大きな違いはデータの単位です。一般的なコンピューターではビットとバイトが使用され、厳密に0か1で表現されますが、量子コンピューターで使われる「量子ビット」(Qビット)は、複数の状態を同時に表すことができます。複雑な話ですね。実装はさらに複雑になりますが、長年の研究によって、これがうまくいくことがはっきりと証明されています。量子コンピューターは一般的なコンピューターと大きく異なり、「テトリス」にはほとんど使えません。しかし、確率に関する作業や最適化の作業には、はるかに高いパフォーマンスを発揮します。

量子コンピューターを使うことで劇的なスピードアップが見込める作業は非常に多くあります。たとえば物流の最適化、DNAシークエンシング、株式市場の予測、そして暗号鍵の総当たり攻撃です。重要なことですが、量子の世界のすべてのものは複雑であり、量子コンピューターが出す「答え」を読み取るには非常に多くの労力が必要です。しかし、1つ1つのタスクは何度か実行されるものの、あまり時間はかかりません。したがって、こうした実行の結果を比較することで、最終的な答え(暗号鍵)を手に入れることは可能です。

quantum-dwave-512

すべての量子が右側の白い箱の中に

詳細一般的に、SSL、HTTPS、VPNなどで現在中核になっているシステムは、秘密鍵と対称のアルゴリズムを使用する暗号データです。これは送信側と受信側で同じ(そのため対称)であり、セッションの開始時に別の非対称の暗号システムを使って秘密鍵のネゴシエーションを行います。非対称のアルゴリズムは秘密鍵のネゴシエーションのためだけに使用されます。なぜなら、これは負荷の高い作業だからです。非対称の暗号システムのセキュリティは、極めて大きな数字の素因数分解(RSAアルゴリズム)など、数学問題の解決が困難であることを根拠としています。こうした大きな数字は、単なるかけ算や割り算をするだけでも相当な時間がかかります。複数の数字を順番に処理していくという場合は言うまでもありません。そのため、暗号システムのセットアップでは、スパイが接続を盗聴できるとしても、秘密鍵を計算して接続を復号するにはあまりにも長い時間がかかる(鍵の長さによって、数十年から数百万年)ことを前提としています。これに量子コンピューターが利用される可能性があることがわかっています。量子コンピューターは「ショアのアルゴリズム」を使用することで、数学問題の解決に相当する最終段階に、とてつもない速さで到達します。一般的なコンピューターがいくつかの数字をかけ算するのと同じくらいの速さです。このタスクを複数回実行する必要があることや、従来型のコンピューターを使って結果を読み取るのが困難であることなど、いくつか課題もありますが、量子コンピューターは巨大な数字の解を非常に速く見つけられる可能性があります。つまり、攻撃者が秘密鍵の計算や本文の復号に悪用する恐れがあるのです。

ちなみに、AESなどの優れた対称アルゴリズムには、こうした総当たり攻撃の劇的なスピードアップが可能になる弱点はありません。現在の試算では、量子コンピューターでの256ビットAESの総当たり攻撃は、従来型コンピューターでの128ビットAESの総当たり攻撃と同等であり、セキュリティレベルが非常に高いとされています。

 

問題点

量子コンピューターは、クラスメイトのFacebookセッションを覗き見したいという10代のハッカーが、当たり前のように持っているものではありません。これにはもっともな理由があります。本格的な量子コンピューターの開発にはエンジニアリングの課題が多く、実現不可能であると考える専門家もいます。主な課題は量子ビットのもつれを維持することです。というのも、各量子システムは従来の状態へと崩壊する傾向があり、貴重な不確定のプロパティが失われるからです。ここで、辛抱強い「シュレーディンガーの猫」についてお話ししておかなければなりません。シュレーディンガーの猫は、最終的には死んだ状態と生きた状態を同時に維持することができなくなりますが、量子コンピューターは、計算を実行して結果を測定するまでの間、この奇跡的な状態を維持しなければなりません。最近の試作機でこの状態を維持できるのは数ミリ秒間、場合によっては数秒間です。この作業は量子ビットが大きくなるにつれてどんどん難しくなっていきます。暗号システムを破るには(アルゴリズムと鍵の長さにもよりますが)500~2,000量子ビットが必要ですが、既存の量子コンピューターが動作するのは最大でも14量子ビットです。そのため、現在の量子コンピューターはSSL証明書を破るのには使えませんが、この状況は5年後には変わるかもしれません。

quantum-sheldon

ドラマ『ビッグバン★セオリー/ギークなボクらの恋愛法則』で、「シュレーディンガーの猫」をはじめ科学一般について解説するペニー(Penny)とシェルドン(Sheldon)

量子の目標への歩み

そんな中、カナダのD-Waveという企業が、大胆にも512Qビットの量子コンピューターを開発したと主張しています。しかも、これらのデバイスはすでに販売されているのです。D-Waveのコンピューターは、量子焼きなまし法を利用しており、量子コンピューターの完全なプロパティを実証できないため、「本物」ではないと多くの専門家が指摘しています。とはいえ、大金がからむことに異論を差し挟むのは難しいもの。D-Waveには、このデバイスに喜んで1,000万ドル出すという顧客がいます。いくつか例を挙げると、軍事企業のLockheed Martinや検索大手のGoogleです。疑問視する声もありますが、D-Waveのコンピューターは実際に量子を用いた方法によって、最適化に関する一部の作業を解決し、顧客に真の価値をもたらしています。Googleは機械学習の実験を計画しており、Lockheed MartinはF-35戦闘機で使われるソフトウェアのソースコードの間違いを量子コンピューターによって発見できると考えています。D-Waveの科学者は、同社のコンピューターでは解決できない「量子」タスク(前述の素因数分解など)があることを認めています。そのため、量子コンピューターが現代の暗号アルゴリズムを脅かすことはありませんが、別の脅威があります。大企業や政府が実用的な真の量子コンピューターを追い求めれば、量子技術の開発への投資が増え、他の暗号化対応コンピューターの開発がスピードアップすることになります。

quantum-dwave

D-Wave Two — 量子コンピューターの焼きなまし

量子暗号

非常に興味深いことに、量子物理学がもたらす脅威は、量子物理学によって解決されることになるかもしれません。理論上、単一の微粒子伝送に基づいた接続を盗聴することは不可能です。量子物理学の法則では、微粒子の1つのパラメーターを測定しようとすると、もう1つのパラメーターが変わってしまうとされているからです。観察者効果として知られるこの現象(不確定性原理と混同されることが多い)によって、盗聴の可能性という「従来の」通信の主な問題が解決されるでしょう。通信を傍受しようとするたびに、転送されるメッセージが変わるのです。

通信を傍受しようとするたびに、転送されるメッセージが変更されます。

量子通信における重大な干渉とは、第三者が通信を不正に監視することを意味します。当然ながら、情報の漏えいが起きたことを知るだけでなく、漏えい自体を防ぎたいと思うでしょう。このような理由から、現代の量子暗号システムは「量子」通信チャネルだけを使用してセッション暗号鍵のネゴシエーションを行い、この鍵が従来のチャネルで転送される情報の暗号化に使用されます。したがって、傍受された可能性のある鍵は拒否され、変更されずに送られて来るまで新しい鍵がネゴシエーションされます。この量子鍵配送(QKD)システムは、近い将来量子攻撃の標的になると見られる非対称暗号アルゴリズムと、まったく同じ役割で使用されていると私たちは考えています。

quantum-cerberis

販売されている量子鍵配送システムCerberis

量子コンピューターとは異なり、量子暗号システムはかなり前から商用化されています。最初の科学的研究が発表されたのは1980年ごろですが、実用的な実装がすぐに登場しました。最初の実験室試験は1989年に実施され、20世紀末には30マイル(約48km)の光ファイバーで暗号鍵を転送できるシステムが発売されています。id QuantiqueやMagiQ Technologiesといった企業が販売するQKDシステムはすぐに使えるもので、ネットワーク技術者が設置できるほどシンプルなものです。QKDは政府や軍事機関だけでなく、多国籍企業や銀行、さらにはFIFAまでが利用しています。

完全なるプロテクション?

理論上、量子通信システムを密かに盗聴することは不可能とされていますが、現在の実装にはいくつか弱点があることが実証されています。1つめの弱点は、干渉を避けて長距離転送を可能にするために、複数の光子を転送することです。もちろん、開発者はそれを最小限に抑えようとしていますが、1つの光子を傍受すれば、理論上は他の光子に触れることなくその状態を解析することができます。2つめの弱点は、現行のシステムには距離の制限があり(約100マイル≒160km)、用途がかなり限られてしまうことです。地理的に離れたところにある支社は、通信のために何らかの「リピーター」を使わざるを得なくなりますが、これは明らかな中間者攻撃のポイントになります。

弱点のない量子暗号システムというのは、実際にはあり得ない理想の状態でしか実現しません。そのため、従来型のプロテクションを捨て去るのは時期尚早です。

3つめの弱点です。物理学界のハッカーが、強力なレーザーで光検知器の「目をくらませる」ことで検知器の読み取りを操作できることを発見しました。これにより、QKDシステムであらゆる種類のデータ操作が可能になります。これらはすべて実装のぜい弱性です。しかし、このことがはっきりと示しているのは、量子システムは決して特効薬ではなく、転送データの保護は、数学ではなく物理の領域において実装されたとしても、今後数十年にわたって問題であり続けるということです。さらにもう1つあります。既存の技術とは違い、量子デバイスはこの先もしばらくニッチな存在でありつづけ、現在Wi-Fiやスマートフォンで起きているように、オフィスやマンションで多くの量子デバイスを目にすることはないでしょう。だからこそ、数学、つまり従来型の暗号システムを捨て去るのは時期尚早です。今の暗号システムはどんな物理通信チャネルにも対応でき、数十年後も幅広く使用されているはずです。しかし、量子コンピューティングにもっと耐性のある、新しいアルゴリズムを採用するニーズは存在します。