เครื่องสร้าง Hash
สร้าง hash MD5, SHA-1, SHA-256, SHA-512
เกิดข้อผิดพลาด
ฟังก์ชันแฮชคืออะไร?
ฟังก์ชันแฮชแปลงข้อมูลความยาวใดก็ได้เป็นสตริงความยาวคงที่ (digest) แบบทิศทางเดียว MD5(128 บิต), SHA-1(160 บิต), SHA-256(256 บิต), SHA-512(512 บิต) คือตัวอย่างอัลกอริทึม อินพุตเดียวกันให้เอาท์พุตเดียวกันเสมอ แต่ไม่สามารถย้อนกลับจากเอาท์พุตเพื่อหาอินพุตได้
ทำไม MD5 และ SHA-1 ถูกมองว่า "แตกหัก"?
MD5 และ SHA-1 ได้รับการพิสูจน์แล้วว่ามีช่องโหว่การโจมตีแบบ collision (อินพุตต่างกันแต่ได้แฮชเดียวกัน) จึงไม่แนะนำสำหรับความปลอดภัย SHA-256 และ SHA-512 ยังคงปลอดภัย อย่างไรก็ตาม การแฮชรหัสผ่านควรใช้ bcrypt หรือ Argon2 ที่ออกแบบมาให้ทำงานช้าโดยเจตนา
การตรวจสอบความสมบูรณ์ของไฟล์
หลังดาวน์โหลด เปรียบเทียบ SHA-256 checksum กับค่าทางการเพื่อยืนยันว่าไฟล์ไม่ถูกดัดแปลง วิธีนี้พบบ่อยกับ ISO Linux และตัวติดตั้งซอฟต์แวร์ "Avalanche effect" หมายความว่าแม้แค่ 1 บิตเปลี่ยน แฮชก็จะเปลี่ยนอย่างสิ้นเชิง
ทำไมไม่ควรใช้ SHA-256 เก็บรหัสผ่าน
SHA-256 เร็วเกินไป — นี่คือปัญหา GPU สมัยใหม่คำนวณแฮชได้หลายพันล้านครั้งต่อวินาที ทำให้การโจมตีแบบ brute-force กับรหัสผ่านทั่วไปง่ายมาก bcrypt และ Argon2 ถูกออกแบบโดยเจตนาให้ช้าและใช้หน่วยความจำมาก รวมถึงใช้ salt ทำให้รหัสผ่านเดียวกันได้แฮชต่างกัน
บล็อคเชนและแฮช
Proof-of-Work ของ Bitcoin กำหนดให้นักขุดหาค่า nonce ที่ทำให้ SHA-256 สองชั้นขึ้นต้นด้วยศูนย์จำนวนหนึ่ง แต่ละบล็อคมีแฮชของบล็อคก่อนหน้า หากแก้ไขธุรกรรมในอดีต แฮชของบล็อคทั้งหมดหลังจากนั้นจะเปลี่ยน ซึ่ง node ใดก็ตรวจพบได้ทันที