Lewati ke konten

Generator Bcrypt

Buat hash kata sandi bcrypt dengan salt acak 16 byte dan faktor biaya dari 4 hingga 12. Alat ini mengembalikan string modular standar yang dimulai dengan $2a$, yang diterima oleh PHP password_verify, Node.js bcrypt, Spring Security, dan sebagian besar framework. Gunakan untuk menyiapkan pengguna uji, mereset kata sandi admin di basis data, atau memeriksa kode hashing Anda sendiri. Kata sandi tidak pernah ditampilkan kembali atau disimpan.

Reset

Pertanyaan yang sering diajukan

Apa itu bcrypt?

Bcrypt adalah fungsi hashing kata sandi dari 1999 yang didasarkan pada cipher Blowfish. Fungsi ini menggabungkan salt acak dengan biaya yang dapat diatur, sehingga setiap kenaikan satu tingkat biaya menggandakan upaya yang dibutuhkan penyerang untuk setiap tebakan. Bcrypt tetap menjadi pilihan yang didukung luas untuk penyimpanan kata sandi.

Apa arti string output?

Hash seperti $2a$10$ yang diikuti 53 karakter memuat versi 2a, biaya 10, salt 22 karakter, dan hash 31 karakter, semuanya menggunakan alfabet Base64 milik bcrypt. Simpan seluruh string tersebut karena pemverifikasi membaca salt dan biaya darinya.

Faktor biaya mana yang harus saya pilih?

Alat ini mengizinkan biaya dari 4 hingga 12 dan menggunakan 10 secara default, yang merupakan nilai default umum pada framework. Setiap kenaikan tingkat menggandakan waktu, jadi biaya 12 membutuhkan waktu sekitar empat kali lebih lama daripada biaya 10. Untuk produksi, pilih biaya tertinggi yang dapat ditangani server Anda dalam waktu sekitar 100 hingga 250 milidetik.

Mengapa biaya dibatasi hingga 12?

Biaya yang lebih tinggi membutuhkan beberapa detik per hash dan dapat membuat satu permintaan menyibukkan server dalam waktu lama. Biaya 12 sudah kuat untuk sebagian besar aplikasi, dan Anda dapat melakukan hashing ulang dengan biaya lebih tinggi di lingkungan sendiri jika diperlukan.

Mengapa kata sandi yang sama menghasilkan hash berbeda setiap kali?

Alat ini membuat salt acak 16 byte baru untuk setiap hash. Salt yang berbeda menghasilkan string yang berbeda, tetapi semuanya dapat diverifikasi dengan kata sandi yang sama. Ini mencegah penyerang menggunakan tabel yang telah dihitung sebelumnya.

Apakah ada batas panjang kata sandi?

Ya. Bcrypt hanya menggunakan 72 byte pertama kata sandi, jadi alat ini menolak kata sandi yang lebih panjang alih-alih mengabaikan sisanya secara diam-diam. Karakter non-ASCII menggunakan beberapa byte masing-masing dalam UTF-8.

Apakah PHP atau Laravel menerima hash $2a$?

Ya. Plugin PHP password_verify, Laravel, Symfony, dan WordPress yang menggunakan password_hash menerima hash $2a$, $2b$, dan $2y$, yang hanya berbeda karena perbaikan bug historis. Node.js bcrypt, bcryptjs, Python bcrypt, dan Spring Security juga menerima $2a$.

Apakah kata sandi saya disimpan atau dicatat?

Tidak. Kata sandi hanya digunakan untuk menghitung hash selama permintaan berlangsung. Kata sandi dihapus dari respons dan tidak pernah ditulis ke log atau penyimpanan.

Sebaiknya saya menggunakan bcrypt atau Argon2?

Argon2id adalah rekomendasi yang lebih baru dari OWASP karena membutuhkan banyak memori, sehingga serangan GPU menjadi lebih mahal. Bcrypt tetap dapat digunakan dan didukung oleh banyak pustaka, jadi merupakan pilihan yang baik saat Argon2 tidak tersedia.

Bagaimana cara memeriksa kata sandi dengan hash bcrypt?

Gunakan Bcrypt Verifier di situs ini, atau panggil fungsi verify di kerangka kerja Anda. Jangan pernah membandingkan string bcrypt secara langsung karena hash baru dari kata sandi yang sama akan selalu terlihat berbeda.

Tentang OneClick Pro

OneClick Pro adalah kumpulan gratis berisi lebih dari 150 alat web untuk pekerjaan sehari-hari: mengonversi gambar dan satuan, memformat dan memvalidasi kode, memeriksa domain dan SEO, serta bekerja dengan teks, tanggal, dan angka. Setiap alat dapat digunakan tanpa registrasi atau berlangganan, dan apa pun yang Anda masukkan hanya digunakan untuk menghitung hasil dan tidak pernah disimpan. Gunakan sebagai kotak alat praktis untuk tugas sesekali, atau simpan alat yang Anda gunakan setiap hari ke bookmark.