情報通信研究機構(NICT)サイバーセキュリティ研究所セキュリティ基盤研究室は、量子コンピュータでも解読が困難な、格子理論に基づく新たな公開鍵暗号「LOTUS(ロータス)」を開発した。
情報通信研究機構(NICT)サイバーセキュリティ研究所セキュリティ基盤研究室は2018年1月、量子コンピュータでも解読が困難な、格子理論に基づく新たな公開鍵暗号「LOTUS(Learning with errors based encryption with chosen ciphertext security for post quantum era:ロータス)」を開発したと発表した。汎用性も高く、現行の公開鍵暗号と置き換えることが可能だという。
重要な情報を暗号化する技術として現在は、RSA暗号や楕円曲線暗号といった公開鍵暗号が広く用いられている。ところが、演算性能が高い量子コンピュータを用いると、これらの暗号も解読される可能性が出てきたという。
そこでNICTは、量子コンピュータでも解読が難しい耐量子性と、高い汎用性を併せ持つ格子暗号方式の開発に取り組んできた。特に、格子暗号の中でも、解読が困難といわれているLWE(Learning With Errors)問題に基づく方式を選んだ。さらに、暗号文を復号する時にその構造をチェックする機能を追加することで、汎用性を持たせることにした。
格子暗号は、全てのデータを行列やベクトルで表現する。暗号化処理はまず平文ベクトルをスクランブル。そのあとで復元に必要な付加情報を組み合わせ、暗号文ベクトルとする。復号時には、秘密鍵と付加情報を用いて暗号文のスクランブル解除に必要な情報を復元し、平文を計算するという。
実社会で暗号方式を運用する場合に、メディアの破損や悪意のある攻撃によって、情報が復元できなくなる可能性もある。破損した暗号文を復号した結果から、他の機密情報が読み取られる可能性もあるという。
LOTUSは、これら暗号文破壊の対策として、暗号化の際に暗号文とその枠の形を示す情報をまとめてパックし、復号する前に暗号文の破損が生じていないかどうかをチェックする機構を付け加えた。「藤崎・岡本変換」と呼ばれるこのチェック機構を組み込んだことで暗号方式の汎用性が高まり、さまざまなシステムに組み込むことが可能になったという。
今回開発した暗号技術は、米国国立標準技術研究所(NIST:National Institute of Standards and Technology)が主催する「量子コンピュータ時代に向けた暗号技術の標準化プロジェクト」の候補に選ばれた69件のうちの1つだという。
Copyright © ITmedia, Inc. All Rights Reserved.