Linear Cryptanalysis
เป็น Known-plaintext Attack ที่ศึกษาความสัมพันธ์เชิงเส้นโอกาส (Linear Approximations) ระหว่าง Parity Bits ของ Plaintext, Ciphertext และ Secret Key โจมตีหา Linear Expression ที่ประมาณ Non-linear Function ด้วยความน่าจะเป็น ≠ 1/2 เมื่อพบ Approximation ที่ดี (เชื่อมโยง Plaintext และ Ciphertext) จะได้ข้อมูลเกี่ยวกับ Secret Key
สมการประมาณ: Pᵢ ⊕ ... ⊕ Pⱼ ⊕ Cₖ ⊕ ... ⊕ Cₗ = Kₘ ⊕ ... ⊕ Kₙ โดยมี Bias ε = |p - 1/2| วัดคุณภาพ
Differential Cryptanalysis
ศึกษาว่าความแตกต่างของ Input ส่งผลต่อความแตกต่างของ Output อย่างไร ใช้กับ Block Ciphers, Stream Ciphers, Hash Functions ติดตาม Path ของความแตกต่างที่น่าจะเป็นสูงผ่านรอบการเข้ารหัส (Differential Characteristic) เลือก Input Difference อย่างระมัดระวัง วิเคราะห์โครงสร้างอัลกอริทึม
ตารางเปรียบเทียบ
| Linear Cryptanalysis | Differential Cryptanalysis |
|---|---|
| Known-plaintext attack ศึกษา Linear Approximations ระหว่าง Parity bits ของ Plaintext, Ciphertext, Key | ศึกษาความแตกต่าง Input ส่งผลต่อ Output ใช้กับ Block Ciphers, Hash Functions |
| เป้าหมาย: หาความสัมพันธ์เชิงเส้นระหว่างบิตของ Plaintext, Ciphertext, Key | เปรียบเทียบการเปลี่ยนแปลง Plaintext ที่เลือก และ Output ที่ได้ เพื่อหา Key |
| ถอดรหัสแต่ละ Cipher ด้วย Subkeys สำหรับ 1 รอบ ศึกษา Intermediate Ciphertext เปรียบเทียบผลสุ่ม | ศึกษาการเปลี่ยนแปลง Intermediate Ciphertext ระหว่างหลายรอบ สามารถรวมโจมตีได้ (Differential-linear) |