6. Block Cipher

  1. Block Cipher

Block Cipher คือ การเข้ารหัส โดยการประมวลผลข้อมูลเป็นชุดหรือเป็นบล็อก ซึ่งขนาดบล็อกปกติคือ 64 บิต 128 บิตและ 256 บิต ขนาดบล็อกที่ทำการเข้ารหัสจะมีขนาดคงที่ เช่น หากเราใช้ข้อมูลที่มีความยาว 64 บิต เป็น input ข้อมูลเข้ารหัสหรือ Output ที่ได้จะเป็น 64 บิต เช่นกัน

Block Cipher

โดยปกติแล้วข้อมูลที่นำมาเข้ากระบวนการ Block Cipher จะมีขนาดความยาวไม่พอดีกับขนาดความยาวของบล็อก ดังนั้นในกรณีนี้จึงมีกระบวนการที่เรียกว่า “Padding” ซึ่งเป็นการเพิ่มความยาวของข้อมูลให้พอดีกับขนาดของบล็อก เช่น หากเรามีข้อมูลขนาดความยาว 150 บิต ใช้บล็อกที่มีขนาด 64 บิต จำนวน 2 บล็อก จะได้ 128 ซึ่งจะเหลืออีก 22 บิต ที่ยังไม่มีบล็อก เราจะต้องทำการเพิ่มบล็อกขนาด 64 บิต เข้าไปอีก 1 บล็อก แต่โดยปกติขนาดบล็อกกับข้อมูลจะต้องเท่ากัน ดังนั้น เราจึงต้องทำการเพิ่มข้อมูลที่ซ้ำซ้อนเข้าไปอีก 42 บิต (22+42=64) ในบล็อกสุดท้ายเพื่อให้ได้ 64 บิต พอดีกับขนาดของบล็อก

ในการประมวลผลข้อมูลเป็นชุด ๆ ของ Block Cipher นี้ การทำงานที่ง่ายที่สุด มีชื่อว่า Electronic Codebook หรือ ECB ซึ่งหลักการทำงานก็คือ จะแบ่งข้อมูลออกเป็นบล็อกละ 64 บิต โดยในการเข้ารหัสข้อมูลแต่ละชุด จะใช้คีย์เดียวกันทั้งหมด แต่การทำงานที่ง่ายนั้น จะมีข้อเสียตามมาก็คือ ในกรณีที่บล็อกข้อมูลความยาว 64 บิตเป็นข้อมูลชุดเดียวกัน ข้อมูลเข้ารหัสที่ได้จะมีลักษณะเหมือนกัน ดังนั้นหากข้อมูลมีลักษณะที่เป็นโครงสร้างตายตัว ข้อมูลที่ได้มีลักษณะซ้ำ ๆ กัน การทำงานแบบ ECB อาจจะไม่ปลอดภัยเพียงพอ

เนื่องจากกุญแจที่ใช้ใน Block Cipher มีความยาวมาก จึงสามารถทนทานต่อการโจมตีแบบ Brute-Force ( วิธีการโจมตีแบบเก่า ที่ใช้การลองผิดลองถูกเพื่อถอดรหัสรหัสผ่านข้อมูลและกุญแจที่ใช้ในการเข้ารหัส) แต่แม้ว่า Block Cipher จะปลอดภัย แต่ก็ยังเหมาะสำหรับการเข้ารหัสข้อมูล 1 บล็อกต่อ 1 ครั้ง โดยการใช้กุญแจแบบตายตัว นอกจากนั้น Block Cipher จะมีลักษณะในการเป็นส่วนประกอบสำคัญของโปรโตคอลการเข้ารหัสอื่น ๆ เช่น ฟังก์ชันแฮช (Hash Functions) และ ตัวสร้างตัวเลขสุ่ม (Random Number Generators) ส่วนของตัวอย่าง Block Cipher ที่เป็นที่นิยม เช่น Data Encryption Standard (DES) และ Advanced Encryption Standard (AES) เป็นต้น

Reference


Outline

  • Block Cipher คืออะไร
  • กระบวนการทำงานของ Block Cipher
  • ตัวอย่าง Block Cipher ที่เป็นที่รู้จัก