Block Cipher Modes of Operation
Block Cipher เป็น Symmetric Cryptographic Algorithm ทำงานบน Block ข้อมูลขนาดคงที่ ใช้ Shared Private Key Plaintext ใช้ในการเข้ารหัส ผลลัพธ์คือ Ciphertext ใช้คีย์เดียวกันทั้งเข้ารหัสและถอดรหัส
โหมดการทำงานหลัก
1. Electronic Code Book (ECB) Mode
ง่ายที่สุด แบ่ง Plaintext เป็นบล็อก 64 บิต เข้ารหัสแต่ละบล็อกอิสระ ใช้คีย์เดียวกันทุกบล็อก เข้ารหัส/ถอดรหัสขนานได้ (ไม่ขึ้นกัน) เร็ว แต่ไม่ปลอดภัยสำหรับข้อมูลที่มี Pattern ซ้ำ
2. Ciphertext Block Chaining (CBC) Mode
แต่ละ Plaintext Block XOR กับ Ciphertext Block ก่อนหน้าก่อนเข้ารหัส บล็อกแรกใช้ Initialization Vector (IV) ที่ Sender/Receiver ตกลงกันล่วงหน้า ไม่สามารถประมวลผลขนานได้ ใช้กับ Random Access File ไม่ได้
3. Output Feedback (OFB) Mode
คล้าย CFB แต่แต่ละบิตของ Ciphertext อิสระจากบิตก่อนหน้า ป้องกัน Error Propagation ข้อดี: Bit Error ในการส่งไม่แพร่กระจาย ข้อเสีย: เสี่ยงต่อ Message Stream Modification Attack มากกว่า CFB
4. Cipher Feedback (CFB) Mode
เข้ารหัสเป็น Unit ละ 8 บิต ใช้สำหรับ Stream Ciphering แต่ละ Ciphertext Block ใช้เป็น Input ถัดไป ต่างจาก ECB: การเข้ารหัสขึ้นกับ Plaintext Block, Key, และ Ciphertext Block ก่อนหน้า ใช้ในแอปที่ทำงานกับ Unit เล็กกว่าบล็อก
5. Counter (CTR) Mode
ใช้ Counter ขนาดเท่าบล็อก Plaintext เข้ารหัส Counter แล้ว XOR กับ Plaintext ได้ Ciphertext ถอดรหัส: ใช้ Counter Sequence เดียวกัน XOR กับ Ciphertext ใช้ใน Hardware/Software Efficiency, Pre-processing, Security, Integrity