ネットバンキングなどの高いセキュリティが求められるサービスでは、第三者による情報の閲覧を防ぐ秘匿機能と、情報の変更の有無を検知する改ざん検知機能が不可欠だ。しかし、多くの従来方式では、復号処理の過程で生成される平文相当のデータが出力されると、攻撃者が改ざん検知をくぐり抜ける暗号文を偽造できるという問題があった。これを受け、NTT<9432>と三菱電機<6503>は、国立大学法人福井大学と連携し、暗号化データの改ざんを検知できる新たな暗号方式を開発した。
今回開発した暗号方式は、従来、個別に提供されていた情報の秘匿化と改ざん検知の機能を安全に組み合わせ上で単一の機能として提供するもの。秘匿機能と改ざん検知機能を同時に実現する改ざん検知暗号の一方式だ。この方式では、復号処理の中間データを出力しても暗号文を偽造される恐れはない。この性質により、復号したデータを溜め込まずに逐次的に出力できるので、記憶領域が少ないデバイスでも大きなデータを取り扱うことが可能となる。
また、既存の多くの改ざん検知暗号、例えばAES-GCMを安全に利用するためには、ナンスと呼ばれる毎回必ず異なる値を入力する必要があるが、現実の利用においてはデータの再送やシステム構築の検証時に同一のナンスが使われ、安全でない利用となる場合があった。
この方式では、同じ値をナンスとして利用してもほとんどの利用場面では問題が起きない設計となっている。このため、万が一動作検証のために同じナンスの値が使われるよう状態のシステムをリリースしたとしてもシステム全体の安全性が脅かされる危険はきわめて低くなるという。さらに、AES-GCMでは一度に暗号化できる平文の長さは64GBが上限だが、この方式では事実上無制限に長い平文に対しても安全に利用可能だ。
この方式はスマートフォンなどの上でもAES-GCMの速度よりも高速に動作する。またICカードやM2Mで利用される組込みデバイスのようなメモリが限られた環境でも十分な性能を発揮するという。
今後は米国標準技術院(NIST)が支援する暗号評価コンテスト「CAESARコンテスト」に応募する予定。このコンテストで高い評価を受け、推薦技術となることを目指す。(編集担当:慶尾六郎)