MD5 vs SHA-256 - kapan menggunakan setiap fungsi hash
freetoolonline.com Editorial Team
MD5 dan SHA-256 keduanya menghasilkan sidik jari panjang tetap dari input apapun, tetapi hanya SHA-256 yang aman terhadap input adversarial. Ketahanan tabrakan MD5 gagal pada 2004. Untuk tanda tangan digital, gunakan SHA-256. Untuk pemeriksaan integritas non-adversarial, MD5 masih oke.
Apa yang sebenarnya dilakukan fungsi hash
Apa yang sebenarnya dilakukan fungsi hash di panduan MD5 vs SHA-256: mengubah input apa pun menjadi sidik jari panjang tetap - byte sama selalu menghasilkan digest sama, satu bit mengubah keluaran.
MD5 mengembalikan 128 bit (32 karakter hex). SHA-256 mengembalikan 256 bit (64 karakter hex). Keduanya deterministik. Keduanya cepat. Keduanya tidak mengungkapkan apapun tentang struktur input dari output.
Perbandingan berdampingan
Perbandingan berdampingan pada MD5 vs SHA-256: MD5 128-bit dan sudah rusak oleh collision; SHA-256 256-bit dan masih default untuk integritas serta tanda tangan di 2026.
| Atribut | MD5 | SHA-256 |
|---|---|---|
| Panjang digest | 128 bit (32 karakter hex) | 256 bit (64 karakter hex) |
| Dirancang | 1991 (Ron Rivest) | 2001 (NSA, FIPS 180-2) |
| Keluarga | garis keturunan MD4 | keluarga SHA-2 |
| Ketahanan tabrakan | Rusak sejak 2004 (Wang et al.); tabrakan praktis dalam hitungan detik | Tidak ada tabrakan praktis yang diketahui; ~2128 operasi untuk menemukan satu |
| Ketahanan preimage kedua | Dilemahkan tetapi tidak ada serangan praktis untuk input yang dihitung sebelumnya | Kuat; ~2256 operasi |
| Kecepatan (x86-64 modern) | ~500 MB/s per inti | ~300 MB/s per inti (SHA-NI: ~1,5 GB/s) |
| Akselerasi hardware | Tidak ada instruksi khusus | Intel SHA-NI, ekstensi crypto ARMv8 |
| Aman untuk penggunaan kriptografi | Tidak - jangan gunakan untuk tanda tangan, cert pinning, hash kata sandi | Ya (di luar hash kata sandi - gunakan Argon2id/bcrypt untuk kata sandi) |
Mengapa MD5 rusak dan apa artinya sebenarnya
Mengapa MD5 rusak dan apa artinya sebenarnya: penyerang dapat membuat dua file berbeda dengan MD5 sama, jadi MD5 saja tidak membuktikan unduhan tidak diubah.
Ketahanan preimage kedua MD5 lebih lemah daripada SHA-256 tetapi tidak ada serangan praktis yang diketahui terhadap input sembarang yang sudah ada. Itu adalah jendela sempit di mana MD5 masih aman: mengkonfirmasi bahwa digest yang sudah dihitung cocok dengan file yang Anda unduh, ketika tidak ada penyerang yang punya kesempatan untuk membuat tabrakan terhadap file spesifik itu.
Kapan MD5 masih baik-baik saja
Kapan MD5 masih baik-baik saja di panduan MD5 vs SHA-256: checksum non-keamanan cepat, manifes legacy, atau mendeteksi korupsi tidak sengaja saat tidak ada penyerang.
Cache de-duplikasi. Proxy caching mengindeks objek berdasarkan MD5 konten mereka untuk mendeteksi pengulangan. Tabrakan dalam konteks ini tidak berbahaya - dua objek berbeda dengan MD5 yang sama berarti satu cache miss, tidak ada konsekuensi keamanan.
Sidik jari baris database. "Apakah catatan ini berubah sejak sinkronisasi terakhir?" - MD5 baris, bandingkan dengan digest yang disimpan. Lebih cepat daripada SHA-256; model adversari tidak ada.
Pengalamatan konten Git. Git menggunakan SHA-1 (segera SHA-256), bukan MD5 - tetapi alasan desain berlaku: untuk penyimpanan yang dialamatkan konten di mana Anda mempercayai penulis, hash 128-bit sudah cukup jika tabrakan bukan vektor serangan.
Kapan SHA-256 adalah pilihan yang tepat
Kapan SHA-256 adalah pilihan yang tepat: hash rilis, rantai sertifikat, objek Git, dan setiap kasus di mana pihak ketiga bisa memalsukan MD5 yang bertabrakan.
Cert pinning dan sidik jari kunci publik. Sidik jari SHA-256 dari kunci publik sertifikat adalah standar untuk pinning.
Blockchain dan penyimpanan yang dapat dialamatkan konten di mana adversari berpartisipasi. Bitcoin menggunakan SHA-256 dua kali (SHA-256d) untuk header blok dan pengidentifikasi transaksi. Setiap penyimpanan di mana pengguna menyumbangkan konten dan tabrakan dapat dieksploitasi membutuhkan SHA-256.
HMAC untuk otentikasi pesan. HMAC-SHA-256 adalah baseline untuk penandatanganan permintaan API (AWS Signature v4, GitHub webhooks, Stripe). HMAC-MD5 masih digunakan dalam beberapa protokol lama tetapi semakin ditandai oleh pemindai kepatuhan.
Apa yang digunakan untuk kata sandi (spoiler: tidak ada)
Apa yang digunakan untuk kata sandi (spoiler: tidak ada) adalah hash kata sandi lambat seperti Argon2 atau bcrypt - baik MD5 maupun SHA-256 telanjang dari string kata sandi bukan penyimpanan yang diterima.
Realitas kinerja di 2026
Realitas kinerja di 2026 untuk MD5 vs SHA-256: keduanya menyelesaikan file besar di browser dalam detik - pilih SHA-256 untuk kepercayaan, bukan karena MD5 jauh lebih cepat untuk unggahan biasa.
JavaScript dalam browser dengan WebCrypto (crypto.subtle.digest('SHA-256', data)) mencapai ~200 MB/s pada laptop modern. Konverter MD5 kami menjalankan MD5 pada kecepatan serupa melalui implementasi wasm.
MD5 atau SHA-256: aturan batas kepercayaan
Pilihan antara MD5 dan SHA-256 bergantung pada satu pertanyaan - apakah adversari dapat mempengaruhi input yang Anda hash. Jika uploader jarak jauh, penyerang jaringan, atau pihak apapun di luar batas kepercayaan Anda dapat membentuk byte yang mencapai fungsi hash, pilih SHA-256 (atau SHA-3, atau BLAKE3) sehingga serangan tabrakan tidak dapat memalsukan digest yang cocok. Jika input berasal dari pipeline Anda sendiri dan Anda men-sidik-jari mereka untuk caching, de-duplikasi, atau deteksi perubahan, MD5 baik-baik saja dan berjalan sedikit lebih cepat pada CPU tanpa akselerasi SHA-NI. Keputusan bersifat biner dan hidup di batas kepercayaan; setelah Anda menamai di sisi mana batas itu input berada, algoritma yang digunakan ditentukan.
Alat terkait
- MD5 Converter - hitung MD5 dari teks atau file kecil di browser.
- Text Diff - bandingkan dua blok teks baris demi baris.
- Text / HTML Editor - render HTML dan Markdown langsung.
- Current Time (ms) - waktu epoch untuk korelasi log.
- MD5 alternatives - bcrypt, Argon2id, SHA-256 - algoritma mana yang menggantikan MD5 untuk setiap kasus penggunaan, termasuk hashing kata sandi dan penandatanganan.
- MD5 hash decrypt - when lookup works, when it cannot - apa yang sebenarnya dilakukan "membalik MD5" dan kondisi ketika pencarian kamus berhasil.