แปลงฟรี

แฮช MD5 เครื่องกำเนิดไฟฟ้า

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

เกี่ยวกับเครื่องมือนี้

MD5 (Message Digest 5) เป็นฟังก์ชันแฮชการเข้ารหัส 128 บิตที่เผยแพร่โดย Ronald Rivest ในปี 1991 โดยรับอินพุตทุกความยาวเท่าใดก็ได้และสร้างเอาต์พุตเลขฐานสิบหกคงที่ 32 อักขระที่กำหนดขึ้นเอง — อินพุตเดียวกันจะสร้างแฮชเดียวกันเสมอ — และเป็นแบบทางเดียว ซึ่งหมายความว่าอินพุตไม่สามารถกู้คืนจากแฮชเพียงอย่างเดียว MD5 เป็นฟังก์ชันแฮชสำหรับวัตถุประสงค์ทั่วไปที่โดดเด่นตลอดช่วงทศวรรษ 1990 และต้นปี 2000 ก่อนที่จะถูกแทนที่ด้วยฟังก์ชันตระกูล SHA-2 เพื่อวัตถุประสงค์ในการเข้ารหัส

MD5 ใช้งานไม่ได้เนื่องจากการใช้การเข้ารหัส การโจมตีการชนกันในทางปฏิบัติ (การค้นหาสองอินพุตที่สร้างแฮชเดียวกัน) ได้รับการสาธิตมาตั้งแต่ปี 2547 และการชนกันของคำนำหน้าที่เลือกสามารถทำได้ในเวลาไม่กี่ชั่วโมงบนฮาร์ดแวร์สินค้าโภคภัณฑ์ อย่าใช้ MD5 สำหรับการแฮชรหัสผ่าน ลายเซ็นดิจิทัล ลายนิ้วมือของใบรับรอง หรือบริบทใดๆ ที่การต้านทานการชนกันมีความสำคัญ SHA-256 และ bcrypt เป็นสิ่งทดแทนที่เหมาะสม

MD5 ยังคงมีประโยชน์สำหรับการตรวจสอบที่ไม่ใช่การเข้ารหัสซึ่งการต้านทานการชนไม่ใช่คุณสมบัติด้านความปลอดภัย: การตรวจจับความเสียหายของไฟล์โดยไม่ตั้งใจ การขจัดการอัปโหลดที่ซ้ำกันในระบบที่คุณควบคุม และสร้างตัวระบุแบบสั้นสำหรับคีย์แคช ตัวสร้างนี้รันทั้งหมดในเบราว์เซอร์ของคุณโดยใช้ JavaScript MD5 ไม่มีอินพุตออกจากอุปกรณ์ของคุณ

เหตุใดจึงต้องสร้างแฮช MD5

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

MD5 ยังมีประโยชน์ในฐานะตัวระบุแบบสั้นตามที่กำหนดอีกด้วย เลเยอร์การแคช ระบบขจัดความซ้ำซ้อน และการสร้าง ETag มักจะแฮชเนื้อหาด้วย MD5 เนื่องจากผลลัพธ์นั้นสั้น ประมวลผลได้เร็ว และดีเพียงพอสำหรับจุดประสงค์ที่ไม่เกี่ยวกับความปลอดภัย การออกแบบใหม่ควรใช้ SHA-256 หรือ xxHash แต่ระบบที่มีอยู่ซึ่งใช้ MD5 สำหรับตัวระบุจะไม่ปลอดภัยในบทบาทนี้

วิธีใช้งาน

วางข้อความหรืออัปโหลดไฟล์ รับแฮชฐานสิบหก 32 ตัวอักษร

  1. เพิ่มอินพุต: วางข้อความหรืออัปโหลดไฟล์ แฮชเชอร์ยอมรับอินพุตตามอำเภอใจ เช่น สตริง ไฟล์ไบนารี เอกสารขนาดใหญ่
  2. คำนวณ: อัลกอริธึม MD5 ประมวลผลอินพุตในบล็อก 512 บิต ใช้ฟังก์ชันไม่เชิงเส้นสี่รอบและการเพิ่มโมดูลาร์ และสร้างไดเจสต์ 128 บิต การใช้งานเป็นแบบฝั่งเบราว์เซอร์และทำงานในหน่วยมิลลิวินาทีสำหรับอินพุตทั่วไป
  3. อ่านแฮช: เอาต์พุตเป็นอักขระเลขฐานสิบหก 32 ตัว ซึ่งเป็นการแสดงข้อความมาตรฐานของการย่อยแบบ 128 บิต คัดลอกเพื่อตรวจสอบหรือจัดเก็บ
  4. เปรียบเทียบกับมูลค่าที่คาดหวัง: หากคุณมีแฮชอ้างอิงที่เผยแพร่ ให้เปรียบเทียบอักขระต่ออักขระ ความแตกต่างใดๆ หมายความว่าข้อมูลเข้าไม่เป็นไปตามที่คุณคาดหวัง

