ブーメラン攻撃

ブーメラン攻撃

暗号学において、ブーメラン攻撃は、差分暗号解読法に基づくブロック暗号解読手法です。この攻撃は1999年にデイビッド・ワグナーによって公開され、 COCONUT98暗号の解読に使用されました。

ブーメラン攻撃により、これまで差分暗号解析では安全だと考えられていた多くの暗号に対して新たな攻撃手段が出現しました。

ブーメラン攻撃の改良版として、増幅ブーメラン攻撃長方形攻撃が公開されています。

マークル・ダムゴール構成はブロック暗号と類似しているため、この攻撃はMD5などの特定のハッシュ関数にも適用できる可能性がある。[ 1 ]

攻撃

ブーメラン攻撃は差分暗号解読法に基づいています。差分暗号解読法では、攻撃者は暗号への入力(平文)の差異が出力(暗号文)の差異に及ぼす影響を悪用します。暗号全体、またはほぼ全体をカバーする、高い確率の「差分」(つまり、出力の差異を生み出す可能性のある入力の差異)が必要です。ブーメラン攻撃では、暗号の一部のみをカバーする差分を使用することができます。

この攻撃は、暗号の途中の時点でいわゆる「カルテット」構造を生成しようと試みる。この目的のために、暗号の暗号化動作Eを2つの連続する段階E 0E 1に分割し、E(M) = E 1 ( E 0 (M) ) とするとする(ここでMは平文メッセージ)。この2つの段階について、例えば以下の2つの差分があるとする。

ΔΔ{\displaystyle \Delta \to \Delta ^{*}}

E 0の場合、

{\displaystyle \nabla \to \nabla ^{*}}E 1 −1 ( E 1の復号化アクション)の場合。

基本的な攻撃は次のように進行します。

  • ランダムな平文を選択して計算します。P{\displaystyle P}PPΔ{\displaystyle P'=P\oplus \Delta }
  • およびの暗号化を要求して取得し、P{\displaystyle P}P{\displaystyle P'}CEP{\displaystyle C=E(P)}CEP{\displaystyle C'=E(P')}
  • 計算してDC{\displaystyle D=C\oplus \nabla }DC{\displaystyle D'=C'\oplus \nabla }
  • およびの復号を要求して、およびD{\displaystyle D}D{\displaystyle D'}質問E1D{\displaystyle Q=E^{-1}(D)}質問E1D{\displaystyle Q'=E^{-1}(D')}
  • と を比較します。微分が成り立つ場合、。質問{\displaystyle Q}質問{\displaystyle Q'}質問質問Δ{\displaystyle Q\oplus Q'=\Delta }

特定の暗号への応用

3GPPで使用されているブロック暗号であるKASUMIに対する攻撃の一つに、関連鍵矩形攻撃があります。この攻撃は、全数探索よりも速く暗号の8ラウンドすべてを解読します(Biham et al., 2005)。この攻撃には、4つの関連鍵のいずれかで暗号化された2 54.6個の選択平文が必要であり、その計算時間はKASUMI暗号化の2 76.1回分に相当します。

参考文献

  1. ^ Joux, Antoine; Peyrin, Thomas (2007). 「ハッシュ関数と(増幅された)ブーメラン攻撃」. Menezes, Alfred (編). Advances in Cryptology - CRYPTO 2007 . Lecture Notes in Computer Science. Vol. 4622. ベルリン、ハイデルベルク: Springer. pp.  244– 263. doi : 10.1007/978-3-540-74143-5_14 . ISBN 978-3-540-74143-5