Score:0

"การเติม" และ "การตรวจสอบ" ในการเข้ารหัสต่างกันอย่างไร

ธง nl

ในการเข้ารหัส การขยายความ เป็นวิธีปฏิบัติที่แตกต่างกันหลายประการ ซึ่งทั้งหมดรวมถึงการเพิ่มข้อมูลไปยังจุดเริ่มต้น ตรงกลาง หรือจุดสิ้นสุดของ a ข้อความก่อนการเข้ารหัส ในการเข้ารหัสแบบคลาสสิก การเติมอาจ รวมถึงการเพิ่มวลีไร้สาระในข้อความเพื่อบดบังข้อเท็จจริงที่ว่า หลายข้อความจบลงด้วยวิธีที่คาดเดาได้

ตรวจสอบผลรวม ดูเหมือนว่าจะให้บริการในลักษณะเดียวกันซึ่งเพิ่มเข้ามาในข้อความ และผู้ตรวจสอบจะตรวจสอบผลรวมและโมดูลาร์ของตัวหารที่ตกลงไว้ล่วงหน้า

Score:1
ธง in

ในวิทยาการเข้ารหัสลับ การเติมคือวิธีปฏิบัติที่แตกต่างกันหลายประการ ซึ่งทั้งหมดรวมถึงการเพิ่มข้อมูลไปยังจุดเริ่มต้น ตรงกลาง หรือจุดสิ้นสุดของข้อความก่อนการเข้ารหัส

นี่เป็นประโยคย่อ

  1. โหมดการเข้ารหัสแบบบล็อก เช่น CBC และ ECB จำเป็นต้องมีการเติมเพื่อให้สามารถเข้ารหัสบล็อกข้อความได้อย่างถูกต้อง ไม่ใช่ข้อความทั้งหมดที่มีขนาดบล็อกหลายเท่าของรหัส การเติมทั่วไปคือ PKCS#7 และนำไปใช้ในตอนท้าย เมื่อเร็ว ๆ นี้ เทรนด์อยู่ในโหมดเช่น CTR ที่ไม่ต้องการช่องว่างภายใน สิ่งนี้ลบเวกเตอร์โจมตีหนึ่งตัว การขยายการโจมตีของออราเคิล

  2. การเข้ารหัสคีย์สาธารณะของ RSA จำเป็นต้องมีการเติมเพื่อความปลอดภัยจากการโจมตี ในกรณีนี้ ข้อมูลจะนำหน้าอักขระคงที่และอักขระสุ่มบางตัว

    • สศอ. : $\text{T=lhash||PS||01||ข้อความ}$
    • PKCS#1.v5 : $\text{EM = 0x00 || 0x02 || ปล.|| 0x00 || ข้อความ}$
  3. ในขณะที่การแฮช หากเราต้องการการเชื่อมสองสายเข้าด้วยกัน เราจะไม่เชื่อมสองสายในลักษณะการต่อสายแบบ Sting เพียงอย่างเดียว แต่เราจะเพิ่มตัวคั่นพิเศษเข้าไป เพื่อไม่ให้เกิดการชนกันแบบง่ายๆ

    $$แฮช(\texttt{abcd||efgh}) = แฮช(\texttt{abc||defgh})$$ ที่ไหน $s_1 = abcd, s_2 = efgh, s_3 = abc, s_4 = defgh$ เป็น 4 สตริงที่แตกต่างกัน แต่การเชื่อมโยงกันยังคงสร้างค่าแฮชเดียวกัน เพื่อบรรเทา เราใช้ช่องว่างระหว่างกลางด้วยค่าพิเศษบางอย่างกับโดเมน $$Hash(\texttt{abcd||<sperator>||efgh}) \neq Hash(\texttt{abc||<sperator>||defgh})$$ การเปลี่ยนแปลงของการชนกันนั้นเล็กน้อยสำหรับแฮชการเข้ารหัสที่ดี

ในการเข้ารหัสแบบคลาสสิก การเติมอาจรวมถึงการเพิ่มวลีไร้สาระในข้อความเพื่อบดบังข้อเท็จจริงที่ว่าข้อความจำนวนมากจบลงด้วยวิธีที่คาดเดาได้

นี่เป็นเพราะความจริงที่ว่าเราไม่ต้องการให้ข้อมูลธรรมดาแก่ผู้โจมตี ซึ่งอัลกอริทึมแบบดั้งเดิมเกือบทั้งหมดไม่ปลอดภัยต่อสิ่งนี้

พิจารณาขนาดรหัสของฮิลล์ $n$ และถ้าบล็อกสุดท้ายมีอักขระเพียงตัวเดียวจากข้อความ และถ้าคุณเติมค่าที่เหลือด้วยค่าที่ทราบคงที่ แสดงว่าคุณให้คีย์ของคุณแก่ฝ่ายตรงข้าม พวกเขาเพียงแค่ต้องแก้ระบบสมการ 26 ครั้งเพื่อให้ได้รหัสเข้ารหัส

อย่างที่คุณเห็นแล้วว่าช่องว่างภายในนั้นเกี่ยวกับความปลอดภัยและการปฏิบัติงานมากกว่า

ดูเหมือนว่า Checksum จะให้บริการในลักษณะเดียวกัน ซึ่งเพิ่มเข้ามาในข้อความ และผู้ตรวจสอบจะตรวจสอบผลรวมและโมดูลาร์ของตัวหารที่ตกลงไว้ล่วงหน้า

การตรวจสอบเป็นเรื่องเกี่ยวกับการตรวจหาข้อผิดพลาด ที่นี่เราแยกความแตกต่างของการตรวจสอบความถูกต้องในการเข้ารหัสที่เราใช้ฟังก์ชันแฮช ฟังก์ชันแฮชสามารถตรวจจับข้อผิดพลาดได้ อย่างไรก็ตาม ฟังก์ชันเหล่านี้มีประสิทธิภาพมากกว่าการตรวจสอบผลรวม

โปรดทราบว่าแม้ว่าการเติมสามารถระบุข้อผิดพลาดได้ เช่น การเติม PKCS#7 แต่นั่นไม่ได้หมายความว่าจุดประสงค์คือความสมบูรณ์ (หรือการตรวจสอบ) และที่น่าสนใจคือ ข้อผิดพลาดนี้ใช้การเว้นระยะจากการโจมตีของ Oracle เพื่อถอดรหัสข้อความบนเซิร์ฟเวอร์ที่ส่งกลับ ข้อผิดพลาด.

โพสต์คำตอบ

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