このページをはてなブックマークに追加このページを含むはてなブックマーク このページをlivedoor クリップに追加このページを含むlivedoor クリップ

  • 追加された行はこの色です。
  • 削除された行はこの色です。
*目次 [#t3a0db01]

#contents


*敵のモデル [#t1bbd465]

 敵は何らかの方法で(平文,暗号文)の組(mSUB{1};,cSUB{1};),…,(mSUB{q};,cSUB{q};)を入手したとします。この情報をもとに、鍵Kを求める攻撃を考えます。

 暗号攻撃にはあらゆるアプローチがあります。まずブルートフォースタック、サイドチャネルアタック、ショートカット方式に分類できます。


*ブルートフォースアタック [#k35fdc0a]

**ブルートフォースアタック(全数探索攻撃) [#dea3d4f2]

 これは考えられる鍵をすべて総当り式に調べていくという方法です。このアタックはすべての暗号において用いることができます。これはアタックの方法の中でも一番時間がかかるもので、そのため通常このアタックで解読されてしまう可能性のあるものは暗号として使えません。

**誕生日攻撃(バースデーアタック)=暗号文一致攻撃 [#yd40053a]

 バースデーパラドックスと呼ばれる「ランダムに23人を集めると誕生日が同じ人間が2人以上いる確率が高い」という理論に基づいている攻撃方法です。一般化すると、Nビットの出力がある場合は、2SUP{N/2};個程度の出力を集めると、その中に同じデータが存在する可能性が高いという確率性をもとにして解析を進めます。

**辞書攻撃(ディクショナリーアタック) [#h09e14cb]

 事前に、できる限り平文と暗号文のペアを管理しておいて、解析対象の文章と一致するものを探し出す方法です。


*サイドチャネルアタック [#z77f8b3a]

 実装するハードウェアの特性を狙う方法です。

**SPA攻撃(Simple Power Analysis attack:単純電力解析攻撃) [#v2d63953]

**DPA攻撃(Differential Power Analysis attack:電力差分解析) [#qaec869c]

 SPA攻撃とDPA攻撃は、計算中に消費電力が増えることに注目したアタックです。

**タイミング攻撃 [#i6cd1e1d]

 計算している時間に注目したアタックです。

**キャッシュ攻撃 [#pf36059c]

 自動的に鍵が変化していく暗号に対して、キャッシュメモリ内にデータにヒットしたかどうかで計算時間が変化することに注目したアタックです。

**DFA攻撃(Differential Fault Analysis attack) [#j068875b]

 外部から強力な光(レーザー光)などを照射することにより、意図的にエラーを発生させて、それをもとに解読の手がかりを得るアタックです。


*ショートカット方式 [#tbe812f0]

 数学的に解を求める方式です。

**暗号文攻撃 [#db778b57]

 敵が知っているのは暗号文のみで、その暗号文からそれに対応する平文あるい
は鍵を解読しようとする方法です。

**既知平文攻撃 [#v8ab5669]

 敵に平文と暗号文のペアである(mSUB{1};,cSUB{1};)、…、(mSUB{q};,cSUB{q};)がランダムに与えられ、そこから鍵Kを解読する方法です。

#img(http://akademeia.info/main/image8/attacker1.jpg)
#img(,clear)

**選択平文攻撃 [#j33ecdef]

 敵は平文mSUB{1};,…,mSUB{q};を自由に選び、それに対応する暗号文を入手できるときに、鍵Kを解読する方法です。

#img(http://akademeia.info/main/image8/attacker2.jpg)
#img(,clear)

**選択暗号文攻撃 [#d439f363]

 敵は選択平文攻撃に加えて、暗号文cSUB{1};,…,cSUB{q};を自由に選び、それに対応する平
文を入手することができます。そういった状況で鍵Kを解読する方法です。

#img(http://akademeia.info/main/image8/attacker3.jpg)
#img(,clear)

 例として、すべてが1や0の暗号文を想定して、それを復号するとどうなるのかを調べることができるので、敵の解読能力はとても高いといえる。

 ショートカット方式の場合は下の解読法のほうが敵に与えられる情報量が多くなります。つまり、Kを解読できる可能性も高くなるわけです。

 ちなみに、暗号がある程度わかっているひとのために一応述べておきます。本当は適応的かどうかも考慮しなければなりませんが、ここではとりあえずそれは考えずに上記のことだけを理解しておいてください。