ความแตกต่างระหว่างความสับสนและการกระจัดกระจาย
เนื้อหา
ความสับสนของคำศัพท์และการแพร่เป็นคุณสมบัติในการสร้างรหัสลับที่ปลอดภัย ทั้งความสับสนและการแพร่กระจายถูกใช้เพื่อป้องกันคีย์การเข้ารหัสจากการหักหรือท้ายที่สุดเพื่อป้องกันต้นฉบับ ความสับสนใช้สำหรับการสร้างเลขศูนย์ในขณะที่ใช้การกระจายเพื่อเพิ่มความซ้ำซ้อนของที่ราบเหนือส่วนสำคัญของตัวเลขเพื่อให้ชัดเจน การเข้ารหัสสตรีมจะขึ้นอยู่กับความสับสนเท่านั้น อีกวิธีหนึ่งคือการแพร่กระจายถูกใช้โดยทั้งกระแสและบล็อกเลขศูนย์
Claude Shannon เสนอเทคนิคของความสับสนและการแพร่กระจายสำหรับการจับบล็อกพื้นฐานของฟังก์ชันการเข้ารหัสลับแทนที่จะใช้วิธีการทางสถิติที่ยาวนานและใช้เวลานาน แชนนอนเป็นกังวลมากที่สุดเกี่ยวกับการป้องกันการเข้ารหัสด้วยความช่วยเหลือของการวิเคราะห์ทางสถิติ
เหตุผลที่อยู่เบื้องหลังมันมีดังนี้ สมมติว่าผู้โจมตีมีความเข้าใจลักษณะทางสถิติของที่ราบ ยกตัวอย่างเช่นมนุษย์สามารถเข้าใจการแจกแจงความถี่ของตัวอักษรล่วงหน้าได้ ในกรณีดังกล่าวการเข้ารหัสนั้นค่อนข้างง่ายต่อการดำเนินการซึ่งสถิติที่เป็นที่รู้จักสามารถสะท้อนให้เห็นได้ในการเข้ารหัส การเข้ารหัสลับนี้สามารถสรุปคีย์หรือบางส่วนของคีย์ได้อย่างแน่นอน นั่นคือเหตุผลที่แชนนอนแนะนำสองวิธีคือความสับสนและการแพร่กระจาย
- แผนภูมิเปรียบเทียบ
- คำนิยาม
- ความแตกต่างที่สำคัญ
- ข้อสรุป
แผนภูมิเปรียบเทียบ
พื้นฐานสำหรับการเปรียบเทียบ | ความสับสน | การแพร่ |
---|---|---|
ขั้นพื้นฐาน | ใช้เพื่อสร้างตัวเลขที่คลุมเครือ | ใช้ในการสร้างความคลุมเครือธรรมดา |
พยายามที่จะ | สร้างความสัมพันธ์ระหว่างสถิติของตัวเลขและค่าของคีย์การเข้ารหัสที่ซับซ้อนที่สุด | ความสัมพันธ์ทางสถิติระหว่างที่ราบและเลขศูนย์ทำให้ซับซ้อนที่สุดเท่าที่จะทำได้ |
ผ่านพ้นไปได้ | อัลกอริทึมการทดแทน | อัลกอริทึมการขนย้าย |
ใช้โดย | สตรีมตัวเลขและบล็อกตัวเลข | บล็อกตัวเลขเท่านั้น |
ผลลัพธ์ | เพิ่มความคลุมเครือ | เพิ่มความซ้ำซ้อน |
นิยามของความสับสน
ความสับสน เป็นเทคนิคการเข้ารหัสที่คิดค้นขึ้นเพื่อเพิ่มความคลุมเครือของรหัสในคำง่าย ๆ เทคนิคที่ทำให้มั่นใจได้ว่าตัวเลขนั้นไม่มีเงื่อนงำเกี่ยวกับที่ราบ ในเทคนิคที่กำหนดความสัมพันธ์ระหว่างสถิติของตัวเลขและค่าของคีย์การเข้ารหัสจะถูกเก็บรักษาไว้อย่างซับซ้อนเท่าที่จะทำได้ แม้ว่าผู้โจมตีจะสามารถควบคุมสถิติของตัวเลขได้ แต่เขาก็ไม่สามารถสรุปคีย์ได้เช่นเดียวกับที่ใช้ในการสร้างรหัสนั้นซับซ้อน
ความสับสนสามารถทำได้โดยใช้การทดแทนและอัลกอริทึม scrambling ที่ซับซ้อนที่อาศัยคีย์และการป้อนข้อมูล (ล้วน)
คำจำกัดความของการแพร่
การแพร่ เป็นเทคนิคการเข้ารหัสที่คิดค้นขึ้นเพื่อเพิ่มความซ้ำซ้อนของที่ราบเพื่อบดบังโครงสร้างทางสถิติของที่ราบเพื่อป้องกันความพยายามในการอนุมานคีย์ ในการแพร่กระจายโครงสร้างทางสถิติของที่ราบสามารถหายไปเป็นสถิติระยะยาวของตัวเลขและความสัมพันธ์ระหว่างพวกเขามีความซับซ้อนเพื่อให้ไม่มีใครสามารถสรุปคีย์เดิม
มันสามารถทำได้โดยการกระจายออกของแต่ละตัวเลขหลักมากกว่าตัวเลขหลายหลักเช่นเมื่อมีการเปลี่ยนแปลงบิตเพียงเล็กน้อยมันจะส่งผลกระทบต่อทั้งตัวเลขหรือการเปลี่ยนแปลงจะต้องเกิดขึ้นในทั้งตัวเลข
ในบล็อกเลขศูนย์การแพร่กระจายสามารถทำได้โดยใช้การเปลี่ยนแปลงข้อมูลกับฟังก์ชั่นการเปลี่ยนแปลงผลที่ได้คือบิตจากตำแหน่งที่แตกต่างกันในที่ราบเดิมจะมีส่วนทำให้บิตเดียวของตัวเลข การแปลงในบล็อกเลขขึ้นอยู่กับคีย์
- เทคนิคความสับสนถูกนำมาใช้ในการสร้างยันต์คลุมเครือในขณะที่การแพร่กระจายจะถูกใช้ในการสร้างที่ราบที่ไม่ชัดเจน
- การแพร่กระจายพยายามที่จะสร้างความสัมพันธ์ทางสถิติระหว่างที่ราบและรหัสที่ซับซ้อนที่สุดเท่าที่จะทำได้ ในทางตรงกันข้ามเทคนิคความสับสนพยายามที่จะสร้างความสัมพันธ์ระหว่างสถิติของตัวเลขและค่าของคีย์การเข้ารหัสที่ซับซ้อนที่สุด
- อัลกอริทึมการทดแทนสามารถนำมาใช้เพื่อให้เกิดความสับสน เมื่อเทียบกับการแพร่สามารถทำได้โดยใช้เทคนิค transpositional
- Block cipher อาศัยความสับสนและการแพร่กระจายในขณะที่ stream cipher ใช้ความสับสนเท่านั้น
ข้อสรุป
ความสับสนและการแพร่กระจายทั้งสองเป็นเทคนิคการเข้ารหัสลับที่มีวัตถุประสงค์เพื่อสร้างความสัมพันธ์ระหว่างสถิติของตัวเลขและค่าของคีย์การเข้ารหัสที่ซับซ้อนที่สุดเท่าที่จะทำได้ ในอีกทางหนึ่งการแพร่กระจายพยายามที่จะปิดบังโครงสร้างทางสถิติของที่ราบผ่านการกระจายผลกระทบของตัวเลขแต่ละหลักของแต่ละบุคคลเหนือส่วนหลักหรือตัวเลขหลัก