証明可能安全性を持つ暗号

公開鍵暗号において、証明可能安全性(しょうめいかのうあんぜんせい、英語: provable security)とは、暗号の安全性を形式的に定義し、数学的証明の正当性によって、(定義の範囲内で)安全性の有無を判断できるものである。

安全性の証明がないことは、必ずしも、安全でないことを意味するわけではないが、より確固たる暗号を採用するために、安全性を証明することが求められている。従来、経験則によって安全性の主張を行っていたものを排除できるようになった。

概要 編集

通常、安全性の形式定義は "攻撃者モデル" という形で攻撃条件と、ゴールを形式的に表現することでなされ(幾らかの仮定の下で)、暗号を解読する問題をよく研究されて誰もが困難と信じる問題(安全性の根拠となる問題)に帰着できることの証明を与えることでなされる。根拠となる問題は、公開鍵暗号の安全性証明では、素因数分解問題や離散対数問題などがよく使われる。

証明の際には、ランダムオラクルモデル(ROM)などの現実には true とは言えないモデルを仮定することもあるし、困難な問題と言っても真に困難であるかの証明は無いことから、安全性証明とは何を証明しているのか注意すべきである。それでも、経験的な安全性とは質の異なる安全性を提供できる点に大きな意味があると考えられている。

ブロック暗号における証明可能安全性 編集

ブロック暗号において、証明可能安全性(しょうめいかのうあんぜんせい、provable security)とは、ある種の攻撃法に対する暗号の安全性を数学的証明によって保障する手法である。

MISTY1差分解読法及び線形解読法に対して証明可能安全性を有するように設計された。

ただし、この証明可能安全性はほかの攻撃法に対する安全性を保証するものではない。 SNAKE暗号は差分解読法及び線形解読法に対して証明可能安全性を有するように設計されたが、補間攻撃法によって全数探索より少ない計算量で解読可能なことが知られている。

脚注 編集

参考文献 編集

関連項目 編集