Variations ของ DES
1. Double DES
เข้ารหัส DES 2 รอบบน Plaintext เดียวกัน Key ต่างกัน (K1, K2) ทั้ง 2 จำเป็นตอนถอดรหัส 64-bit Plaintext → DES(K1) → 64-bit Intermediate → DES(K2) → 64-bit Ciphertext Double DES เรียบง่าย: ทำ DES ปกติ 2 ครั้ง Key K1 → Encrypt → Key K2 → Encrypt อีกครั้ง
ถอดรหัส: Ciphertext → DES⁻¹(K2) → Singly Encrypted → DES⁻¹(K1) → Plaintext
Cryptanalysis: DES ปกติต้อง 2⁵⁶ Double DES คาดว่า 2¹²⁸ แต่ไม่จริง → Meet-in-the-middle Attack: Encrypt หนึ่งด้าน Decrypt อีกด้าน Meet กลาง = ข้อเสียหลัก
2. Triple DES (3DES)
มี 2 รุ่น:
Triple DES with Two Keys (ECE Mode)
Key K1 (Process 1 และ 3) K2 (Process 2) Plaintext → Encrypt K1 → Decrypt K2 → Encrypt K1 = Encrypt-Decrypt-Encrypt (ECE)
Triple DES with Three Keys (EEE Mode)
Plaintext Block P → Encrypt K1 → Encrypt K2 → Encrypt K3 (K1,K2,K3 ต่างกันหมด) ถอดรหัส: ทำย้อนกลับ ใช้ใน PGP และ S/MIME