現在広く使われているRSAや楕円曲線暗号などの暗号技術の地位が脅かされている。量子コンピュータが登場したためだ。量子コンピュータを使えば、RSAや楕円曲線暗号は短時間で解読されるという。そこで、量子コンピュータでも解読が困難な暗号技術の開発が各国で進められている。その一つが、情報通信研究機構(NICT)が開発した「LOTUS」(ロータス)だ。

 LOTUSは、どんな暗号なのか。RSAや楕円曲線暗号が量子コンピュータで短時間で解読できるのに、どうしてLOTUSは短時間で解読できないのか。できるだけわかりやすく解説しよう。

コンピュータの性能アップで解読時間が短縮する

 インターネットを安全に使えるように、通信内容を暗号化したり、認証を実行したりするSSL/TLSという仕組みがある。Webブラウザーのアドレス欄に「https」から始まるURLを入力するだけで使えるので、意識せずに使っている人も多いだろう。

 このSSLが使う暗号技術が、RSAや楕円曲線暗号だ。こうした技術は、いずれも「簡単に解きにくい数学の問題」を利用している。その解きにくさがすなわち、暗号の解読しにくさになっている。

 例えばRSAは、「異なる素数PとQを掛け合わせたNから、PとQを求める」という問題(素因数分解問題)を利用している。素数とは、1とその数字以外で割り切れない、1より大きな整数で、2、3、5、7、11、…と続く。もしNが「21」のように小さければ、PとQは「3」と「7」だとすぐにわかる。しかし桁数が増えると、簡単にはわからない。例えばNが「115274258147」なら、PとQは「207197」と「556351」である。桁数の多い素因数分解問題を解くのには時間がかかる。これがRSAの安全性を示す。