Score:10

เหตุใด SHA3 จึงปลอดภัยกว่า SHA2

ธง in

เหตุใดอัลกอริทึม SHA3 จึงถือว่าปลอดภัยกว่าอัลกอริทึม SHA2 ส่วนหนึ่งเป็นเพราะความต้านทานต่อการโจมตีแบบขยายความยาว แต่โดยเฉพาะอย่างยิ่ง เมื่อพิจารณาถึงความต้านทานการชน พวกเขามีเวลาโจมตี O(n) เท่ากัน

เป็นเพราะพวกมันทนทานต่อการโจมตีของพรีอิมเมจมากกว่าหรือเปล่า?

poncho avatar
my flag
"เหตุใดอัลกอริทึม SHA3 จึงถือว่าปลอดภัยกว่าอัลกอริทึม SHA2" - โดยส่วนตัวแล้วฉันสงสัยว่าสาเหตุส่วนใหญ่ที่หลายคนคิดว่าเป็นเพราะ $3 > 2$...
kelalaka avatar
in flag
ไม่มีฟังก์ชันแฮชการเข้ารหัสที่ทำลายการต่อต้านอิมเมจล่วงหน้า แม้แต่ MD5 การโจมตีพรีอิมเมจที่มีอยู่ก็ใช้งานไม่ได้มากไปกว่าการใช้กำลังเดรัจฉาน
Maarten Bodewes avatar
in flag
"เหตุใดอัลกอริทึม SHA3 จึงถือว่าปลอดภัยกว่าอัลกอริทึม SHA2" นี่ไม่ใช่วิกิพีเดีย แต่เป็นเพียงการขอ \[citation-needed\]
Dmitry Grigoryev avatar
us flag
@poncho เตือนฉันว่าในประเทศที่ไม่ได้พูดภาษารัสเซีย ยอดขายของรถบรรทุกดัดแปลงเพื่อการส่งออกของ [KAMAZ](https://en.wikipedia.org/wiki/Kamaz) ต่ำกว่าการดัดแปลงสำหรับตลาดภายในอยู่เสมอ เนื่องจาก หลังมีโลโก้เวอร์ชันภาษารัสเซีย ÐÐÐÐÐ และผู้คนคิดว่า KAMA3 ดีกว่า KAMA2
Score:29
ธง ng

TL;DR: การยืนยันว่า "SHA3 ปลอดภัยกว่า SHA2" นั้นไม่ได้รับการพิสูจน์เมื่อเราพิจารณาการต้านทานการชนกัน หรือความต้านทานพรีอิมเมจ

เพิ่มเติม: มีเหตุผลให้เลือก SHA3 รวมถึงการเป็นเครื่องมือทั่วไปเนื่องจากเป็นการสร้างตัวอย่างที่น่าเชื่อถือของ oracle แบบสุ่ม (ตรงกันข้ามกับ SHA2 เนื่องจากคุณสมบัติการขยายความยาว) ฉันอ้างถึง คำตอบนี้ สำหรับข้อมูลเพิ่มเติม


เราไม่รู้ว่า SHA2 หรือ SHA3 แบบไหนกันการชนได้มากกว่ากัน ทั้งคู่พยายามที่จะได้รับความต้านทานการชนที่ดีที่สุดสำหรับ a $n$-บิตแฮช เช่น ราคาของ $2^{n/2}$ แฮช (ภายในปัจจัยที่ไม่ไกลจาก 1) เพื่อให้เกิดการปะทะกันด้วยความน่าจะเป็น â39% ของความสำเร็จ

เราไม่ทราบว่า SHA2 หรือ SHA3 ตัวไหนทนต่อการพรีอิมเมจได้มากกว่ากัน ทั้งคู่พยายามให้ได้ค่าความต้านทานพรีอิมเมจที่ดีที่สุดสำหรับ a $n$-บิตแฮช เช่น ราคาของ $2^n$ แฮช (ภายในปัจจัยที่ไม่ไกลจาก 1) เพื่อให้ได้ภาพล่วงหน้าด้วยความน่าจะเป็น â63% ของความสำเร็จ มันไม่ได้เป็นเช่นนั้นเสมอไป: ในช่วงสั้น ๆ ความต้านทานพรีอิมเมจของ SHA3 แบบร่างนั้นลดลงเพื่อให้เร็วขึ้น ซึ่งต่ำกว่านั้น (คาดเดา) สำหรับ SHA2 แต่การเปลี่ยนแปลงนั้นทำให้เกิดความขัดแย้งและถูกเปลี่ยนกลับ ดู นี้. ตอนนี้เราต้องใช้ SHAKE เมื่อเราไม่ต้องการให้ SHA2 มีค่าความต้านทาน preimage-resistance มากเกินไป และต้องการความเร็วที่มากขึ้นแทน

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

Patriot avatar
cn flag
แน่นอน: เราไม่รู้ ประวัติของวิทยาการเข้ารหัสส่วนใหญ่เป็นเรื่องราวของผู้คนที่พูดว่ามีบางสิ่งที่แน่นอน จนกระทั่งมันไม่เป็นเช่นนั้น
cn flag
"แต่การเปลี่ยนแปลงนั้นทำให้เกิดความขัดแย้งและถูกเปลี่ยน" สิ่งที่น่าเศร้าเกี่ยวกับการตัดสินใจครั้งนี้คือการเพิ่มจำนวนรอบของ SHAKE-256 เพื่อให้ตรงกับประสิทธิภาพของ SHA3-512 จะส่งผลให้มีฟังก์ชันที่ฉันไว้วางใจมากกว่า SHA3- 512.
corsiKa avatar
us flag
@ ผู้รักชาติเท่านั้นที่ Sith จัดการอย่างเด็ดขาด
Score:22
ธง cn

นี่เป็นภาคผนวกของคำตอบของ fgrieu มากกว่าคำตอบในตัวมันเอง แต่มี 3 สิ่งที่โดดเด่น สามารถ ทำให้ SHA3 มีความปลอดภัยมากกว่า SHA2 จากมุมมองด้านการออกแบบ

สิ่งแรกและชัดเจนที่สุดคือขนาดสถานะ SHA3 นั้นใหญ่กว่าอย่างมากที่ 1600 บิตมากกว่าแม้แต่ SHA512... ที่เพียง 512 บิต SHA3 ​​เป็นฟังก์ชันสปันจ์ได้รับระดับความปลอดภัยจากขนาดสถานะนั้นที่ซ่อนไว้จากเอาต์พุตแฮชสุดท้าย และนั่นเป็นหนึ่งในเหตุผลที่ทำให้ไม่มีภูมิคุ้มกันต่อการโจมตีแบบขยายความยาว SHA-512 และ SHA-256 ส่งสัญญาณสถานะทั้งหมด ส่วนตระกูล SHA2 ที่เหลือจะตัดให้สั้นลงตามความยาวที่ต้องการ การมีสถานะทั้งหมดพร้อมใช้งานสามารถทำให้การโจมตีบางอย่างกับแฮชที่ใช้การเข้ารหัสแบบบล็อกเช่น SHA2 ง่ายขึ้น การตัดทอนที่ยากอาจนำไปสู่การโจมตีอื่นๆ

ประการที่สองอาจเปลี่ยนแปลงเมื่อเวลาผ่านไป บัฟเฟอร์ความปลอดภัย หรือจำนวนรอบทั้งหมดจะไม่ถูกทำลายโดยการโจมตีที่ดีที่สุดต่อฟังก์ชันแฮช สำหรับการชนกับ SHA2 อยู่ระหว่าง 56% (การชนกันจริงสำหรับ SHA-256) และ 30% (การชนเทียมสำหรับ SHA-256) แต่สูงถึง 79% สำหรับ SHA3 (ซ้อมชนกัน 5 รอบ)

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

เหตุใดอัลกอริทึม SHA3 จึงถือว่าปลอดภัยกว่าอัลกอริทึม SHA2

การแข่งขัน SHA3 เกิดขึ้นเนื่องจากการโจมตีครั้งใหม่ต่อ MD5 และ SHA-1 ซึ่งสร้างภัยคุกคามที่รับรู้ว่าการวิเคราะห์ SHA2 ในอนาคตอาจนำไปสู่การโจมตีจริง สิ่งนี้ยังไม่เกิดขึ้น และ SHA2 ได้ยืนหยัดเพื่อต่อต้านการเข้ารหัส

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

Score:10

ฉันรู้ว่าคุณได้กล่าวถึงการโจมตีส่วนขยายความยาวแล้วในคำถามของคุณ แต่ฉันไม่คิดว่าความสำคัญของสิ่งนั้นสามารถพูดเกินจริงได้ว่า SHA3 เป็นอย่างไร ในทางปฏิบัติ ปลอดภัยกว่า SHA2 - โดยเฉพาะอย่างยิ่งเมื่อใดก็ตามที่คุณจะออกแบบโปรโตคอล/ระบบเข้ารหัสลับของคุณเอง ด้วยการโจมตีแบบขยายความยาว การใช้ SHA2 อาจต้องใช้มาตรการที่ใช้งานอยู่ (เช่น HMAC) นอกเหนือจากแฮชเอง เพื่อที่จะใช้งานได้อย่างปลอดภัย และ คนส่วนใหญ่ที่ใช้มันไม่เข้าใจสิ่งนี้. แม้ว่าจะเป็นเช่นนั้นก็ตาม ความต้องการนั้นครอบครองพื้นที่ในแบบจำลองทางความคิดของคนๆ หนึ่ง ซึ่งสามารถใช้จ่ายกับสิ่งที่มีค่ามากกว่าได้

นอกจากนี้ การใช้งาน SHA2 อาจอยู่ภายใต้ช่องทางด้านข้าง ซึ่งในบางบริบท ข้อมูลรั่วไหลเกี่ยวกับข้อมูลที่ถูกแฮช สิ่งนี้อาจมีความสำคัญเมื่อใช้แฮชกับเนื้อหาหลัก เช่น ใน HMAC หรือลายเซ็น กระดาษแผ่นนี้ อ้างว่าประสบความสำเร็จในการกู้คืนคีย์ส่วนตัวจากการใช้งาน WolfSSL (2017) ของ Ed25519 โดยใช้ช่องทางด้านข้างดังกล่าว SHA3 ​​โดยการออกแบบไม่ทำให้เกิดการรั่วไหลของช่องด้านข้าง

โพสต์คำตอบ

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