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

IDEA ในความปลอดภัยข้อมูลคืออะไร?

IDEA (International Data Encryption Algorithm)

บล็อกไซเฟอร์แบบสมมาตร พัฒนาโดย James Massey และ Xuejia Lai (1991) บล็อก 64 บิต กุญแจ 128 บิต

คุณสมบัติเด่น

  • ออกแบบทนต่อ Differential Cryptanalysis (โดย Biham & Shamir)
  • ผสมผสานอัลจีบรา 3 ระบบ: ⊞ (mod 2¹⁶), ⊙ (mod 2¹⁶+1), ⊕ (XOR)
  • โครงสร้างไม่ใช่ Feistel → ประมวลผลบล็อกทั้งหมดพร้อมกัน (Parallel)
  • Key Schedule เรียบง่าย: เลื่อนวนซ้าย 25 บิตต่อรอบ

โครงสร้าง 8 รอบ

แต่ละรอบรับ 4 ส่วน 16 บิต (P1-P4) และ 6 กุญแจย่อย (K1-K6) ดำเนินการ 14 ขั้นตอน (ดูตารางในบทความก่อนหน้า)

Output Transformation

หลังรอบที่ 8: 4 ส่วน 16 บิต ผ่าน ⊙K49, ⊞K50, ⊞K51, ⊙K52 → Ciphertext 64 บิต

การถอดรหัส

ใช้โครงสร้าง เหมือนกัน แต่กุญแจย่อย:

  • ลำดับรอบย้อนกลับ
  • K1-K4 ← Inverse(K49-K52) สำหรับ ⊙/⊞
  • K5, K6 ← Inverse(K47, K48)

จุดอ่อนและสถานะ

  • ❌ บล็อก 64 บิต → โจมตี Birthday Bound (Sweet32)
  • ❌ Key Schedule อ่อนแอ: มี Weak Keys (K5=K6=0 หรือค่าพิเศษ)
  • ❌ ไม่มี Hardware Acceleration (AES-NI, ARM Crypto Extensions)
  • ❌ ช้ากว่า AES ในซอฟต์แวร์สมัยใหม่
  • ✅ สิทธิบัตรหมดอายุ 2012 → Public Domain
  • ไม่แนะนำสำหรับระบบใหม่ ใช้ AES-GCM / ChaCha20-Poly1305