27

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

4

1 に答える 1

49

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

ちなみに、差分解析は DES の設計者に知られており、DES はそれに対して強化されていました (したがって、2 47の「良いスコア」)。今日の基準では、「十分ではない」と見なすことになります。これは、網羅的な検索よりも攻撃の複雑さを要求することが学術的な伝統になっているためです。それでも、DES の設計者は本当に優秀でした。彼らは 1992 年に松井によって発見された線形暗号解読について知らなかったし、線形暗号解読は差分暗号解読よりも DES でより効果的であるが、実際に適用するのは非常に困難である (2 43の既知の平文ブロック、それは 64 テラバイト... )。

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

DES の変種は 3DES と呼ばれます。これは、多かれ少なかれ、連続した 3 つの DES インスタンスです。これにより、キー サイズの問題が解決されます。3DES キーは 168 ビット (通常は 192 ビットで、そのうちの 24 ビットはパリティ チェックとして機能するはずですが、実際には完全に無視されます) で構成され、168 ビット キーの徹底的な検索は人間の技術では到底及ばない。(再び) 学術的な観点から、コスト 2 112の攻撃が 3DES にあり、これも実現不可能です。差分暗号解読と線形暗号解読は 3DES に打ち負かされます (その複雑さはラウンド数とともにかなり上昇し、プレーン DES の 16 ラウンドに対して 3DES は 48 ラウンドを表します)。

それでも、3DES は DES のブロック サイズの問題に悩まされています。また、非常に遅いです (DES はソフトウェアではなくハードウェアの実装を対象としており、3DES は DES よりも 3 倍も遅くなります)。

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

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

差分および線形暗号解読に対する AES の耐性は、より優れた「雪崩効果」 (ある時点でのビット反転が完全な内部状態に急速に伝播する) と、特別に作成されたより大きな「S ボックス」 ( S ボックスアルゴリズム内で使用される小さなルックアップ テーブルであり、非線形性を追加する簡単な方法です。DES では、S ボックスに 6 ビット入力と 4 ビット出力があります。AES では、S ボックスには 8 ビット入力と 8 ビット出力があります)。AES の設計は、DES に関する 25 年間の洞察と研究から恩恵を受けました。また、AES は、世界中の多くの研究チームから 15 の候補者による公募によって選ばれましたが、そのプロセスに割り当てられた脳リソースの総量は膨大でした。元の DES 設計者は天才でしたが、AES に対する暗号作成者の総努力ははるかに大きかったと言えます。

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

于 2010-10-15T01:00:32.017 に答える