Apakah alat ini?
MD5 ialah fungsi hash yang menukar sebarang input kepada cap jari heksadesimal 32-aksara tetap. Input yang sama sentiasa menghasilkan hash yang sama, dan walaupun perubahan satu aksara menghasilkan hasil yang sama sekali berbeza. Ini menjadikan hash berguna untuk checksum, kunci cache, deduplikasi dan semakan integriti data.
Nota keselamatan: MD5 telah dikenal pasti tidak selamat dari segi kriptografi — perlanggaran boleh direka — jadi ia tidak boleh digunakan untuk kata laluan atau tandatangan. Untuk itu, guna SHA-256 (turut disediakan di bawah) atau hashing kata laluan khusus seperti bcrypt. MD5 masih baik untuk kegunaan bukan-keselamatan seperti checksum dan kunci cache.
MD5 bermula sejak 1992, apabila Ron Rivest menerbitkannya sebagai RFC 1321 — sebahagian sebab kenapa begitu banyak sistem lama masih menjangkakannya walaupun kelemahannya diketahui.
Kenapa guna alat ini?
- Jana checksum untuk sahkan fail atau string tidak diubah secara tidak sengaja.
- Cipta kunci cache tertentu dan ID deduplikasi.
- Bandingkan dengan MD5 yang diketahui untuk semak integriti data.
- Dapatkan SHA-1 dan SHA-256 sekali gus — tiada perlu alat kedua.
- 100% tempatan: input anda tidak pernah tinggalkan pelayar.
Cara menggunakannya
- Taip atau tampal teks anda ke dalam kotak input.
- Klik "Generate Hash".
- Baca hasil MD5, SHA-1 dan SHA-256 (tandakan "Uppercase" jika sistem anda menjangka huruf besar).
- Klik "Copy" di sebelah hash yang anda perlukan.
Contoh
Input
helloHasil
MD5: 5d41402abc4b2a76b9719d911017c592
SHA-256: 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824Hash bersifat pasti: "hello" menghasilkan nilai tepat ini pada setiap alat, setiap kali.
Hash mana yang patut anda guna?
Ketiga-tiganya adalah hash sehala, tetapi tidak boleh saling tukar ganti — pilihan yang betul bergantung sepenuhnya sama ada anda perlukan keselamatan atau sekadar cap jari.
| Algoritma | Saiz output | Guna untuk | Jangan guna untuk |
|---|---|---|---|
| MD5 | 128-bit (32 aksara hex) | Checksum, kunci cache, deduplikasi, mengesan perubahan fail tidak sengaja | Kata laluan, tandatangan digital, apa jua yang sensitif keselamatan — perlanggaran boleh direka |
| SHA-1 | 160-bit (40 aksara hex) | Keserasian sistem lama (contohnya hash komit Git lama) | Reka bentuk sensitif keselamatan baharu — serangan perlanggaran praktikal wujud sejak 2017 |
| SHA-256 | 256-bit (64 aksara hex) | Tandatangan digital, sijil TLS, blockchain, checksum di mana ketahanan gangguan penting | Menyimpan kata laluan terus — walaupun SHA-256 terlalu pantas untuk itu; guna bcrypt, scrypt atau Argon2 sebaliknya |
Kegunaan biasa
- Mengesahkan fail yang dimuat turun sepadan dengan checksum penerbit sebelum menjalankannya, dengan menghash fail dan membandingkan hasilnya.
- Menjana kunci cache tertentu daripada URL atau string pertanyaan, supaya permintaan yang sama sentiasa dipetakan kepada entri cache yang sama.
- Menyahduakan senarai rekod besar dengan menghash setiap satu dan membandingkan hash bukannya membandingkan teks penuh.
- Menyemak dengan pantas sama ada dua salinan fail sama bait demi bait tanpa membuka atau membandingkannya secara langsung.
Kenapa perlanggaran penting untuk keselamatan tetapi tidak untuk checksum
Perlanggaran hash bermaksud dua input berbeza menghasilkan output hash yang sama — secara matematik tidak dapat dielakkan untuk mana-mana fungsi hash (kerana input tidak terhingga dan output panjang tetap), tetapi risiko praktikalnya bergantung sepenuhnya pada kegunaannya. Untuk tandatangan keselamatan, perlanggaran yang direka secara sengaja membolehkan penyerang menggantikan fail berniat jahat dengan yang sah sambil mengekalkan hash yang sama, iaitu tepat apa yang telah dibuktikan terhadap MD5 sejak 2004 dan terhadap SHA-1 sejak 2017. Untuk checksum atau kunci cache, tiada siapa cuba merekacipta perlanggaran — anda hanya menyemak sama ada fail rosak secara tidak sengaja atau sama ada dua string sembarangan kebetulan sama — jadi kelemahan matematik yang sama yang merosakkan kegunaan keselamatan MD5 hampir tidak memberi kesan kepada kegunaan bukan-keselamatannya.
Perlu bandingkan beberapa algoritma sekali gus?
Jika anda ingin melihat MD5, SHA-1, SHA-256, SHA-384 dan SHA-512 bagi teks yang sama secara bersebelahan berbanding satu demi satu, gunakan alat perbandingan pelbagai algoritma kami.
Soalan lazim
Bolehkah saya nyahsulit hash MD5 kembali kepada teks asal?
Tidak — hashing bersifat sehala mengikut reka bentuk; teks asal tidak boleh dikira daripada hash. Laman "decryption MD5" hanya mencari hash dalam jadual besar yang telah dikira terlebih dahulu bagi input biasa, itulah sebabnya input unik tidak boleh diterbalikkan.
Adakah MD5 selamat untuk menyimpan kata laluan?
Tidak, sama sekali tidak. MD5 pantas untuk dipecah kekerasan dan mempunyai serangan perlanggaran yang diketahui. Guna bcrypt, scrypt atau Argon2 untuk kata laluan. MD5 hanya boleh diterima untuk tujuan bukan-keselamatan seperti checksum.
Kenapa teks yang sama memberi hash berbeza berbanding alat lain?
Biasanya perbezaan yang tidak kelihatan: baris baharu atau ruang di hujung, penamat baris berbeza (\r\n berbanding \n), atau pengekodan teks berbeza. Input yang sama bait demi bait sentiasa memberi hash yang sama.
Apa beza antara MD5, SHA-1 dan SHA-256?
Ia berbeza dari segi panjang output dan keselamatan: MD5 (128-bit) dan SHA-1 (160-bit) kedua-duanya tidak selamat untuk kegunaan keselamatan; SHA-256 (256-bit) ialah standard semasa dan kekal selamat. Jika ragu-ragu, guna SHA-256.
Adakah teks saya dihantar ke pelayan untuk dihash?
Tidak. MD5 dikira dengan JavaScript dan SHA-1/SHA-256 dengan Web Crypto API terbina dalam pelayar anda — semuanya kekal pada peranti anda.