Hash/Kripto

Bcrypt Hash + Verify

Hash kata sandi dengan bcrypt (dengan salt acak dan cost yang dapat disesuaikan) dan verifikasi kata sandi terhadap hash bcrypt yang sudah ada.


                    

Bcrypt is a deliberately slow password-hashing algorithm: unlike MD5 or SHA-256, it intentionally requires heavy computation so that brute-forcing passwords stays impractical even if a database of hashes leaks.

How to use it

Common uses

Things to keep in mind

Pick a cost factor that keeps hashing around 100-300ms on your target server — a balance between security and login-time load.

Bcrypt truncates passwords longer than 72 bytes — characters beyond that limit are ignored by the algorithm.

Artikel tentang alat ini: Bcrypt: mengapa kata sandi di-hash secara lambat, bukan cepat

Pertanyaan yang sering diajukan

Mengapa bcrypt memiliki faktor "cost" atau "rounds"?

Faktor cost mengontrol berapa kali hashing diulang secara internal, sehingga hashing menjadi eksponensial lebih lambat seiring meningkatnya nilai. Ini memungkinkan Anda dengan sengaja membuatnya cukup lambat untuk menahan serangan brute-force meski perangkat keras semakin cepat.

Mengapa hash bcrypt selalu memiliki panjang yang sama terlepas dari kata sandi saya?

Bcrypt menghasilkan hash dengan panjang tetap (biasanya 60 karakter) yang mengkodekan versi algoritma, faktor cost, salt, dan hash bersamaan — panjangnya tidak bergantung pada panjang kata sandi asli.

Apakah bcrypt memerlukan kolom salt terpisah?

Tidak. Salt dibuat secara otomatis dan disematkan langsung dalam string keluaran, jadi Anda tidak perlu menyimpan atau mengelolanya secara terpisah — salt disertakan setiap kali Anda memverifikasi kata sandi terhadap hash.

Apakah ada batasan panjang kata sandi pada bcrypt?

Ya, bcrypt hanya memproses 72 byte pertama dari kata sandi — apa pun yang lebih panjang akan dibuang begitu saja tanpa peringatan. Dalam praktiknya ini jarang menjadi masalah, tetapi perlu diingat saat bekerja dengan kata sandi yang sangat panjang atau karakter non-ASCII, di mana satu karakter bisa menempati beberapa byte.

Mengapa bcrypt masih direkomendasikan jika ada Argon2?

Bcrypt telah teruji secara praktis selama puluhan tahun, didukung secara luas di semua bahasa dan framework, dan tetap menjadi pilihan yang cukup andal. Argon2 direkomendasikan sebagai pilihan prioritas untuk sistem baru karena perlindungan terhadap serangan GPU/ASIC, tetapi bcrypt tidak dianggap tidak aman — hanya kurang tahan terhadap perangkat keras khusus.

Artikel: Hash/Kripto

Hash Generator: apa perbedaan MD5, SHA-1, dan SHA-256

Mengapa MD5 masih digunakan untuk memverifikasi integritas file, tapi tidak untuk kata sandi.

Checksum Verifier: cara memeriksa apakah file tidak rusak

Mengapa checksum yang cocok mengonfirmasi integritas file, tapi bukan siapa yang membuatnya.

HMAC: apa bedanya hash dengan kunci dan hash biasa

Mengapa SHA-256 biasa tidak melindungi dari pemalsuan pesan, tapi HMAC melindungi.

UUID: bagaimana identifier yang hampir tidak pernah berulang dibuat

Mengapa UUID v4 bisa dibuat secara independen di jutaan mesin tanpa risiko tabrakan.

Generator Kata Sandi: apa yang sebenarnya membuat kata sandi kuat

Mengapa kata sandi panjang dari kata-kata kamus lebih kuat daripada kata sandi pendek dengan simbol dan angka.

AES: bagaimana enkripsi simetris bekerja

Mengapa kunci yang sama mengenkripsi dan mendekripsi data di AES, dan bagaimana ini berbeda dari enkripsi asimetris.

Argon2: mengapa algoritma ini memenangkan kompetisi hashing kata sandi

Bagaimana Argon2 bertahan lebih baik terhadap serangan menggunakan GPU dibandingkan algoritma hashing kata sandi yang lebih lama.

Scrypt: mengapa algoritma ini membutuhkan begitu banyak memori

Mengapa scrypt sengaja membutuhkan banyak memori untuk mempersulit pembobolan di perangkat ASIC.

TOTP: bagaimana kode sekali pakai di aplikasi autentikator bekerja

Mengapa kode di Google Authenticator bekerja tanpa internet dan hanya sinkron dengan server melalui waktu.

PBKDF2: standar peregangan kunci tertua

Mengapa jumlah iterasi PBKDF2 yang direkomendasikan terus bertambah setiap tahun.

X.509: apa yang ada di dalam sertifikat SSL

Apa sebenarnya yang diperiksa browser pada sertifikat sebuah situs sebelum menampilkan gembok hijau.

PGP: bagaimana enkripsi kunci publik dan privat bekerja

Mengapa kunci publik PGP bisa dibagikan secara bebas, tapi kunci privat tidak pernah.