Score:0

การเปลี่ยนจำนวนรอบในการบีบอัดครั้งสุดท้ายจะป้องกันการโจมตีแบบขยายความยาวหรือไม่

ธง cn

สมมติว่าเรามีฟังก์ชันแฮช MerkleâDamgÃ¥rd สมมติว่าฟังก์ชันการบีบอัดรองรับและมีความปลอดภัยเท่าเทียมกันเมื่อมีจำนวนรอบมากขึ้น

การเปลี่ยนจำนวนรอบ (เช่น เพิ่มเป็นสองเท่า) สำหรับการบีบอัดรหัสบล็อกสุดท้ายจะป้องกันการโจมตีแบบขยายความยาวหรือไม่

fgrieu avatar
ng flag
ในทางทฤษฎี ฟังก์ชันแฮชของ Merkle-DamgÃ¥rd ไม่จำเป็นต้องใช้การปัดเศษ และฟังก์ชันการบีบอัดมีอยู่ในโครงสร้างทั่วไปหลายโครงสร้าง ซึ่งไม่มีแนวคิดโดยตรงเกี่ยวกับรอบ คุณหมายถึงรอบที่มากขึ้นในฟังก์ชันการเข้ารหัสแบบวนซ้ำของฟังก์ชันการบีบอัด [Davies-Meyer](https://en.wikipedia.org/wiki/One-way_compression_function#Davies%E2%80%93Meyer) ของ Merkle-DamgÃ¥ ฟังก์ชั่นแฮช rd?
cn flag
@fgrieu ฉันมี Matyas-Meyer-Oseas อยู่ในใจ
fgrieu avatar
ng flag
อย่างน้อย [Matyas-Meyer-Oseas](https://en.wikipedia.org/wiki/One-way_compression_function#Matyas%E2%80%93Meyer%E2%80%93Oseas) ระบุ XOR (ที่ตัวอย่างตัวนับในของฉัน คำตอบจำเป็นต้องลบออก) และในนั้นคล้ายกับ Davies-Meyer และบล็อกพิเศษเมื่อเทียบกับ Davies-Meyer ดูเหมือนจะป้องกันการโจมตีได้มากขึ้น แต่ "รอบเพิ่มเติม" ยังคงค่อนข้างคลุมเครือ แม้ว่าเราจะถือว่ารหัสบล็อกที่ใช้มีรอบก็ตาม ดังนั้นฉันควรจะปลอดภัยดีกว่าเสียใจและไม่พูดอะไรจนกว่าจะมีความแม่นยำมากกว่านี้
cn flag
เราสามารถสันนิษฐานได้ว่า block cipher มีค่าคงที่ของรอบที่แตกต่างกันสำหรับทุกรอบ เพียงแค่เรียก block cipher สองครั้งฉันรู้ว่าจะไม่ทำงานเพราะมันเหมือนกับการเพิ่มศูนย์ที่ส่วนท้ายของข้อความ ความเป็นไปได้อีกอย่างคือทำ $E_0(h) \oplus h$ (เมื่อสิ้นสุดการสลับไปที่ Davies-Meyer และใช้ปุ่มศูนย์ทั้งหมดเพื่อปกปิดเอาต์พุต)
Score:1
ธง ng

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

พิสูจน์โดย counterexample: แก้ไข SHA-512 โดย

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

การรวมกันดังกล่าวมีผลแฮชสองเท่าของบล็อกสุดท้ายของข้อความที่ขยาย และใช้ฟังก์ชันการบีบอัดที่สามารถย้อนกลับได้ นั่นทำให้แฮชอ่อนแอลงในทางทฤษฎีต่อการโจมตีบางอย่าง แต่ยังคงไม่แตกหักจากมุมมองเชิงปฏิบัติทั้งหมด และนั่นทำให้มีความเสี่ยงต่อการโจมตีแบบขยายความยาวในบางกรณี ตัวอย่างเช่น เมื่ออินพุตที่ไม่รู้จักคือบล็อกข้อความหนึ่งบล็อก (128 ไบต์) และเรารู้ว่าเป็นแฮช เราสามารถคำนวณได้อย่างมั่นใจว่าแฮชของอินพุต 3 บล็อก (384 ไบต์) โดยเริ่มจากต้นฉบับ ตามด้วยสองเท่าของค่าที่ทราบ บล็อกเท่ากับบล็อกการเติมของ SHA-512 สำหรับอินพุต 128 ไบต์

ในทางกลับกัน หากการเปลี่ยนแปลงที่เราทำในฟังก์ชันการบีบอัดล่าสุดทำให้ไม่เกี่ยวข้องกับการบีบอัดตามปกติ แสดงว่าเราปลอดภัยจากการโจมตีแบบขยายความยาว การเปลี่ยนค่าคงที่ที่ใช้ในแต่ละรอบของรหัสบล็อกของ Davies-Meyer หรือ Matyas-Meyer-Oseas ฟังก์ชั่นการบีบอัดเช่นเดียวกับใน SHA-2 (โดยไม่ต้องเปลี่ยนจำนวนรอบ) จะทำโดยปราศจากข้อสงสัยอย่างสมเหตุสมผล ดังนั้นจะเพิ่มจำนวนรอบเป็นสองเท่าและใช้ค่าคงที่ใหม่ในครึ่งหลัง ฉันไม่ได้แถลงเกี่ยวกับการเพิ่มจำนวนรอบเป็นสองเท่าด้วยค่าคงที่เดียวกัน

โพสต์คำตอบ

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