推奨されます, 2024

エディターズチョイス

DES(データ暗号化規格)とAES(高度暗号化規格)の違い

DES(データ暗号化規格)とAES(高度暗号化規格)はどちらも対称ブロック暗号です。 AESはDESの欠点を克服するために導入されました。 DESの鍵サイズが小さいため、このトリプルDESを克服するのは安全性が低くなりますが、遅くなりました。 したがって、後にAESが米国標準技術局によって導入されました。 DESとAESの基本的な違いは、 DESでは、平文ブロックはメインアルゴリズムが始まる前に2つに分割され、 AESではブロック全体が暗号文を得るために処理されるということです。

以下に示す比較表を使って、DESとAESの違いについてもう少し説明しましょう。

比較表

比較基準DES(データ暗号化規格)AES(高度暗号化規格)
基本DESでは、データブロックは2つに分割されます。AESでは、データブロック全体が単一の行列として処理されます。
原理DESはFeistel暗号構造に取り組んでいます。AESは、置換および置換の原則に取り組んでいます。
平文平文は64ビットです平文は128、192、または256ビットです。
キーサイズDESはAESと比べて鍵サイズが小さくなります。AESはDESと比較して鍵サイズが大きくなります。
ラウンド16ラウンド128ビットアルゴのための10ラウンド
192ビットアルゴのための12ラウンド
256ビットアルゴで14ラウンド
ラウンド名拡張順列、Xor、Sボックス、Pボックス、Xorおよびスワップ。サブバイト、Shiftrows、Mix列、Addroundkeys。
セキュリティDESには小さい鍵があり、それは安全性が低くなります。AESは比較的大きな秘密鍵を持っているため、より安全です。
速度DESは比較的遅いです。AESは速いです。

DES(データ暗号化規格)の定義

データ暗号化規格(DES)は、 1977年 に米国標準技術局によって採用された対称鍵ブロック暗号です。 DESは、プレーンテキストが2つに分割されているFeistel構造に基づいています。 DESは、入力を64ビットのプレーンテキストと56ビットのキーとして受け取り、64ビットの暗号文を生成します。

下の図では、DESを使用した平文の暗号化を見ることができます。 最初に、64ビット平文は、64ビット置換入力を得るためにビットを並べ替える初期置換を受けます。 今、この64ビット置換入力は、2つの半分、すなわち32ビット左部分と32ビット右部分に分割される。 この部分は両方とも各ラウンドが同じ機能に従う16ラウンドを経る。 16ラウンドの完了後、最後の置換が行われ、64ビットの暗号文が得られます。

各ラウンドは以下の機能を含みます。

  • 拡張順列 :ここでは、32ビット右部分が48ビット右部分を形成するように拡張される。
  • Xor :48ビットの右部分は、56ビットのキーから得られた48ビットのサブキーを持つXorで、48ビットの出力になります。
  • Sボックス :Xor stepで得られた48ビットの出力が再び32ビットに縮小されます。
  • Pボックス :ここで、Sボックスから得られた32ビットの結果が再び並べ替えられ、その結果、32ビットの並べ替え出力が得られる。

AES(Advanced Encryption Standard)の定義

Advanced Encryption Standard(AES)も対称鍵ブロック暗号です。 AESは、 米国標準技術局によって2001年に発行されました。 DESは非常に小さい暗号鍵を使用し、アルゴリズムはかなり遅いため、AESはDESを置き換えるために導入されました。

AESアルゴリズムは128ビットの平文と128ビットの秘密鍵を取り、それらが一緒になって4×4の正方行列として表される128ビットのブロックを形成します。 この4×4正方行列は初期変換を受ける。 このステップの後に10ラウンドが続きます。 そのうちの9ラウンドは以下のステージを含みます:

  • サブバイト: Sボックスを使用して、ブロック全体(マトリックス)をバイト単位で置換します。
  • 行シフト:行列の行をシフトします。
  • 列の混在:行列の列は右から左にシャッフルされます。
  • ラウンドキーを追加する:ここで、現在のブロックと拡張キーのXorが実行されます。

そして最後の10ラウンドは、サブバイト、シフト行、およびラウンドキー追加ステージのみを含み、16バイト(128ビット)の暗号文を提供します。

DESとAESの主な違い

  1. DESとAESの基本的な違いは、DES内のブロックがさらに処理される前に2つに分割されるのに対し、AESではブロック全体が暗号文を取得するために処理されることです。
  2. DESアルゴリズムは、Feistel暗号の原理に基づいて動作し、AESアルゴリズムは、置換および置換の原理に基づいて動作します。
  3. DESの鍵サイズは56ビットで、128、192、または256ビットの秘密鍵を持つAESよりも比較的小さいです。
  4. DESのラウンドには、拡張順列、Xor、Sボックス、Pボックス、Xor、およびスワップがあります。 一方、AESのラウンドには、サブバイト、シフトローフ、ミックスコラム、アドラウンドキーが含まれます。
  5. DESは、鍵サイズが小さいため、AESよりも安全性が低くなります。
  6. AESはDESよりも比較的高速です。

結論:

DESはより古いアルゴリズムであり、AESはDESよりも高速で安全な高度なアルゴリズムです。

Top