Decoder Hash Kata Sandi
Hash kata sandi menyimpan kredensial secara aman menggunakan fungsi satu arah dengan salt dan faktor kerja yang dapat dikonfigurasi. Alat ini mendeteksi otomatis dan mengurai hash dalam format Modular Crypt Format (MCF), PHC String Format, dan skema LDAP, menampilkan algoritma, parameter, salt, output hash, dan penilaian keamanan.
Spesifikasi
Kasus Penggunaan Umum
- Mengidentifikasi algoritma hashing mana yang digunakan database untuk kata sandi
- Mengaudit keamanan hash kata sandi selama uji penetrasi atau tinjauan keamanan
- Memverifikasi faktor cost bcrypt dan parameter Argon2 memenuhi rekomendasi OWASP
- Memahami skema penyimpanan kata sandi direktori LDAP
- Debug masalah autentikasi dengan memeriksa format dan parameter hash
Fitur
- Deteksi otomatis format MCF ($1$, $2b$, $5$, $6$, $sha1$, $apr1$), PHC ($argon2id$, $scrypt$, $pbkdf2$), dan LDAP ({SSHA}, {SHA}, {MD5})
- Menampilkan algoritma, varian, parameter (cost, rounds, memory, parallelism), salt, dan output hash
- Penilaian keamanan: kritis (MD5/tanpa salt), lemah (SHA-1/cost rendah), sedang (SHA-crypt), kuat (bcrypt 12+/argon2/scrypt)
- Rekomendasi penilaian keamanan berkode warna
- Tampilan format encoding hash (base64, hex, dll.)
- Mengurai beberapa hash dari input multi-baris
- Menampilkan panjang bit hash dan format encoding
- Tautan ke spesifikasi relevan untuk setiap algoritma
Contoh
Hash kata sandi bcrypt
Coba →Hash bcrypt dengan faktor cost 12 — minimum yang direkomendasikan untuk aplikasi baru.
$2b$12$LJ3m4ys3Lg2VBe5E5Ij25eNsaDl3JK8i3pg7jBepGQhWcqMpqXA4qHash kata sandi Argon2id
Coba →Argon2id dengan memori 64 MB, 3 iterasi, dan 4 thread — praktik terbaik saat ini.
$argon2id$v=19$m=65536,t=3,p=4$c29tZXNhbHQ$RdescudvJCsgt3ub+b+dawTips
- Faktor cost bcrypt 12+ direkomendasikan oleh OWASP. Setiap kenaikan menggandakan waktu komputasi.
- Argon2id adalah praktik terbaik saat ini — menggabungkan ketahanan side-channel (argon2i) dan ketahanan GPU (argon2d).
- LDAP {SSHA} adalah SHA-1 bersalt — lebih baik dari {SHA} tetapi masih hash cepat. Migrasikan ke bcrypt atau Argon2.
- Tempelkan output hashing kata sandi dari panel Encode As untuk mendekode dan memverifikasinya di sini.
Pemahaman Decoder Hash Kata Sandi
Hashing kata sandi adalah praktik menyimpan kata sandi sebagai hash kriptografis satu arah daripada teks biasa. Ketika pengguna mengatur kata sandi, sistem meng-hash-nya dan menyimpan hash. Saat login, sistem meng-hash kata sandi yang dimasukkan dan membandingkan hasilnya dengan hash yang tersimpan. Karena fungsi hash bersifat satu arah, penyerang yang mendapatkan database hash tidak dapat langsung memulihkan kata sandi.
Algoritma hashing kata sandi modern sengaja dibuat lambat dan membutuhkan banyak memori untuk melawan serangan brute-force. bcrypt menggunakan faktor cost yang dapat dikonfigurasi di mana setiap kenaikan menggandakan waktu komputasi. Argon2 (pemenang Kompetisi Hashing Kata Sandi 2015) menambahkan penggunaan memori yang dapat dikonfigurasi untuk melawan serangan berbasis GPU. scrypt juga membutuhkan memori yang signifikan. "Hash lambat" ini secara fundamental berbeda dari hash cepat (MD5, SHA-256) yang dirancang untuk kecepatan dan tidak cocok untuk penyimpanan kata sandi.
Hash kata sandi menggunakan format string terstandar untuk portabilitas. Modular Crypt Format (MCF) menggunakan delimiter $: $2b$12$... untuk bcrypt, $5$ untuk SHA-256-crypt, $6$ untuk SHA-512-crypt. PHC String Format (digunakan oleh Argon2) menambahkan parameter bernama: $argon2id$v=19$m=65536,t=3,p=4$salt$hash. Sistem LDAP menggunakan awalan skema: {SSHA}, {PBKDF2}.
Setiap hash menyertakan salt — data acak yang digabungkan dengan kata sandi sebelum hashing untuk memastikan kata sandi yang identik menghasilkan hash yang berbeda. Tanpa salt, penyerang dapat menggunakan tabel rainbow yang telah dihitung sebelumnya untuk mencari hash kata sandi umum secara instan. Salt disimpan bersama hash (bukan rahasia) dan dihasilkan secara acak untuk setiap kata sandi.
Untuk aplikasi baru, Argon2id adalah praktik terbaik saat ini sebagaimana direkomendasikan oleh OWASP. Jika Argon2 tidak tersedia di framework Anda, bcrypt dengan faktor cost 12+ adalah pilihan terbaik berikutnya, dan scrypt juga dapat diterima. MD5, SHA-1, dan SHA-256 biasa tidak boleh digunakan untuk kata sandi — terlalu cepat dan dapat di-brute-force dengan miliaran percobaan per detik pada GPU modern. MD5 khususnya dirancang sebagai algoritma checksum cepat, bukan untuk penyimpanan kata sandi, dan memiliki kerentanan tabrakan yang diketahui. Hash MD5 tanpa salt juga rentan terhadap serangan tabel rainbow.
Faktor cost bcrypt (angka setelah $2b$) adalah eksponen yang mengontrol waktu komputasi. Cost 10 berarti 2^10 = 1.024 iterasi, sementara cost 12 berarti 2^12 = 4.096 iterasi — empat kali lebih lambat dari cost 10. OWASP merekomendasikan cost 12 sebagai minimum. Setiap kenaikan menggandakan waktu, jadi meningkatkan dari 10 ke 12 membuat hashing 4x lebih lambat untuk server maupun penyerang.
Salt dan pepper memiliki peran berbeda dalam keamanan kata sandi. Salt adalah data acak yang disimpan bersama hash, unik per kata sandi, memastikan kata sandi yang identik menghasilkan hash yang berbeda — salt bukan rahasia. Pepper adalah kunci rahasia yang diterapkan ke semua kata sandi (biasanya melalui HMAC), disimpan terpisah dari database di konfigurasi aplikasi atau modul keamanan hardware. Jika database dikompromikan tetapi pepper tidak, penyerang tidak dapat memecahkan hash bahkan dengan salt. Menggunakan keduanya menyediakan pertahanan berlapis.