Fungsi hash mengubah input apa pun — kata, dokumen, image disk 4 GB — menjadi sidik jari pendek dengan panjang tetap. Alat ini menghitung algoritme umum (CRC-32, MD5, SHA-1, SHA-256, SHA-384, SHA-512, SHA3-256, Keccak-256) dan membuat HMAC, semuanya di browser Anda. Panduan ini menjelaskan kegunaan hash, mana yang aman di tahun 2026, dan perbedaan antara hashing, enkripsi, dan penyimpanan kata sandi.

Sebenarnya untuk apa hash itu?

Hashing memiliki dua tugas sehari-hari: integritas dan identifikasi. Saat Anda mengunduh perangkat lunak dan memeriksa SHA-256-nya terhadap nilai yang diposting penerbit, Anda mengonfirmasi bahwa byte tiba dengan utuh. Ketika Git melakukan, cache dengan alamat konten, atau sistem deduplikasi memerlukan ID stabil pendek untuk gumpalan data, hash menyediakannya. Properti yang menentukan adalah determinisme: masukan yang sama selalu menghasilkan intisari yang sama, dan perubahan apa pun — satu bit yang dibalik — menghasilkan perubahan yang sangat berbeda (efek longsoran salju dapat Anda lihat pada sidik jari di atas).

Algoritma mana yang aman di tahun 2026

CRC-32 ditujukan untuk deteksi kesalahan (misalnya file ZIP), bukan keamanan. MD5 (1991) dan SHA-1 (1995) rusak secara kriptografis: peneliti telah menghasilkan tabrakan nyata (dua file berbeda dengan hash yang sama), sehingga keduanya tidak boleh digunakan di mana penyerang dapat memperoleh manfaat dari pemalsuan kecocokan — tanda tangan, sertifikat, deteksi kerusakan. Mereka tetap baik untuk checksum non-permusuhan seperti mendeteksi kerusakan yang tidak disengaja atau penghapusan duplikat file.

Kelompok SHA-2 (SHA-256, SHA-384, SHA-512) dan SHA-3 / Keccak-256 tidak memiliki tabrakan praktis yang diketahui dan merupakan default yang tepat untuk segala hal yang sensitif terhadap keamanan. SHA-512 seringkali lebih cepat dibandingkan SHA-256 pada perangkat keras 64-bit, jadi 'lebih besar' tidak berarti 'lebih lambat' di sini.

Hashing bukanlah enkripsi — dan bukan penyimpanan kata sandi

Enkripsi dapat dibalik dengan kunci; hashing dirancang satu arah, jadi tidak ada 'unhash'. Hal ini membuat hash tidak berguna untuk kerahasiaan, namun ideal untuk verifikasi.

Sandi adalah kasus khusus. Hash cepat mentah (bahkan SHA-256) adalah pilihan yang buruk karena kecepatannya memungkinkan penyerang menguji miliaran tebakan per detik terhadap database yang dicuri. Penyimpanan kata sandi modern menggunakan fungsi penurunan kunci — bcrypt, scrypt, atau Argon2 — yang sengaja diperlambat dan menambah garam per pengguna. Jika Anda melakukan hashing pada sandi, gunakan salah satunya, bukan algoritme pada alat ini.

HMAC: membuktikan siapa yang mengirim pesan

Hash biasa membuktikan bahwa pesan tidak diubah, namun siapa pun dapat menghitung ulang pesan tersebut — sehingga tidak dapat membuktikan siapa yang mengirim pesan. HMAC memperbaikinya dengan memasukkan kunci rahasia bersama ke dalam hash. Pengirim menghitung HMAC(key, message) dan melampirkannya; penerima menghitung ulang dengan kunci yang sama. Kecocokan membuktikan integritas dan keaslian. Ini adalah mekanisme di balik tanda tangan webhook (Stripe, GitHub, Slack), penandatanganan permintaan AWS, dan token JWT 'HS256'. Gunakan kunci acak yang panjang dan bandingkan HMAC dengan pemeriksaan waktu konstan di sisi server.