Toolora

สร้างค่าแฮช

วางข้อความแล้วได้ค่าแฮชครบทั้งห้าแบบพร้อมกัน ทุกอย่างคำนวณบนเครื่องของคุณ

ค่าแฮช

ค่าแฮชจะปรากฏที่นี่เมื่อคุณพิมพ์

คำนวณในเบราว์เซอร์ของคุณ ข้อความที่วางไม่ถูกอัปโหลด

วิธีใช้งาน

  1. พิมพ์หรือวางข้อความ ค่าแฮชทั้งห้าจะอัปเดตทันทีขณะพิมพ์ ไม่ต้องกดปุ่มใด
  2. ข้อความจะถูกเข้ารหัสเป็น UTF-8 ก่อนคำนวณ ภาษาไทย อิโมจิ และอักษรที่มีเครื่องหมายกำกับ จึงได้ค่าแฮชตรงกับที่คำนวณจากที่อื่น
  3. กดปุ่มคัดลอกข้าง ๆ ค่าแฮชที่ต้องการเพื่อคัดลอกไปใช้งาน
  4. การแฮชให้ผลคงที่เสมอ ข้อความเดิมได้ค่าเดิมทุกครั้ง และถ้าเปลี่ยนแม้เพียงตัวอักษรเดียว ค่าแฮชจะเปลี่ยนไปทั้งหมด

ควรเลือกอัลกอริทึมไหน

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

  • SHA-256 คือตัวเลือกมาตรฐานที่ควรใช้ เป็นสิ่งที่ซอฟต์แวร์สมัยใหม่ ใบรับรอง และบล็อกเชนใช้กัน และยังไม่มีวิธีโจมตีที่ทำได้จริง
  • SHA-384 และ SHA-512 ปลอดภัยเท่ากันและให้ค่าแฮชที่ยาวกว่า บนเครื่อง 64 บิต SHA-512 มักเร็วกว่า SHA-256 ด้วยซ้ำ
  • MD5 และ SHA-1 ถูกเจาะได้แล้วในเชิงการเข้ารหัส นักวิจัยสร้างไฟล์สองไฟล์ที่ต่างกันแต่ได้ค่าแฮชเดียวกันได้ และเคยสาธิตกับไฟล์ PDF และใบรับรอง TLS จริงมาแล้ว
  • แต่ "ถูกเจาะได้" ไม่ได้แปลว่าใช้ไม่ได้เลย MD5 และ SHA-1 ยังเหมาะกับการตรวจจับความเสียหายที่เกิดโดยบังเอิญ เช่น ตรวจว่าไฟล์ดาวน์โหลดครบหรือไม่ ใช้เป็นคีย์แคช หรือหาไฟล์ซ้ำ เพราะสถานการณ์เหล่านี้ไม่มีผู้โจมตีเข้ามาเกี่ยวข้อง

อย่าใช้แฮชเหล่านี้กับรหัสผ่าน

นี่คือการใช้ผิดที่พบบ่อยที่สุด จึงขอพูดให้ชัด อัลกอริทึมเหล่านี้ถูกออกแบบมาให้เร็ว ซึ่งเป็นคุณสมบัติที่ผิดโดยสิ้นเชิงสำหรับรหัสผ่าน การ์ดจอสมัยใหม่ทดลองรหัสได้หลายพันล้านครั้งต่อวินาทีกับค่าแฮช MD5 หรือ SHA-256 การเก็บรหัสผ่านต้องใช้ฟังก์ชันที่ตั้งใจให้ช้าและมีการเติมค่าสุ่ม เช่น bcrypt, scrypt หรือ Argon2 การเติมค่าสุ่มเองลงใน SHA-256 ไม่ได้แก้ปัญหานี้ เพราะต้นเหตุคือความเร็ว ไม่ใช่ค่าสุ่ม

ข้อความที่วางไม่ออกจากเครื่องคุณ

ค่าแฮชถูกคำนวณในเบราว์เซอร์ของคุณ ตั้งแต่ SHA-1 ถึง SHA-512 ใช้ Web Crypto API ที่มีอยู่ในเบราว์เซอร์เอง ส่วน MD5 ทำงานเป็น JavaScript บนหน้าเว็บ ไม่มีเซิร์ฟเวอร์ให้ส่งข้อความไป ซึ่งสำคัญมากสำหรับเครื่องมือที่คนมักวาง API key โทเคน หรือบันทึกส่วนตัวลงไป ลองโหลดหน้าเว็บแล้วตัดอินเทอร์เน็ตดูได้ เครื่องมือยังทำงานปกติ