กรณีการใช้งานทั่วไป

รายละเอียดทางเทคนิค

MD5 ประมวลผลอินพุตในบล็อก 512 บิต (64 ไบต์) แต่ละบล็อกจะอัปเดตสถานะภายใน 128 บิตผ่านการดำเนินการสี่รอบ แต่ละรอบใช้ฟังก์ชันไม่เชิงเส้น การเพิ่มโมดูลาร์ และการหมุนระดับบิตที่แตกต่างกัน สถานะสุดท้ายคือการย่อย

อัลกอริธึมจำเป็นต้องมีการเติม: อินพุตจะถูกต่อท้ายด้วย 1 บิต จากนั้น 0 บิต จากนั้นฟิลด์ความยาว 64 บิต เพื่อให้ความยาวทั้งหมดเป็นผลคูณของ 512 บิต เพื่อให้แน่ใจว่าทุกอินพุตมีการเข้ารหัสที่นำหน้าความยาวไม่ซ้ำกัน

เอาต์พุตจะถูกแปลเป็น 16 ไบต์ตามลำดับ little-endian จากนั้นพิมพ์เป็นอักขระฐานสิบหก 32 ตัว เครื่องมือบางตัวพิมพ์ตัวพิมพ์ใหญ่, ตัวพิมพ์เล็ก; ค่าจะเท่ากัน

แนวทางปฏิบัติที่ดีที่สุด

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

ฉันสามารถปรับแต่งเอาต์พุตที่สร้างขึ้นได้หรือไม่
ใช่. เครื่องมือนี้มีตัวเลือกการปรับแต่งที่หลากหลายเพื่อปรับแต่งผลลัพธ์ให้ตรงตามความต้องการเฉพาะของคุณ ปรับการตั้งค่าก่อนสร้างหรือสร้างใหม่ด้วยตัวเลือกต่างๆ
เนื้อหาที่สร้างขึ้นใช้งานได้ฟรีหรือไม่?
ใช่. ทุกสิ่งที่คุณสร้างด้วยเครื่องมือนี้เป็นของคุณเพื่อใช้เพื่อวัตถุประสงค์ส่วนตัว การศึกษา หรือเชิงพาณิชย์โดยไม่มีข้อจำกัดหรือข้อกำหนดการระบุแหล่งที่มา
สิ่งนี้จำเป็นต้องมีบัญชีหรือไม่?
ไม่ เครื่องมือนี้พร้อมใช้งานทันทีโดยไม่ต้องสมัคร ไม่มีอีเมล และไม่ต้องลงทะเบียน เพียงเปิดหน้าและเริ่มสร้าง
ข้อมูลอินพุตของฉันถูกเก็บไว้เป็นส่วนตัวหรือไม่?
ใช่. การประมวลผลทั้งหมดเกิดขึ้นในเบราว์เซอร์ของคุณ ข้อมูลอินพุตและเอาต์พุตที่สร้างขึ้นจะไม่ถูกส่งไปยังเซิร์ฟเวอร์ภายนอกใดๆ
เลขฐานสิบหกตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กถูกต้องหรือไม่
ทั้งสองมีความเท่าเทียมกัน การใช้งานส่วนใหญ่จะสร้างตัวพิมพ์เล็กตามค่าเริ่มต้น การเปรียบเทียบควรคำนึงถึงขนาดตัวพิมพ์
ข้อมูลของฉันถูกอัพโหลดไปยังเซิร์ฟเวอร์หรือไม่?
ไม่ การแฮชเกิดขึ้นทั้งหมดในเบราว์เซอร์ของคุณ
MD5 และ SHA-1 แตกต่างกันอย่างไร
SHA-1 เป็นฟังก์ชันแฮช 160 บิตที่แตกต่างกัน SHA-1 ยังใช้งานไม่ได้สำหรับการใช้การเข้ารหัสในปี 2560 ทั้งสองแบบยอมรับได้สำหรับการใช้งานที่ไม่เกี่ยวกับความปลอดภัย ไม่ควรใช้ในกรณีที่ความต้านทานการชนมีความสำคัญ
อินพุตที่ต่างกันสองตัวสามารถสร้าง MD5 เดียวกันได้หรือไม่
ใช่ — นั่นคือการชนกัน การชนกันแบบสุ่มนั้นไม่น่าจะเป็นไปได้ในทางดาราศาสตร์ แต่การชนกันที่จงใจสร้างขึ้นนั้นสามารถคำนวณได้จริงแล้ว