Score:0

ย้อนกลับค่าแฮช SHA256 จากหลายอินสแตนซ์ที่รู้จักส่วนหนึ่งของค่าแฮช

ธง in

ขออภัยล่วงหน้าหากคำถามนี้ได้รับคำตอบแล้ว อย่างไรก็ตาม ฉันไม่สามารถหาคำตอบที่มีอยู่ได้ แม้ว่ากรณีนี้จะค่อนข้างเรียบง่ายและธรรมดาก็ตาม อาจมีคำศัพท์บางคำที่ฉันไม่รู้ทำให้ฉันพลาดคำศัพท์ที่ชัดเจน

ดังนั้นนี่คือ:

สมมติว่าเราแฮชค่า "ความลับ" ซ้ำๆ ของ SHA256 ที่เชื่อมกับตัวเลขต่างๆ กัน และแจ้งให้ฝ่ายตรงข้ามทราบค่าแฮชและตัวเลขที่ต่อกันสำหรับแต่ละค่าแฮช

ตัวอย่างเช่น:

สมมติว่าความลับคือ "Pa55word" จากนั้นเราจะแฮชค่าต่อไปนี้ และให้ฝ่ายตรงข้ามทราบจำนวนเต็มและค่าแฮชสำหรับแต่ละแฮช:

Pa55word0,

Pa55word1,

Pa55word2,

ปา55เวิร์ด3...

จากนั้น - คำถามของฉันคือ - หากฝ่ายตรงข้ามได้รับประโยชน์จากการค้นหาความลับเมื่อรู้ส่วนหนึ่งของค่าแฮชและแฮชสำหรับหลาย ๆ กรณี เขาอยู่ในสถานการณ์ที่ดีกว่าการรู้อินสแตนซ์เดียวที่เขารู้ส่วนหนึ่งของข้อความที่ชัดเจนและแฮชหรือไม่

หรือพูดง่ายๆ ก็คือ แผนมีความปลอดภัยหรือไม่?

kelalaka avatar
in flag
ยินดีต้อนรับสู่ Cryptography.SE. ความลับจะขนาดไหน? ผู้โจมตีจะไม่ดำเนินการโจมตีด้วยภาพล่วงหน้า มันจะค้นหาความลับ ดังนั้นหากมี [พื้นที่ป้อนข้อมูลขนาดเล็ก](https://crypto.stackexchange.com/a/81652/18298) ก็จะไปหามัน เป้าหมายที่แท้จริงของคุณคืออะไร?
Thomas Sylvest avatar
in flag
ขอบคุณ @kelalaka ฉันจินตนาการว่าความลับจะเป็น guid ที่สร้างขึ้นแบบสุ่ม (หรืออาจเป็น guid สองตัว) กรณีการใช้งานจริงเกี่ยวข้องกับกลไกการโทรกลับทางอินเทอร์เน็ต สิ่งที่ฉันพยายามทำให้สำเร็จคือการตรวจสอบว่าข้อความโทรกลับที่ได้รับนั้นสอดคล้องกับคำขอที่ค้างอยู่โดยไม่ต้องทำการค้นหารหัสในฐานข้อมูล หวังว่าสิ่งนี้จะทำให้ระบบมีความยืดหยุ่นมากขึ้นต่อการโจมตีแบบปฏิเสธการให้บริการ
poncho avatar
my flag
@kelalaka: ความปลอดภัยของระบบนี้ไม่ได้ติดตามโดยตรงจากการต่อต้าน preimage; มันถามเกี่ยวกับการรักษาความปลอดภัยจากพรีอิมเมจที่เกี่ยวข้องจำนวนหนึ่ง ซึ่งเราเชื่อว่า SHA-256 นั้นปลอดภัย แต่มันไม่ได้เป็นไปตามข้อสมมติฐานด้านความปลอดภัยแฮชมาตรฐานข้อใดข้อหนึ่งจากสามข้อ
kelalaka avatar
in flag
@poncho ใช่นั่นเป็นวิธีที่ดีกว่าในการกำหนด
Score:0
ธง in

โดยเฉพาะอย่างยิ่งสำหรับ SHA256 นั้นง่ายกว่าที่จะโต้แย้งเกี่ยวกับความปลอดภัยของสิ่งนี้ (ไม่ใช่หลักฐานที่เป็นทางการ) หากเราลดการสรุปและการเติมแฮช ในการก่อสร้าง Merkle Damgard คุณสามารถขยายความยาวได้ ใช้แฮชที่รู้จัก และคำนวณแฮชของข้อความธรรมดาที่ไม่รู้จักเหมือนกันกับส่วนต่อท้ายที่เลือก

หากกำหนด H(x) คุณสามารถคำนวณ H(x||c) โดยไม่ต้องรู้ค่า x ตามมาว่าการบอกผู้ใช้ H(x||c),c เพิ่มเติมจาก H(x) ไม่ได้ช่วยในการแยก x อย่างเห็นได้ชัด .

เนื่องจากการขยายสิ่งนี้ไม่ได้ถือโดยตรงสำหรับ SHA256 แต่ฉันยังคงเห็นว่านี่เป็นข้อโต้แย้งที่ชัดเจนในเรื่องความปลอดภัย เช่น การรู้จัก SHA256(x||c),c สำหรับค่าหลายค่าของ c ไม่ได้ทำให้การค้นหา x ง่ายขึ้นมากนัก เมื่อเทียบกับการรู้จัก SHA256(x) เท่านั้น

สำหรับ SHA256 เราสามารถขยายได้ แต่ไม่ใช่สำหรับส่วนต่อท้ายตามอำเภอใจ เราต้องเริ่มต้นด้วยการเติมเป็นบล็อกถัดไป แต่นั่นค่อนข้างใกล้เคียง

poncho avatar
my flag
ตรรกะนั้นดูเหมือนจะนำไปใช้ได้ (โดยมีเพียงสมมติฐานเดียวที่เป็นไปได้) ในกรณีที่ $x$ มีความยาวหลายเท่าของ 64 ไบต์ (โดยมีข้อสันนิษฐานที่เป็นไปได้ว่า SHA-256 ที่ไม่มีช่องว่างภายในนั้นสามารถต้านทานภาพล่วงหน้าสำหรับข้อความหลายเท่าของ 64 ไบต์ ). ตอนนี้มันใช้ไม่ได้กับความยาวอื่น ๆ (เนื่องจากไบต์จาก $c$ ถูกกวนด้วยไบต์จาก $x$ ในการตั้งเวลาข้อความ) แต่มันดีกว่าที่ฉันคิดอย่างแน่นอน - ขอบคุณ
Meir Maor avatar
in flag
แน่นอนคุณถูกต้องเกี่ยวกับความยาวของนาฬิกา สำหรับส่วนต่อท้ายที่เฉพาะเจาะจงมาก ผู้โจมตีสามารถขยายความยาวได้ และเนื่องจากสถานการณ์ที่เสนอในคำถามไม่มีผู้โจมตี การเลือกคำต่อท้าย เว้นแต่จะมีช่องโหว่เฉพาะต่อท้าย การโจมตีจึงจะทำงานกับตัวแปรที่ขยายความยาวได้ และดังนั้นจึงทำงานกับแฮชดิบด้วย

โพสต์คำตอบ

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