เครื่องสร้างค่า MD5
MD5 สร้างค่าไดเจสต์ขนาด 128 บิต (เทียบเท่า 32 ตัวอักษรฐานสิบหก) จากข้อมูลนำเข้าใดๆ ไม่ว่าจะเป็นข้อความ ไฟล์ หรือสตรีม แม้ว่าจะถูกเจาะสำหรับงานเข้ารหัสตั้งแต่ปี 2004 แล้ว แต่ MD5 ก็ยังเป็นมาตรฐานสำหรับการตรวจสอบความสมบูรณ์อย่างรวดเร็ว เช่น การตรวจสอบการดาวน์โหลดแพ็กเกจ การสร้างลายนิ้วมือเพื่อกำจัดข้อมูลซ้ำ และการตั้งชื่อ git blob ในบางกรณี เพียงวางข้อความหรือลากไฟล์มาวาง เครื่องมือก็จะคืนค่าไดเจสต์แบบฐานสิบหกให้ในเครื่องของคุณ โดยไม่อัปโหลดข้อมูลใดๆ
วิธีสร้างค่าแฮช MD5
-
1
เลือกข้อมูลนำเข้า
ช่องข้อความสำหรับสตริงใดก็ได้ หรือตัวเลือกไฟล์สำหรับไฟล์ทุกขนาดจนถึงประมาณ 2 GB
-
2
เครื่องมือคำนวณค่า MD5 ในเครื่อง
ไฟล์จะถูกสตรีมเป็นชิ้นๆ เพื่อไม่ให้ไฟล์ขนาดใหญ่กินหน่วยความจำมากเกินไป
-
3
อ่านค่าไดเจสต์ฐานสิบหก
ตัวอักษรฐานสิบหก 32 ตัว, รูปแบบการแสดงผลมาตรฐานของ MD5
-
4
คัดลอกหรือเปรียบเทียบ
เปรียบเทียบกับค่าแฮชที่คาดไว้ (เช่น ค่า MD5 ที่ผู้สร้างแพ็กเกจเผยแพร่) หรือคัดลอกไว้เป็นบันทึกของคุณ
MD5 คืออะไร และไม่ใช่อะไร
- กำหนดผลได้แน่นอน: ข้อมูลนำเข้าชุดเดียวกันจะให้ผลลัพธ์ขนาด 128 บิตเดิมเสมอ
- ความยาวคงที่: ไม่ว่าข้อมูลนำเข้าจะมีขนาดเท่าใด (1 ไบต์หรือ 1 กิกะไบต์) ก็จะให้ผลลัพธ์เป็นตัวอักษรฐานสิบหก 32 ตัว
- ทางเดียว: เมื่อมีค่าไดเจสต์ MD5 แล้ว ไม่สามารถย้อนกลับเพื่อกู้คืนข้อมูลนำเข้าได้ (ยกเว้นข้อมูลขนาดเล็กมากที่มีตารางสายรุ้ง หรือ rainbow tables อยู่)
- ถูกเจาะในฐานะแฮชเชิงเข้ารหัส: การเกิดการชนกัน (collision) คำนวณได้ง่ายมาก ห้ามใช้ MD5 ในกรณีต่อไปนี้:
- การจัดเก็บรหัสผ่าน (ใช้ bcrypt, scrypt, Argon2)
- ลายเซ็นดิจิทัล (ใช้ SHA-256 หรือ SHA-3)
- การลงนามใบรับรอง TLS (เบราว์เซอร์รุ่นใหม่ปฏิเสธ)
- ข้ออ้างเรื่องความสมบูรณ์ที่อ่อนไหวต่อความปลอดภัยซึ่งผู้โจมตีอาจใช้ประโยชน์ได้
กรณีที่ MD5 ยังใช้งานได้ดี
- การตรวจสอบความสมบูรณ์แบบไม่มีผู้ประสงค์ร้าย: ยืนยันว่าไฟล์ไม่เสียหายระหว่างการส่ง
- การกำจัดข้อมูลซ้ำ: การสร้างลายนิ้วมือของข้อมูลที่เหมือนกันในระบบจัดเก็บ
- การสร้าง ETag สำหรับสินทรัพย์แบบสถิตที่เปลี่ยนแปลงน้อย
- คีย์แคช และการแฮชแบบอ้างอิงตามเนื้อหา
ตัวอย่างการใช้งานจริง
| ข้อความนำเข้า | ไดเจสต์ MD5 |
|---|---|
| (สตริงว่าง) | d41d8cd98f00b204e9800998ecf8427e |
a |
0cc175b9c0f1b6a831c399e269772661 |
abc |
900150983cd24fb0d6963f7d28e17f72 |
The quick brown fox jumps over the lazy dog |
9e107d9d372bb6826bd81d3542a419d6 |
The quick brown fox jumps over the lazy dog. (จุดท้ายประโยค) |
e4d909c290d0fb1ca068ffaddf22cbd0 |
สังเกตว่าตัวอักษรเพียงตัวเดียว (จุดท้ายประโยค) เปลี่ยนไดเจสต์ทั้งหมดได้อย่างสิ้นเชิง นี่คือคุณสมบัติแบบหิมะถล่ม (avalanche)
MD5 เทียบกับตระกูล SHA
| ฟังก์ชัน | ขนาดผลลัพธ์ | ถูกเจาะด้วยการชนกันแล้ว? | การใช้งานทั่วไปในปัจจุบัน |
|---|---|---|---|
| MD5 | 128 บิต | ใช่ (ปี 2004) | ความสมบูรณ์ของข้อมูล การกำจัดข้อมูลซ้ำ และ ETag |
| SHA-1 | 160 บิต | ใช่ (ปี 2017) | ของเดิม; ควรเลี่ยงในงานใหม่ |
| SHA-256 | 256 บิต | ไม่ | TLS, คอมมิต, การเข้ารหัสทั่วไป |
| SHA-3 | 224–512 บิต | ไม่ | ทางเลือกสมัยใหม่แทน SHA-2 |
| BLAKE3 | 256 บิต | ไม่ | ตัวแทน SHA-2 ที่รวดเร็ว |
คำถามที่พบบ่อย
ไม่ได้ เพราะ MD5 ถูกเจาะด้วยวิธี brute-force ได้ง่ายมากบน GPU รุ่นใหม่ และถูกเจาะมาตั้งแต่ปี 2004 ควรใช้ฟังก์ชันแฮชสำหรับรหัสผ่าน เช่น Argon2, scrypt หรือ bcrypt
สำหรับความสมบูรณ์ทั่วไป (ดาวน์โหลดเสร็จหรือไม่) ใช่ แต่สำหรับความสมบูรณ์ต่อการโจมตี (มีผู้เปลี่ยนไฟล์เป็นเวอร์ชันอันตรายหรือไม่) ไม่, ควรใช้ SHA-256
ไม่ กระบวนการแฮชทำงานภายในเบราว์เซอร์ผ่าน WebCrypto และอาร์เรย์แบบมีชนิด ไฟล์ไม่เคยออกจากอุปกรณ์ของคุณเลย ซึ่งสำคัญอย่างยิ่งเมื่อต้องแฮชข้อมูลส่วนตัวหรือข้อมูลภายใต้ข้อตกลงไม่เปิดเผย (NDA)
เบราว์เซอร์รุ่นใหม่รองรับข้อมูลสตรีมได้ราว 2 GB อย่างสบาย ส่วนไฟล์ขนาดใหญ่มาก (หลายสิบ GB) ควรแฮชด้วยเครื่องมือบรรทัดคำสั่ง เช่น md5sum หรือ openssl dgst -md5 จะเหมาะกว่า
ข้อกำหนดไม่ได้ระบุตัวพิมพ์ เครื่องมือบนยูนิกซ์ส่วนใหญ่แสดงผลเป็นตัวพิมพ์เล็ก ขณะที่เครื่องมือบางตัวบนวินโดวส์ใช้ตัวพิมพ์ใหญ่ เมื่อเปรียบเทียบ ควรปรับตัวพิมพ์ให้เหมือนกันทั้งสองฝั่ง
เครื่องมือที่เกี่ยวข้อง
ตัวเข้ารหัสไฟล์ Base64
เข้ารหัสไฟล์ใดก็ได้ (PDF, ZIP, รูปภาพ, ไฟล์ปฏิบัติการ) เป็นข้อความ Base64 เพื่อฝังใน JSON, อีเมล, YAML หรือ data URI ทำงานในเครื่องของคุณ ไม่มีการอัปโหลด
เครื่องแปลง ETH เป็น USD
แปลงอีเธอเรียม (ETH) เป็นดอลลาร์สหรัฐด้วยอัตรา ETH/USD แบบเรียลไทม์หรืออัตราที่คุณกำหนดเอง ดูว่าจำนวน ETH เท่าใดก็ได้มีมูลค่าเป็น USD เท่าไร
ตัวตรวจสอบ checksum
คำนวณ checksum แบบ MD5, SHA-1, SHA-256, SHA-384, SHA-512 หรือ CRC32 ของข้อความใดก็ได้ แล้วเปรียบเทียบกับค่าที่คาดไว้เพื่อดูผลชัดเจนว่าตรงกันหรือไม่
ตัวระบุการเข้ารหัส
วางไซเฟอร์เท็กซ์หรือแฮช แล้วตัวระบุจะแนะนำอัลกอริทึมหรือการเข้ารหัสที่น่าจะเป็น: MD5, SHA, bcrypt, AES, RSA, Base64 และอื่น ๆ
ตัวสร้าง CSR
สร้าง Certificate Signing Request แบบ PEM และคีย์ส่วนตัว RSA ที่จับคู่กัน ระบุ Common Name ช่องข้อมูลองค์กร และขนาดคีย์ (2048, 3072 หรือ 4096 บิต)
เครื่องมือสร้างใบรับรอง SSL
สร้างใบรับรอง SSL/TLS ที่ลงนามด้วยตนเองและคีย์ส่วนตัว RSA ทั้งหมดในเบราว์เซอร์ กำหนด Common Name, SAN และช่วงอายุเอง ส่งออกเป็น PEM
เครื่องมือนี้มีให้บริการในภาษาอื่น
- Bộ tạo MD5 [VI]
- Gerador de MD5 [PT]
- Generador de MD5 [ES]
- مولّد MD5 [AR]
- Générateur MD5 [FR]
- MD5ジェネレーター [JA]
- MD5 생성기 [KO]
- Generator MD5 [ID]
- MD5-generator [NL]
- MD5-generator [SV]
- MD5-Generator [DE]
- Generator MD5 [PL]
- MD5 Generator [EN]
- Generatore MD5 [IT]
- Генератор MD5 [RU]
- MD5 Üreticisi [TR]
- MD5生成器 [ZH]