เครื่องมือสร้างแฮช MD5

ป้อนข้อความที่ต้องการแฮช

ป้อนข้อความ เลือก MD5 แล้วเครื่องมือจะคืนค่าไดเจสต์ 128 บิตของข้อความนั้นในรูปเลขฐานสิบหก 32 อักขระ การรันครั้งเดียวกันยังแสดงไดเจสต์ SHA-1, SHA-256, SHA-384, SHA-512 และ CRC32 ด้วย เพื่อให้คุณคัดลอกค่าที่ต้องการได้

วิธีสร้างแฮช MD5

  1. 1

    ป้อนข้อความ

    วางหรือพิมพ์สตริงที่ต้องการแฮช ทุกอักขระมีผล รวมถึงช่องว่างและการขึ้นบรรทัดใหม่

  2. 2

    เลือก MD5

    เลือก MD5 ในรายการอัลกอริทึม ค่าเริ่มต้นคือ SHA-256 จึงต้องเปลี่ยนก่อนดำเนินการต่อ

  3. 3

    สร้างแฮช

    คลิกปุ่มสร้าง ไดเจสต์ MD5 จะปรากฏเป็นเลขฐานสิบหกตัวพิมพ์เล็ก 32 อักขระ

  4. 4

    คัดลอกไดเจสต์

    ใช้ปุ่มคัดลอกที่อยู่ข้างผลลัพธ์ MD5 แล้ววางในตำแหน่งที่ต้องการ

หน้าตาของแฮช MD5

MD5 ให้ผลลัพธ์ 128 บิตเสมอ เขียนเป็นเลขฐานสิบหก 32 อักขระ ไม่ว่าอินพุตจะเป็นตัวอักษรเดียวหรือทั้งบทของหนังสือ อินพุตเดิมให้ผลลัพธ์เดิมเสมอ และการเปลี่ยนแปลงเพียงหนึ่งอักขระจะให้ไดเจสต์ที่ต่างไปโดยสิ้นเชิง

อินพุต ไดเจสต์ MD5
hello 5d41402abc4b2a76b9719d911017c592
Hello 8b1a9953c4611296a827abf8c47804d7
hello world 5eb63bbbe01eeed093cb22bb8f5acdc3

ระหว่างสองแถวแรกมีเพียงตัวอักษรตัวแรกที่เปลี่ยน แต่ไดเจสต์ทั้งสองไม่มีส่วนใดตรงกันเลย นี่คือพฤติกรรมแบบหิมะถล่ม (avalanche) ที่คุณควรคาดหวังจากฟังก์ชันแฮชทุกตัว

การใช้งาน MD5 ที่ยังพบได้

  • คีย์แคชและ ETag: ใช้เป็นลายนิ้วมือสั้นและคงที่ของสตริงหรือเนื้อหาการตอบกลับ
  • การตัดข้อมูลซ้ำ: ข้อความที่เหมือนกันจะได้ไดเจสต์เดียวกัน การเทียบ 32 อักขระจึงประหยัดกว่าการเทียบเนื้อหายาว ๆ
  • ระบบเดิม: ฐานข้อมูล API และฟีดรุ่นเก่าบางระบบยังจัดเก็บหรือต้องการค่า MD5 และคุณอาจต้องสร้างค่านั้นให้ตรงทุกประการ
  • ตรวจสอบความเสียหายโดยบังเอิญ: เมื่อไดเจสต์ตรงกัน ความเป็นไปได้ที่การส่งข้อมูลจะผิดพลาดจึงต่ำมาก

สิ่งที่ไม่ควรใช้ MD5 ทำ

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

แฮชไบต์ที่คุณต้องการให้ตรง

ไดเจสต์คำนวณจากไบต์ UTF-8 ของข้อความ ช่องว่างหรือการขึ้นบรรทัดใหม่ที่ท้ายข้อความก็เปลี่ยนผลลัพธ์ได้ ตัวอย่างเช่น MD5 ของ hello ตามด้วยการขึ้นบรรทัดใหม่คือ b1946ac92492d2347c6235b4d2611184 ไม่ใช่ค่าในตารางด้านบน หากไดเจสต์ของคุณไม่ตรงกับระบบอื่น ให้ตรวจสอบช่องว่างที่มองไม่เห็นก่อน

เปรียบเทียบ MD5 กับไดเจสต์อื่น

อัลกอริทึม จำนวนบิต จำนวนอักขระฐานสิบหก
CRC32 32 8
MD5 128 32
SHA-1 160 40
SHA-256 256 64
SHA-512 512 128

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

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

ยาว 32 อักขระฐานสิบหกเสมอ คือ 128 บิต ความยาวไม่ขึ้นกับขนาดของอินพุต

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

โดยปกติเกิดจากการขึ้นบรรทัดใหม่ท้ายข้อความ ช่องว่างที่เกินมา หรือการเข้ารหัสตัวอักษรที่ต่างกัน เครื่องมือนี้แฮชไบต์ UTF-8 ของสิ่งที่คุณพิมพ์ทุกประการ

ไม่ได้ เครื่องมือแฮชเฉพาะข้อความที่คุณป้อน สำหรับไฟล์ ให้ใช้คำสั่งตรวจสอบค่า checksum ของระบบปฏิบัติการของคุณ

เครื่องมือที่เกี่ยวข้อง

รหัสแปลงตัวเลขเป็นตัวอักษร

แปลงตัวเลขเป็นตัวอักษรและย้อนกลับด้วยรหัส A=1, B=2 (A1Z26) สำหรับปริศนา คำทาย และเบาะแสในห้องเอสเคปรูม

เครื่องมือเข้ารหัส Vigenère

เข้ารหัสและถอดรหัสข้อความด้วยรหัส Vigenère แบบคลาสสิกโดยใช้คำสำคัญ เลื่อนตัวอักษรละติน A-Z พร้อมคงตัวพิมพ์ใหญ่-เล็ก ช่องว่าง และเครื่องหมายวรรคตอน

ตัวสร้าง TOTP

สร้างรหัสผ่านแบบใช้ครั้งเดียวตามเวลา (RFC 6238) จากคีย์ลับ Base32 รองรับ SHA-1, SHA-256, SHA-512 จำนวน 6 ถึง 8 หลัก และช่วงเวลา 30 หรือ 60 วินาที

เครื่องมือเข้ารหัสข้อความ

เข้ารหัสและถอดรหัสข้อความโดยใช้ AES พร้อมรหัสผ่าน เพื่อให้มีเพียงผู้รับเท่านั้นที่สามารถอ่านข้อความได้

เครื่องแปลง Wei เป็น Ether

แปลง Wei เป็น Ether (ETH) ด้วยการคำนวณที่แม่นยำ ไม่มีการปัดเศษแบบจุดลอยตัว 1 ETH = 10^18 Wei

เครื่องสร้างแฮช SHA1

สร้างค่าแฮช SHA-1 (ยาว 40 ตัวอักษรเฮกซาเดซิมอล) จากข้อความใดๆ เหมาะอย่างยิ่งสำหรับการตรวจสอบค่าเช็คซัมแบบดั้งเดิม รหัสประจำออบเจกต์ของ Git และการตรวจสอบความสมบูรณ์ที่ไม่เกี่ยวข้องกับความปลอดภัย

เครื่องมือนี้มีให้บริการในภาษาอื่น

คู่มือและกรณีการใช้งาน