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

ขั้นตอนต่อไปนี้สำหรับการสร้างคีย์ของ DES ในการรักษาความปลอดภัยข้อมูลมีอะไรบ้าง


Data Encryption Standard (DES) เป็นอัลกอริธึมบล็อกการเข้ารหัสที่สร้างข้อความธรรมดาในบล็อกขนาด 64 บิต และแปลงเป็นข้อความเข้ารหัสโดยใช้คีย์ขนาด 48 บิต เป็นอัลกอริธึมคีย์สมมาตร ซึ่งกำหนดว่าคีย์ที่คล้ายกันนี้ใช้สำหรับเข้ารหัสและถอดรหัสข้อมูล

DES รับข้อความธรรมดา 64 บิตและสร้างข้อความเข้ารหัส 64 บิต ที่ไซต์ถอดรหัส DES ใช้ข้อความเข้ารหัสแบบ 64 บิตและสร้างบล็อกข้อความธรรมดาแบบ 64 บิต คีย์การเข้ารหัส 56 บิตเดียวกันสามารถใช้ได้ทั้งการเข้ารหัสและถอดรหัส

ลักษณะสำคัญของ DES คืออัลกอริธึมได้รับการแก้ไขและเป็นข้อมูลสาธารณะ อย่างไรก็ตาม คีย์จริงที่ใช้จะเป็นความลับร่วมกันระหว่างผู้สร้างและผู้รับการส่งสัญญาณ

ความก้าวหน้าใน DES ประกอบด้วยการยืดคีย์ให้ยาวเป็น 128 บิต และ DES แบบมัลติพาสซึ่งรวมถึงการเข้ารหัสและถอดรหัสแบบหลายรอบโดยทั่วไปสามแบบโดยใช้หลายคีย์

DES เป็นผลจากโครงการวิจัยที่ติดตั้งโดย International Business Machines (IBM) Corporation ในช่วงปลายทศวรรษ 1960 ซึ่งส่งผลให้มีการเข้ารหัสที่เรียกว่า LUCIFER ในช่วงเริ่มต้นปี 1970 มีความตั้งใจที่จะลดระดับ LUCIFER และนำเสนอนวัตกรรมหลายอย่าง

อัลกอริธึมใช้การเข้ารหัส 16 รอบและในแต่ละรอบจะมีการสร้างคีย์ที่ไม่ซ้ำกัน ก่อนที่จะแปลงเป็นขั้นตอน จำเป็นต้องเข้าใจว่าในข้อความธรรมดา บิตจะมีป้ายกำกับตั้งแต่ 1 ถึง 64 โดยที่ 1 เป็นบิตที่สำคัญที่สุดและ 64 เป็นบิตที่มีนัยสำคัญน้อยที่สุด ขั้นตอนการสร้างคีย์มีดังนี้ −

  • ตัวสร้างคีย์แบบกลมสร้างคีย์ 48 บิตสิบหกคีย์จากการเข้ารหัสแบบ 56 บิต คีย์การเข้ารหัสมีให้เป็นคีย์ 64 บิต โดยที่บิตพิเศษ 8 บิตเป็นพาริตีบิต ซึ่งจะถูกทิ้งก่อนที่กระบวนการสร้างคีย์จริงจะเริ่มต้นขึ้น

  • กระบวนการดรอปพาริตีบิตจะดรอปพาริตีบิต (บิต 8, 16, 24, 32…64) จากคีย์ 64 บิต และเปลี่ยนบิตที่เหลือตามกฎที่กำหนดไว้ล่วงหน้าดังแสดงในตารางดรอปพาริตีบิตด้านล่าง

  • โดยทั่วไปแล้ว 56 บิตที่เหลือเหล่านี้ใช้สำหรับการสร้างคีย์

  • หลังจากการเรียงสับเปลี่ยน คีย์จะถูกแบ่งออกเป็นสองส่วน 28 บิต แต่ละส่วนเปลี่ยนซ้ายหนึ่งหรือสองบิตขึ้นอยู่กับรอบ

  • ในการเปลี่ยนเกียร์ 1, 2, 9 และ 16 จะเป็นหนึ่งบิต และในรอบอื่นๆ จะเป็นสองบิต ทั้งสองส่วนถูกรวมเข้าด้วยกันเพื่อสร้างส่วน 56 บิต

  • ดังนั้นการบีบอัด D-box จึงแปลงเป็น 48 บิต 48 บิตเหล่านี้ถูกใช้เป็นกุญแจสำหรับรอบ

57 49 41 33 25 17 09 01
58 50 42 34 26 18 10 02
59 51 43 35 27 19 11 03
60 52 44 36 63 55 47 39
31 23 15 07 62 54 46 38
30 22 14 06 61 53 45 37
29 21 13 05 28 20 12 04

ขั้นตอนต่อไปนี้สำหรับการสร้างคีย์ของ DES ในการรักษาความปลอดภัยข้อมูลมีอะไรบ้าง