ความแตกต่างระหว่าง Stream Cipher กับ Block Cipher

Anonim

Stream Cipher vs Block Cipher | State Cipher vs Block Cipher

ในการเข้ารหัสลับ ciphers Stream และ cipher ที่ถูกบล็อกเป็นอัลกอริทึมการเข้ารหัส / ถอดรหัสที่เป็นของครอบครัวของคีย์แฟรฟ์คีย์ที่สมมาตร โดยปกติตัวเลขจะใช้ข้อความล้วนเป็นอินพุทและสร้างข้อความเป็นเอาต์พุต Block ciphers เข้ารหัสลับบล็อกที่มีความยาวคงที่ของบิตโดยใช้การแปลง unvarying Stream ciphers เข้ารหัสกระแสข้อมูลของบิตที่มีความยาวแตกต่างกันและใช้การแปลงที่แตกต่างกันในแต่ละบิต

Stream Cipher คืออะไร?

รหัสลับของสตรีมเป็นของครอบครัวของคีย์หลักที่สมมาตร ciphers ของกระแสข้อมูลรวมบิตข้อความล้วนกับการเข้ารหัสบิตของบิตพร็อพเพอร์โซนิคโดยใช้การทำงาน XOR (แบบเอกสิทธิ์เฉพาะบุคคล) รหัสย่อของสตรีมจะเข้ารหัสข้อมูลที่มีข้อความล้วนในแต่ละครั้งโดยมีการแปลงข้อมูลให้เป็นตัวเลขต่อเนื่องกัน เนื่องจากการเข้ารหัสของแต่ละหลักขึ้นอยู่กับสถานะปัจจุบันของเครื่องมือตัวเลข ciphers กระแสเรียกอีกอย่างหนึ่งว่า ciphers ของรัฐ โดยปกติบิตเดี่ยว / กัดจะใช้เป็นตัวเลขเดียว เพื่อหลีกเลี่ยงปัญหาด้านความปลอดภัยควรตรวจสอบให้แน่ใจว่าไม่ได้ใช้สถานะเริ่มต้นเดิมมากกว่าหนึ่งครั้ง รหัสสตรีมที่ใช้กันอย่างแพร่หลายคือ RC4

Block Cipher คืออะไร?

เลขศูนย์บล็อกเป็นรหัสกุญแจที่สมมาตรอื่น (กลุ่มของบิต) ที่มีความยาวคงที่ ciphers บล็อกใช้การเปลี่ยนแปลงคงที่ (unvarying) สำหรับตัวเลขทั้งหมดในบล็อก ตัวอย่างเช่นเมื่อมีการใช้ข้อความธรรมดา (พร้อมด้วยคีย์ลับ) ในรูปแบบ x-bit (พร้อมกับคีย์ลับ) เพื่อป้อนข้อมูลลงในเครื่องมือเลขฐานสองจะทำให้เกิดการบล็อกแบบ x-bit ที่สอดคล้องกันของ ciphertext การแปลงจริงขึ้นอยู่กับคีย์ลับ ในทำนองเดียวกันอัลกอริทึมการถอดรหัสจะกู้คืนบล็อค x-bit เดิมของ plaintext โดยใช้บล็อก x-bit ของ ciphertext และคีย์ลับด้านบนเป็นอินพุต ในกรณีที่ข้อความเข้ายาวเกินไปเมื่อเทียบกับขนาดของบล็อกจะถูกแบ่งย่อยเป็นบล็อคและบล็อคเหล่านี้จะถูกเข้ารหัสโดยใช้คีย์เดียวกัน อย่างไรก็ตามเนื่องจากมีการใช้คีย์เดียวกันแต่ละลำดับซ้ำในข้อความล้วนกลายเป็นลำดับเดียวกันซ้ำในข้อความที่เป็นตัวเลขซึ่งอาจทำให้เกิดความกังวลด้านความปลอดภัย รหัสลับที่เป็นที่นิยมคือ DES (Data Encryption Standard) และ AES (Advanced Encryption Standard)

อะไรคือความแตกต่างระหว่าง Stream Cipher กับ Block Cipher?

แม้ว่า ciphers ทั้งสองแบบและ ciphers block เป็นของครอบครัวของ encryption ciphers สมมาตรมีความแตกต่างที่สำคัญบางอย่าง Block ciphers เข้ารหัสลับบล็อกที่มีความยาวคงที่ของบิตในขณะที่ ciphers ของกระแสข้อมูลรวมบิตข้อความล้วนกับการใช้บิตเรนเดอร์โดยใช้การประมวลผล XOR แม้ว่า ciphers การบล็อกจะใช้การเปลี่ยนแปลงเดียวกัน ciphers stream ใช้การแปลงที่แตกต่างกันขึ้นอยู่กับสถานะของเครื่องยนต์ciphers ของกระแสข้อมูลจะทำงานได้เร็วกว่าการปิดกั้น ciphers ในแง่ของความซับซ้อนของฮาร์ดแวร์ ciphers stream มีความซับซ้อนน้อยกว่า ciphers stream เป็นความต้องการทั่วไปของการตั้งค่า ciphers เมื่อข้อความธรรมดาสามารถใช้ได้ในปริมาณที่แตกต่างกัน (เช่นเชื่อมต่อ wifi ปลอดภัย) เนื่องจาก ciphers ป้องกันไม่สามารถทำงานได้โดยตรงบนบล็อคที่สั้นกว่าขนาดของบล็อก แต่บางครั้งความแตกต่างระหว่าง ciphers stream และ block ciphers ก็ไม่ชัดเจนนัก เหตุผลก็คือเมื่อใช้โหมดบางอย่างของการดำเนินการตัวเลขแบบบล็อกจะถูกใช้เพื่อทำหน้าที่เป็นตัวเลขกระแสข้อมูลโดยอนุญาตให้เข้ารหัสหน่วยข้อมูลที่มีขนาดเล็กที่สุด