Generator Hash MD5

Hitung digest MD5 128 bit dari teks, byte hex, atau file. Hash diperbarui saat Anda mengetik, dan kolom Bandingkan dengan memberi tahu apakah hasilnya cocok dengan checksum yang Anda harapkan.

Semua algoritma

Berjalan sepenuhnya di browser Anda. Tidak ada yang diunggah.

Cara menggunakan

  1. Ketik atau tempel teks, atur Masukan sebagai ke Hex untuk byte hex, atau klik Buka file untuk meng-hash byte file apa adanya.
  2. Biarkan Pengodean teks pada UTF-8 kecuali hash aslinya dibuat dari teks dengan set karakter lain.
  3. Pada Keluaran sebagai, pilih hex (huruf kecil), HEX (huruf besar), atau Base64.
  4. Untuk memeriksa unduhan, tempel MD5 yang dipublikasikan ke kolom Bandingkan dengan dan pastikan muncul Cocok.

Apa itu MD5?

MD5 (Message-Digest Algorithm 5) dirancang oleh Ronald Rivest dan dipublikasikan pada 1992 sebagai RFC 1321. Algoritma ini membaca masukan dalam blok 512 bit dan menghasilkan digest 128 bit, yang biasanya ditulis sebagai 32 karakter heksadesimal atau 24 karakter Base64. Masukan yang sama selalu menghasilkan digest yang sama, dan mengubah satu bit saja pada masukan akan mengubah sekitar separuh bit keluarannya.

Hashing bersifat satu arah: tidak ada kunci dan tidak ada cara untuk "mendekripsi" hash MD5 kembali menjadi masukannya. Situs yang mengaku bisa membalikkan MD5 sebenarnya hanya mencari hash tersebut di tabel raksasa berisi kata-kata dan kata sandi bocor yang sudah di-hash. Itulah sebabnya MD5 tanpa salt dari kata sandi pendek sering kali ditemukan dalam hitungan detik.

Apakah MD5 masih aman?

Tidak, jika berhadapan dengan penyerang. Xiaoyun Wang dan rekan-rekannya memublikasikan tabrakan (collision) praktis pada 2004: dua masukan berbeda dengan MD5 yang sama. Setelah itu muncul tabrakan chosen-prefix: pada 2008 para peneliti memakainya untuk membuat sertifikat CA palsu, dan pada 2012 malware Flame memakainya untuk memalsukan sertifikat sehingga kodenya tampak ditandatangani oleh Microsoft. Kini laptop biasa dapat menemukan tabrakan MD5 dalam hitungan detik, dan RFC 6151 menyatakan bahwa MD5 tidak lagi layak dipakai jika diperlukan ketahanan terhadap tabrakan, misalnya untuk tanda tangan digital.

MD5 masih cukup baik sebagai checksum untuk mendeteksi kerusakan yang tidak disengaja, seperti unduhan yang tidak lengkap atau bit yang berubah di disk, serta untuk kunci cache atau deduplikasi data tepercaya. Jika file atau checksum-nya bisa berasal dari penyerang, gunakan SHA-256.

Hex, Base64, dan hash yang tidak cocok

MD5 biasanya ditampilkan sebagai hex, seperti keluaran md5sum. Beberapa protokol justru mengirim 16 byte mentahnya dalam Base64, misalnya header HTTP Content-MD5 yang dipakai oleh API penyimpanan cloud seperti Amazon S3. Pilih Base64 pada Keluaran sebagai, atau konversi nilai yang sudah ada dengan Hex ke Base64.

Jika MD5 Anda berbeda dengan hasil alat lain, berarti byte masukannya berbeda. Penyebab umumnya adalah baris baru di akhir, akhir baris Windows, atau pengodean teks yang lain: "café" berukuran 5 byte dalam UTF-8 tetapi 4 byte dalam ISO-8859-1, sehingga kedua hash-nya sama sekali tidak berkaitan.

$ echo "hello" | md5sum      # meng-hash "hello\n"
b1946ac92492d2347c6235b4d2611184  -
$ printf 'hello' | md5sum    # meng-hash "hello"
5d41402abc4b2a76b9719d911017c592  -

MD5 di baris perintah dan dalam kode

md5sum file.iso                          # Linux
md5 file.iso                             # macOS
certutil -hashfile file.iso MD5          # Windows
Get-FileHash file.iso -Algorithm MD5     # PowerShell

# Python
import hashlib
hashlib.md5('hello'.encode('utf-8')).hexdigest()

// Node.js
require('crypto').createHash('md5').update('hello', 'utf8').digest('hex')

Web Crypto API bawaan browser tidak menyediakan MD5, jadi halaman ini menghitungnya dengan JavaScript di perangkat Anda; tidak ada yang diunggah. Tabel Semua algoritma di bawah hasil menampilkan SHA-1, SHA-256, SHA-384, SHA-512, CRC-32, dan CRC-32C untuk masukan yang sama.

Contoh

Masukan (UTF-8)MD5
Hello, World!65a8e27d8879283831b664bd8b7f0ad4
Base64.is2e3c0e8b828164a8db7f62146ca87e14
你好7eca689f0d3389d9dea66ae112e5cfd7

Pertanyaan yang sering diajukan

Bisakah hash MD5 didekripsi?
Tidak. MD5 adalah fungsi hash satu arah, bukan enkripsi, jadi tidak ada yang bisa didekripsi; situs "dekripsi MD5" hanya dapat mengembalikan masukan yang sudah ada di tabelnya. Jika nanti Anda perlu mendapatkan kembali data aslinya, enkripsi data tersebut, atau jika data tidak perlu dirahasiakan, enkode dengan Base64, yang sepenuhnya dapat dibalik.
Apakah MD5 cukup untuk memverifikasi unduhan?

MD5 andal untuk mendeteksi kerusakan yang tidak disengaja. Namun, karena tabrakan sangat mudah dibuat, seseorang yang menyiapkan file terlebih dahulu dapat membuat file kedua yang berbeda dengan MD5 yang sama. Untuk unduhan yang menyangkut keamanan, periksa hash SHA-256 dari sumber tepercaya atau tanda tangan digital.

Berapa panjang hash MD5?
128 bit atau 16 byte: 32 karakter dalam hex, atau 24 karakter dalam Base64 yang diakhiri ==. String hex 32 karakter juga bisa berupa hash MD4 atau NTLM; Pengidentifikasi Hash menampilkan daftar kemungkinannya.
Bisakah saya mendapatkan MD5 dari file besar?
Bisa. Klik Buka file, lalu byte file akan di-hash di browser Anda tanpa diunggah. Batasnya adalah memori yang dapat dipakai browser, jadi file berukuran beberapa gigabyte sebaiknya di-hash dengan md5sum atau certutil.
Haruskah saya menyimpan kata sandi sebagai MD5?
Jangan. MD5 memang dirancang agar cepat, sehingga satu GPU dapat menguji miliaran tebakan per detik. Simpan kata sandi dengan Argon2id, scrypt, bcrypt, atau PBKDF2, yang menambahkan salt dan sengaja dibuat lambat. Generator Kata Sandi dapat membuat kata sandi yang kuat sejak awal.