Score:0

รหัสผ่านแบบยาวที่สร้างขึ้นแบบสุ่มมีความปลอดภัยมากกว่าจำนวนรอบที่สูงกว่าใน PBKDF หรือไม่

ธง ua

โดยปกติข้อกำหนดสำหรับรหัสผ่านคือควรใส่เกลือและใช้จำนวนรอบสูง

ความเข้าใจของฉันคือ:

  1. การใส่รหัสผ่านจะใช้เพื่อป้องกันการโจมตีแบบเรนโบว์เท่านั้น
  2. การใช้จำนวนรอบสูงจะใช้เพื่อป้องกันรหัสผ่านสั้นๆ ที่ดุร้ายเท่านั้น

แต่ถ้ารหัสผ่านถูกสร้างขึ้นโดยคอมพิวเตอร์และใช้เฉพาะในวิธีอัตโนมัติระหว่างระบบระยะไกล 2 ระบบ จะปลอดภัยหรือไม่ที่จะใส่เกลือ แต่อย่าแฮชรหัสผ่านหลายๆ รอบ การใช้รหัสผ่านที่สร้างขึ้นแบบสุ่มที่ยาวเป็นพิเศษ (เช่น รหัสผ่าน 256 บิต) จะเพียงพอที่จะหลีกเลี่ยงการใช้หลายรอบหรือไม่ แค่เกลือจะเพียงพอหรือไม่?

Paul Uszak avatar
cn flag
มันอาจจะคุ้มค่าที่จะคำนึงถึงความแตกต่างระหว่างรหัสผ่านเช่น "SECRET" และรหัสผ่าน 256 บิตซึ่งอยู่ใกล้กับคีย์มากกว่า
kelalaka avatar
in flag
ขออภัย เราไม่สามารถวัดจำนวนคำถามของคุณได้หากคุณมีเครื่องสร้างตัวเลขสุ่มแบบปลอดภัย (CSPRNG) ให้แฮชเพื่อสร้างรหัสผ่าน/คีย์ของคุณ หากคุณจำผลลัพธ์ได้ทุกอย่างก็ดี
Score:1
ธง in

การใส่รหัสผ่านจะใช้เพื่อป้องกันการโจมตีแบบเรนโบว์เท่านั้น

นั่นไม่ถูกต้องทั้งหมด คุณสามารถแยกความแตกต่างของรหัสผ่านที่เหมือนกันได้อย่างง่ายดายหากไม่มีเกลือ (หรือข้อมูลอื่น) ที่ใช้แยกความแตกต่างระหว่างกรณีการใช้งานหรือผู้ใช้จริงๆ

การใช้จำนวนรอบสูงจะใช้เพื่อป้องกันรหัสผ่านสั้นๆ ที่ดุร้ายเท่านั้น

ก็ใช่ แฮชปกติเป็นแบบทางเดียวอยู่แล้ว และคุณต้องการเกลือเพื่อจุดประสงค์ข้างต้น ดังนั้นเหตุผลเดียวที่จะใช้การนับการวนซ้ำหรือปัจจัยการทำงานคือการให้ผู้โจมตีทำการวนซ้ำพื้นฐานเช่นกัน

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

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

นั่นไม่ใช่รหัสผ่าน นั่นเป็นความลับ หากคุณใช้อย่างถูกต้อง คุณอาจไม่ต้องการเกลือด้วยซ้ำ แม้ว่าคุณจะต้องจำไว้ว่าความลับนั้นยังคงเหมือนเดิมในโปรโตคอลที่คุณใช้ (เช่น สำหรับการเข้ารหัส คุณต้องใช้ IV หรือ nonce เพื่อ ตรวจสอบให้แน่ใจว่าผลลัพธ์ไม่ได้เป็นตัวกำหนด)

การใช้รหัสผ่านที่สร้างขึ้นแบบสุ่มที่ยาวเป็นพิเศษ (เช่น รหัสผ่าน 256 บิต) จะเพียงพอที่จะหลีกเลี่ยงการใช้หลายรอบหรือไม่

ไม่มีสิ่งที่เรียกว่ารหัสผ่าน 256 บิต รหัสผ่านประกอบด้วยข้อความ ไม่ใช่ไบนารี 256 บิตสุ่มเป็นเรื่องปกติสำหรับ กุญแจ เช่น คีย์ AES-256 หรือคีย์ที่ใช้สำหรับ HMAC-256

รหัสผ่านอาจมีเอนโทรปี 256 บิต กระจายไปทั่ว มากมาย ตัวละคร แต่มนุษย์ไม่สามารถจำรหัสผ่านดังกล่าวได้สำหรับการทำงานปกติตัวอย่างเช่น หากคุณต้องการใช้ ASCII กับอักขระพิเศษที่เป็นไปได้ทั้งหมด (โดยไม่ต้องเว้นวรรค) คุณจะต้องมีรหัสผ่านแบบสุ่มทั้งหมด 39 อักขระ ($\log_{92}(2^{256})$ ในกรณีที่ต้องการตรวจสอบ)

และใช่ สำหรับคีย์ลับ คุณไม่จำเป็นต้องนับการวนซ้ำ หรือ PBKDF ในที่แรก. หากต้องการเกลือหรือไม่นั้นขึ้นอยู่กับว่าจะใช้อย่างไร คุณไม่จำเป็นต้องใช้ครั้งเดียว หากคุณต้องการ KDF คุณสามารถใช้ Key Based KDF เช่น HKDF

Kernel James avatar
ua flag
`ดังนั้นเหตุผลเดียวที่จะใช้การนับซ้ำหรือปัจจัยการทำงานก็คือให้ผู้โจมตีดำเนินการหลายรอบของพื้นฐานพื้นฐานเช่นกัน' สิ่งนี้จะใช้เพื่อหลีกเลี่ยงการโจมตีด้วยกำลังดุร้ายเท่านั้นหรือไม่ ฉันสามารถบรรลุผลแบบเดียวกันโดยไม่ต้องใช้ค่าใช้จ่ายในการคำนวณโดยเพิ่มการหน่วงเวลา (เช่น 1 วินาที) ในแต่ละคำขอได้หรือไม่ แม้ว่าผู้โจมตีสามารถทำการโจมตีแบบคู่ขนานกันได้ แต่ถึงกระนั้นขนาดของกุญแจก็ใหญ่พอที่จะทำให้กำลังเดรัจฉานไร้เหตุผล?

โพสต์คำตอบ

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