คำถามที่พบบ่อย

ถอดรหัสค่าแฮชกลับเป็นข้อความเดิมได้ไหม
ไม่ได้ การแฮชเป็นทางเดียวโดยการออกแบบ ค่าแฮชคือลายนิ้วมือขนาดคงที่ ไม่ได้เก็บข้อความต้นฉบับไว้ข้างใน เว็บที่โฆษณาว่า "ถอดรหัส MD5" คือการเอาค่าแฮชของคุณไปค้นในตารางที่คำนวณไว้ล่วงหน้าจากข้อความยอดนิยม มันจะเจอ "password123" แต่จะไม่เจอสิ่งที่คุณตั้งใจเลือกมาอย่างดี
ทำไม MD5 กับ SHA-1 ถึงมีคำเตือน
ทั้งคู่ถูกโจมตีแบบชนกันได้จริง คือผู้โจมตีสร้างข้อมูลสองชุดที่ต่างกันแต่ได้ค่าแฮชเดียวกันได้ เคยมีการสาธิตกับใบรับรอง TLS จริงในกรณี MD5 และกับไฟล์ PDF จริงในกรณี SHA-1 หากคุณใช้ค่าแฮชเพื่อพิสูจน์ว่าข้อมูลไม่ถูกแก้ไข ให้ใช้ SHA-256 ขึ้นไป แต่ถ้าใช้ตรวจว่าไฟล์ดาวน์โหลดเสียหายระหว่างทางหรือไม่ MD5 ยังเพียงพอ
ทำไมค่าแฮชเปลี่ยนทั้งที่ข้อความดูเหมือนเดิม
เกือบทุกครั้งเกิดจากช่องว่างท้ายข้อความ การขึ้นบรรทัดใหม่ที่ท้ายไฟล์ หรือรูปแบบการขึ้นบรรทัดที่ต่างกันระหว่าง Windows กับ Unix การแฮชแม่นยำระดับไบต์ ไบต์เดียวที่มองไม่เห็นก็เปลี่ยนค่าแฮชทั้งหมด ลองเทียบจำนวนตัวอักษรของทั้งสองข้อความมักเจอต้นเหตุ
ค่าแฮชของข้อความไทยต่างจากคำแปลภาษาอังกฤษไหม
ต่างกันโดยสิ้นเชิง ค่าแฮชคำนวณจากไบต์ UTF-8 ตัวอักษรที่ต่างกันจึงให้ค่าแฮชที่ไม่เหมือนกันเลย ทั้งนี้อักษรไทยใช้พื้นที่สามไบต์ต่อตัวขณะที่อังกฤษใช้หนึ่งไบต์ แต่มีผลแค่กับความยาวข้อมูลนำเข้าเท่านั้น ไม่มีผลกับขนาดผลลัพธ์ ค่าแฮช SHA-256 ยาว 64 ตัวอักษรเสมอไม่ว่าจะใส่อะไรเข้าไป
ใช้ตรวจสอบไฟล์ที่ดาวน์โหลดมาได้ไหม
เครื่องมือนี้แฮชข้อความ ไม่ใช่ไฟล์ จึงใช้กับไฟล์ดาวน์โหลดขนาดใหญ่โดยตรงไม่ได้ แต่ถ้าเป็นการตรวจสอบข้อมูลที่เป็นข้อความ เช่น เทียบไฟล์ตั้งค่า ลายนิ้วมือใบรับรอง หรือรายการสั้น ๆ ก็วางเนื้อหาลงไปแล้วเทียบค่าแฮชกับที่ได้รับมาได้
ใช้กับงานที่ต้องการความปลอดภัยสูงได้หรือไม่
ตัวค่าแฮชที่ได้ถูกต้องและเป็นไปตามมาตรฐาน แต่หากคุณจัดการกับข้อมูลลับ ควรระลึกว่าเบราว์เซอร์และส่วนขยายที่ติดตั้งไว้มองเห็นสิ่งที่คุณวางลงในหน้าเว็บได้ สำหรับข้อมูลที่อ่อนไหวจริง ๆ แนะนำให้ใช้เครื่องมือบนเครื่องอย่าง shasum หรือ certutil แทน