Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

ปัจจัยที่ส่งผลต่อความปลอดภัยของ DES

ปัจจัยที่ส่งผลต่อความปลอดภัยของ DES

DES เข้ารหัส Plaintext 64-bit → Ciphertext 64-bit = Permutation ของ 2⁶⁴ การจัดเรียง 16 รounds ใช้เทคนิคชุดเดียว 16 ครั้ง รอบน้อยกว่า → 脆弱ต่อ Differential Cryptanalysis

64-bit Plaintext → Initial Permutation (ไม่ขึ้นกับ Key) Inverse Permutation ปิดท้าย → Ciphertext Key Length 56 บิต (เขียน 64-bit ทุก 8th Bit = Parity Check ตัดทิ้ง)

ปัจจัยสำคัญ

1. Weak Keys (คีย์อ่อน)

วิธีสร้าง Subkey ทำให้ Initial Keys บางค่าเป็น Weak Keys Initial Key แบ่ง 2 ส่วน Shift อิสระ หากทุกบิตในแต่ละครึ่งเป็น 0 หรือ 1 ทั้งหมด → Key ทุกรอบเหมือนกัน เกิดได้หาก Key = ทั้ง 1, ทั้ง 0, หรือครึ่งหนึ่งทั้ง 1 อีกครึ่งทั้ง 0 → DES น่าปลอดภัยน้อยลง

2. Algebraic Structure (โครงสร้างทางพีชคณิต)

DES Encryption Operation อาจสร้าง Group: Encrypt ด้วย k1 แล้ว k2 = Encrypt ด้วย k3 แย่กว่า: Weak Against Meet-in-the-middle Known-plaintext Attack (2²⁸ Steps) หาก DES Closed: ∀k1,k2 ∃k3: Eₖ₂(Eₖ₁(P)) = Eₖ₃(P)

3. Key Length (ความยาวคีย์)

อาจเร่งการค้นหาด้วย Time-Space Tradeoff คำนวณ/เก็บ 2⁵⁶ ผลลัพธ์ Encrypt Plaintext Block เดียวภายใต้ทุก Key → แฮก Key ไม่รู้: ใส่ Data Blocks เข้ารหัส → ได้ Ciphertext → Lookup Key

4. Number of Rounds (จำนวนรอบ)

กำหนด 16 รอบ เพราะรอบน้อยโดนโจมตีแรง DES 3-4 รอบ → แตกง่าย DES รอบ < 16 → แตกด้วย Known-plaintext Attack ได้ดีกว่า Brute-force