暗号学において、DES-X(またはDESX )は、総当たり攻撃の複雑さを高めることを目的とした、DES(データ暗号化標準)対称鍵ブロック暗号の変種である。複雑さを高めるために使用される技術は、鍵ホワイトニングと呼ばれる。
オリジナルのDESアルゴリズムは1976年に56ビットの鍵サイズ(2⁵⁶通りの鍵の可能性)で規定されました。しかし、大規模な政府機関、特に米国国家安全保障局(NSA)であれば、網羅的な探索を実行できる可能性があるという批判がありました。アルゴリズムを大幅に変更することなくDESの鍵サイズを増やすための一つの方法として、ロン・リベストが1984年5月にDES-Xを提案しました。
このアルゴリズムは、1980年代後半からRSA Security社のBSAFE暗号ライブラリに組み込まれている。
DES-XはDESを拡張したもので、 DESを適用する前に64ビットの鍵(K1 )を追加で平文にXOR演算し、暗号化後にさらに64ビットの鍵( K2)をXOR演算します。
![]()
これにより鍵のサイズは56 + (2 × 64) = 184ビットに増加します。
しかし、有効な鍵サイズ(セキュリティ)は 56+64−1− lb(M) = 119 − lb(M) = 約 119 ビットにしか増加しません。ここで、Mは攻撃者が取得できる選択平文/暗号文ペアの数であり、lb はバイナリ対数を表します。さらに、既知の平文 2 32.5と高度なスライド攻撃を使用すると、有効な鍵サイズは 88 ビットに低下します。
DES-X は、差分暗号解読と線形暗号解読に対する DES の強度も高めますが、その改善は総当たり攻撃の場合よりもはるかに小さいです。差分暗号解読には 2 61 個の選択平文が必要になると推定されています (DES の場合は 2 47 個)。一方、線形暗号解読には 2 60 個の既知平文が必要になります ( DES の場合は 2 43 個、独立したサブキーを持つ DES の場合は2 61 個)。 [ 1 ] ) 2 64 個の平文 (この場合、既知または選択が同じ) があれば、DES (または実際には64 ビットのブロックサイズを持つ他のブロック暗号) は、暗号のコードブック全体が利用可能になるため、完全に破られることに注意してください。
差分攻撃や線形攻撃もあるが、現在DES-Xに対する最良の攻撃は、Biryukov-Wagner [ 2 ]によって発見された既知平文スライド攻撃であり、その複雑さは既知の平文の 2 32.5 個、解析時間の 2 87.5である。さらに、この攻撃は同じデータ複雑度とオフライン時間複雑度 2 95の暗号文のみの攻撃に容易に変換できる。