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

Double DES คืออะไร?


Data Encryption Standard (DES) เป็นรหัสบล็อกคีย์สมมาตร ซึ่งสร้างข้อความธรรมดา 64 บิตและคีย์ 56 บิตเป็นอินพุต และทำให้ข้อความเข้ารหัส 64 บิตเป็นเอาต์พุต ฟังก์ชัน DES สร้างขึ้นจาก P และ S-boxes P-boxes ทรานสโพสบิตและ S-box แทนที่บิตเพื่อสร้างรหัส

DES คือการใช้งาน Feistel Block Cipher ที่เรียกว่า LUCIFER ต้องใช้โครงสร้าง Feistel ที่มี 16 รอบ ซึ่งแต่ละรอบสามารถใช้คีย์ที่แตกต่างกันได้ เหตุผลหลักในการทำความเข้าใจ DES (Data Encryption Standard) คือมันเป็นรากฐานสำหรับอัลกอริธึมการเข้ารหัส สิ่งนี้ทำให้ง่ายต่อการเรียนรู้การใช้งานหรือการทำงานของอัลกอริธึมหรือวิธีการเข้ารหัสที่ใช้อยู่ในปัจจุบัน ซึ่งเร็วกว่าอัลกอริธึม DES มาก

Double DES เป็นวิธีการเข้ารหัสที่ใช้ DES สองตัวอย่างบนข้อความธรรมดาเดียวกัน ในทั้งสองตัวอย่าง จะมีคีย์ต่างๆ ในการเข้ารหัสข้อความธรรมดา Double DES นั้นเรียนรู้ได้ง่าย

Double DES ใช้สองคีย์ เช่น k1 และ k2 สามารถใช้ DES กับข้อความธรรมดาต้นฉบับโดยใช้ k1 เพื่อรับข้อความที่เข้ารหัส สามารถใช้ DES กับข้อความที่เข้ารหัสได้ แต่คราวนี้ใช้คีย์อื่น k2 ผลลัพธ์สุดท้ายคือการเข้ารหัสข้อความที่เข้ารหัสดังแสดงในรูป

Double DES คืออะไร?

บล็อกข้อความเข้ารหัสแบบเข้ารหัสคู่จะถูกถอดรหัสก่อนโดยใช้คีย์ K2 เพื่อสร้างข้อความเข้ารหัสที่เข้ารหัสแบบเดี่ยว จากนั้นบล็อกข้อความเข้ารหัสนี้จะถูกถอดรหัสโดยใช้คีย์ K1 เพื่อรับบล็อกข้อความธรรมดาดั้งเดิม

Double DES คืออะไร?

หากสามารถใช้คีย์ได้เพียง 1 บิต ก็มีคีย์ที่เป็นไปได้สองคีย์ ได้แก่ 0 และ 1 หากสามารถใช้คีย์ 2 บิตได้ จะมีค่าคีย์ที่เป็นไปได้สี่ค่า เช่น (00, 01, 10 และ 11)

โดยทั่วไป หากสามารถใช้คีย์ n-bit ได้ cryptanalyst จะต้องติดตั้ง 2 n การดำเนินการเพื่อลองใช้คีย์ที่เป็นไปได้ทั้งหมด หากสามารถใช้คีย์ที่ต่างกันสองคีย์ แต่ละคีย์มี n บิต cryptanalyst จะต้องมี 2 2n พยายามถอดรหัสกุญแจ

Double DES ต้องการคีย์การค้นหา (2 2*56 ), ฉัน. อี , 2 112 กุญแจ มันแนะนำเงื่อนไขของการโจมตีแบบพบตรงกลาง การโจมตีนี้มีการเข้ารหัสจากปลายด้านหนึ่ง ถอดรหัสจากอีกด้านหนึ่ง และเชื่อมต่อผลลัพธ์ที่อยู่ตรงกลาง

พิจารณาว่า cryptanalyst เข้าใจข้อมูลพื้นฐานสองส่วน ได้แก่ P (บล็อกข้อความธรรมดา) และ C (บล็อกข้อความเข้ารหัสสุดท้ายที่สอดคล้องกัน) สำหรับข้อความ นิพจน์ตัวเลขของ Double DES ดังแสดงในรูป

ผลลัพธ์ของการเข้ารหัสครั้งแรกเรียกว่า T และระบุเป็น T =Ek1 (P) [เช่นเข้ารหัสบล็อก P ด้วยคีย์ K1] หลังจากที่บล็อกที่เข้ารหัสนี้ได้รับการเข้ารหัสด้วยคีย์ K2 อื่นแล้ว จะระบุผลลัพธ์เป็น C =EK2 (EK1 (P)) [เช่น เข้ารหัสบล็อก T ที่เข้ารหัสแล้วด้วยคีย์อื่น K2 และเรียกข้อความเข้ารหัสสุดท้ายเป็น C]

Double DES คืออะไร?