web-dev-qa-db-ja.com

AESがDESよりも安全なのはなぜですか?

私は暗号アルゴリズムを学び始めており、上記のアルゴリズムがどのように機能するかを理解しています。 AESの鍵長が長いのでしょうか? AES暗号化のどのステップにより、DESよりも脆弱性が低くなりますか?

27
unj2

DESは56ビットの有効キー長で設計されており、 徹底的な検索 に対して脆弱です。また、差分および線形暗号解読に対するいくつかの弱点があります。これらは、それぞれ2を使用してキーを回復することができます。47 選択された平文、または243 既知の平文。 既知の平文は暗号化されたブロック(DESの場合は8バイトのブロック)で、攻撃者は対応する復号化されたブロックを知っています。 選択された平文は、攻撃者が自分で復号化されたブロックを選択することを可能にする一種の既知の平文です。実際の攻撃条件では、このような大量の既知または選択された平文を実際に取得することはできないため、差分および線形暗号解読はDESの実際のセキュリティに実際には影響しません。最も弱い点は、短いキーです。それでも、学問的な観点の観点から、これらの攻撃の存在は、徹底的なキー検索(2を使用する)よりも複雑さが少ない55 呼び出しの平均)、セキュリティの欠如として認識されます。

補足として、差分分析はDES=設計者に知られており、DESはそれに対して強化されました(したがって、「247)。今日の標準では、徹底的な検索よりも攻撃の複雑さを要求することは今では学術的な伝統となっているため、「十分ではない」と見なします。それでも、DESデザイナーは本当に良かった。1992年に松井が発見した線形暗号解読については知らなかった。線形暗号解読はDES =差分暗号解読よりも、実際に適用するのは途方もなく困難です(243 既知の平文ブロック、それは64テラバイトです...)。

したがって、DES=の構造上の弱点は、キーサイズと短いブロックサイズです。withn-bit blocks、一部の暗号化モードは2のときに問題が発生し始めますn/ 2 ブロックは同じキーで暗号化されます。 64ビットのDESブロックの場合、これは32ギガバイト相当のデータを暗号化した後に発生しますが、大きな数値ではありませんが、昨日はそれより30倍大きいハードディスクを購入しました)。

DESのバリアントは3DESと呼ばれます。つまり、多かれ少なかれ3つのDES行のインスタンスです。これにより、キーサイズの問題が解決されます。3DESキーは168ビット(公称192ビット、そのうち24ビットはパリティチェックとして機能することになっていますが、実際には完全に無視されます)。 )学問的な観点から、コスト2の攻撃があります。112 3DESでは、これも実行できません。差分および線形暗号解読は3DESによって打ち負かされます(それらの複雑さはラウンド数とともにかなり上昇し、3DESは48ラウンドを表しますが、プレーンDESでは16を表します)。

それでも、3DESにはDESのブロックサイズの問題があります。また、それは非常に遅いです(DESはソフトウェアではなくハードウェア実装用であり、3DESはDESよりも3倍遅い)。

したがって、AESは次の要件で定義されました。

  • 128ビットブロック(CBCの問題を解決)
  • サイズ128、192、および256ビットのキーを受け入れます(128ビットは、徹底的なキー検索に抵抗するのに十分です。他の2つのサイズは、主に厳格な米国の軍事規制に準拠する方法です)
  • 徹底的なキー検索よりも悪い学問的な弱点はありません
  • 3DESと同じ速さである必要があります(AESはソフトウェアの3DESよりもはるかに高速であることがわかりました。通常は5〜10倍高速です)

微分および線形暗号解読に対するAESの抵抗は、より優れた「雪崩効果」(ある時点でのビットフリップが完全な内部状態に急速に伝播する)と特別に細工されたより大きな「Sボックス」(aS-boxは、アルゴリズム内で使用される小さなルックアップテーブルであり、非線形性を追加する簡単な方法です; DESでは、S-boxは6ビットの入力と4-ビット出力; AESでは、Sボックスには8ビット入力と8ビット出力があります)。 AESの設計は、DESに関する25年間の洞察と研究から恩恵を受けました。また、AESは世界中の多くの研究チームからの15人の候補者とのオープンコンテストを通じて選ばれ、そのプロセスに割り当てられた脳リソースの総量は途方もないものでした。元のDESデザイナーは天才でしたが、AESのための暗号技術者の総努力ははるかに大きいと言えるでしょう。

哲学的な観点から、暗号プリミティブを安全にするのは、その設計に費やされた労力の量であると言えるでしょう。少なくとも、その努力がセキュリティの認識を生み出すものです:暗号システムを使用するとき、それを安全にしたいが、同時に確実で安心です(夜寝たい)。公共の設計および分析プロセスは、その信頼を構築する上で非常に役立ちます。 NIST(そのようなものの標準化のための米国の組織)はその教訓をよく学び、再び SHA- のオープンな競争を選択することを決定しました。

49
Thomas Pornin