Playground bcrypt

Hash kata sandi dengan bcrypt cost 4–16, pakai salt 22 karakter sendiri, lihat hash terurai menjadi versi, cost, salt, dan hash, serta verifikasi hash.

0 dari 72 byte terpakai

2^cost = 1.024 putaran

Kosongkan untuk memakai salt acak.

bcrypt (Provos & Mazières, 1999) adalah hash adaptif: setiap +1 cost menggandakan kerja. Pilih cost tertinggi yang menjaga login di bawah sekitar 250 ms di server Anda (10 atau lebih). Keluaran memakai prefiks $2b$; hash $2a$ dan $2y$ diverifikasi dengan cara yang sama.

Verifikasi kata sandi terhadap hash

Berjalan sepenuhnya di browser Anda. Data Anda tidak pernah diunggah.

Apa itu Playground bcrypt?

Bereksperimenlah dengan bcrypt: pilih faktor cost, masukkan salt tertentu atau pakai yang acak, dan lihat hash hasilnya terurai menjadi versi, cost, salt, dan hash, beserta lama waktu komputasinya. Verifikator memeriksa kata sandi terhadap hash $2a$, $2b$, dan $2y$.

Cara menggunakan Playground bcrypt

  1. Masukkan Kata sandi; petunjuk menunjukkan berapa dari 72 byte bcrypt yang terpakai.
  2. Atur Faktor cost (4–16) dan, jika mau, Salt 22 karakter.
  3. Klik Buat hash untuk melihat hash terenkode, bagian-bagiannya, dan waktu yang dibutuhkan.
  4. Tempel hash bcrypt apa pun ke panel verifikasi untuk menguji kata sandi.

Contoh

Masukan
Kata sandi password, cost 4, salt abcdefghijklmnopqrstuu
Keluaran
$2b$04$abcdefghijklmnopqrstuughE8Ev8uGFaUgY2cNEySvxngrb/Jzdm

Sama dengan keluaran pyca/bcrypt untuk kata sandi dan salt yang sama.

Kapan menggunakan Playground bcrypt

Pakai untuk mereproduksi hash bcrypt dengan salt yang diketahui, memilih faktor cost dengan mengukur waktu, atau memverifikasi hash dari database saat debugging. Utamakan Argon2id untuk rancangan baru.

Cara kerja Playground bcrypt

bcrypt (Provos & Mazières, 1999) menjalankan penyiapan kunci EksBlowfish yang mahal sebanyak 2^cost kali, lalu mengenkripsi 'OrpheanBeholderScryDoubt' sebanyak 64 kali. Salt 16 byte dan hasil 23 byte ditulis dalam alfabet Base64 khas bcrypt (./A–Za–z0–9). Komputasi memakai hash-wasm (WebAssembly). Kata sandi lebih dari 72 byte UTF-8 ditolak karena bcrypt mengabaikan semua setelah byte ke-72.

Kasus Penggunaan Umum

  • Mengukur lama waktu setiap faktor cost
  • Mereproduksi vektor uji dengan salt tetap
  • Memeriksa bahwa hash PHP $2y$ lolos verifikasi
  • Mengajarkan struktur hash bcrypt

Pertanyaan Umum

Faktor cost berapa yang harus dipakai?

Minimal 10 (OWASP); pilih nilai tertinggi yang menjaga waktu hashing di bawah sekitar 250 ms di server Anda. Setiap +1 menggandakan waktu.

Apa beda $2a$, $2b$, dan $2y$?

Ketiganya menandai perbaikan bug implementasi lama. Untuk kata sandi hingga 72 byte, ketiganya menghasilkan hash yang sama, dan ketiganya lolos verifikasi di sini.

Mengapa kata sandi panjang saya ditolak?

bcrypt hanya memakai 72 byte pertama. Memotong diam-diam akan membuat kata sandi berbeda bertabrakan, jadi alat ini menolaknya.

Jelajahi kategori lainnya