暗号攻撃法

一般に,共通鍵暗号や公開鍵暗号では「秘密鍵を求める」ことが暗号解読の攻撃目標であり,またハッシュ関数では「衝突するような異なるメッセージの組を求める」ことが攻撃目標となる,

暗号攻撃法の種類や現在知られている暗号攻撃法について解説する.

暗号解読

攻撃法の種類

暗号やディジタル署名が破られたと言われる場合でも,上記のどの条件で解読されたかを見極める必要がある.現実に暗号が使われる環境で解読されたのならば,危険が現実的になり直ちに対応が必要である.しかし,現実には起こり難い条件ならば,直ちに心配する必要はない.

なお,アルゴリズム固有の脆弱性を利用せずに (効率は非常に悪くとも) 確実に攻撃を成功させることができる方法のことを「最良の攻撃方法」という.ここで,最良というのは,全てのアルゴリズムに対して攻撃方法として有効であるという意味であり,安全性の高いアルゴリズムであってもこの攻撃方法で必ず攻撃が成功するということである.このことから,安全性の上限は最良の攻撃方法を利用したときの強度で評価される.

共通鍵暗号への攻撃

共通鍵ブロック暗号の攻撃法は全ての鍵をしらみつぶしに探索する Brute-force Attack と暗号アルゴリズムを解析し,統計的特性を利用して鍵の探索範囲を限定する Short-cut Attack に分類できる.

現在,多くの共通鍵ブロック暗号に適用できる強力な解読法として以下の 3つが知られている.

公開鍵暗号への攻撃

公開鍵暗号では,攻撃は暗号の安全性のベースとなっている素因数分解問題や離散対数問題といった数学上の問題を解くことに対応している.

これらの問題の代表的な解法を示す.

ハッシュ関数への攻撃

サイドチャネル攻撃

C.Kocher らにより提案された実際に暗号が実装された装置に対する攻撃法である. 実行時の漏洩情報,すなわち,暗号処理装置外部から計測可能な情報(例えば、計算時間や電力消費量など)と,秘密鍵等の秘密情報との間の相関関係を利用して秘密情報を推定しようとする攻撃手法であり,特にスマートカード(ICカード)に対しては大きな脅威となりうることが報告されている. サイドチャネル攻撃の例として、タイミング攻撃、DPA攻撃などが知られている.

inserted by FC2 system