情報・通信

軽量共通鍵暗号の新解析手法を開発 NTT

【2016年12月07日】

 NTTはドイツのルール大学ボッホム校及び神戸大学との共同研究により、IoT時代に必要とされる軽量共通鍵暗号の安全性評価に大きく貢献する、共通鍵暗号に対する新たな解析手法を開発したと発表した。
 これまでの大多数の解析手法による安全性評価では、攻撃者が選んだ平文を暗号化してもらい出力された暗号文をテラバイト単位で用意するという、攻撃者にとって非現実的な環境が必要とされていた。今回の解析手法による安全性評価では、いくつかの(軽量)共通鍵暗号に対し、平文が繰り返しを含む場合や、同じ平文が複数回暗号化される場合において、1キロバイト未満の暗号文だけから平文の一部が導出されてしまうことが確認できた。今回開発した解析手法は、今後新規に軽量共通鍵暗号を設計する際の安全性評価に大きく貢献するもの。また、他の既存の共通鍵暗号に対する安全性評価の見直しも必要になると考えられる。この研究結果は、国際暗号学会主催の暗号関連のトップ会議「Asiacrypt 2016」(2016年12月4日からベトナムのハノイで開催)に採録され、優秀論文Top3に位置付けられる「Journal of Cryptology招待」に選ばれた。
 暗号技術は、攻撃者が無限の計算能力をもったとしても安全である「情報理論的に安全」な方式と、攻撃者が、例えば地球上のコンピュータ全てを10年間利用したとしても解読できないといったように、一定の計算能力に制限された条件で安全である「計算量的に安全」な方式の2種類に分類できる。情報理論的に安全な方式はコンピュータの進歩に関わらず安全であるという利点があるものの、利用に当たっては秘密に保持すべき「鍵」と呼ばれるデータが、送信する平文と同じかそれ以上の長さが必要であるという問題があり、軍事や外交など究極の安全性が求められる場合を除き実用的ではない。一方、計算量的に安全な方式は、鍵を128ビット程度に押えることができるという利点がある一方、安全だと証明された方式はない。
 計算量的に安全とされる暗号方式は、数学的に困難な問題や別の計算量的に安全とされる方式が本当に安全だという前提のもとに安全だと証明される縮約安全性を持つ方式と、暗号方式それ自身が安全だと期待される暗号プリミティブと呼ばれる方式の2種類に分類される。縮約安全性を持つ方式は、仮定が成立し証明が誤っていない限り安全だ。一方、暗号プリミティブは、方式を公開し、長年に亘り多数の暗号研究者の多数の解読を試みる公開の営みによっても解読されないということにより安全性の信頼度を増していく。NTTが三菱電機と共同開発した共通鍵暗号「Camellia」はこの暗号プリミティブに分類される方式であり15年以上に亘り誰も解読に成功しておらず安全性に対する信頼性が高い方式といえる。
 大多数の暗号プリミティブは、実装効率化のため繰り返し構造をとっており、その繰り返し回数のことを段数と呼ぶ。たとえば、128ビット鍵の「Camellia」の段数は18段であり、256ビット鍵のAESの段数は14段。通常、段数を減ずれば減ずるほど暗号強度は低下する。暗号プリミティブに対する解読の試みは、多数の既知の解析手法に対して行なわれる。既知のそれぞれの解析手法に対し解読可能かどうかの試みは、段数をどこまで減じて解読可能かどうかを調べることにより行なわれるという。
 計算量的に安全な方式に対し鍵の全数探索攻撃は必ず成立する攻撃であることから、鍵の全数探索より少ない計算量で未知の平文や鍵が導出されれば学術的には「解読成功」となる。さらに、既知の解析手法に対し安全な方式に対しては、未知の方式を考案し、解読を試みる。このような差分解読法やブーメラン攻撃など数々の解析手法に対し、解読されない方式が安全であろう方式として信頼を勝ち得るものとしている。

情報・通信一覧へ  トップページへ