Bcrypt ir paroļu jaukšanas funkcija, kas izstrādāta, lai būtu lēna un skaitļošanas ziņā dārga, padarot to izturīgu pret brute-force uzbrukumiem. Tas ir nozares standarts drošai paroļu glabāšanai.
Kā darbojas Bcrypt
Bcrypt izmanto Blowfish šifru ar sāli un izmaksu faktoru. Izmaksu faktors (kārtas) nosaka, cik iterāciju algoritms veic - katrs pieaugums dubulto aprēķina laiku, padarot uzbrukumus eksponenciāli grūtākus.
Kāpēc izmantot Bcrypt?
Atšķirībā no MD5/SHA, kas ir ātri (slikti parolēm), bcrypt ir apzināti lēns. Tas padara brute-force uzbrukumus nepraktiskus. Izmaksas 10 nozīmē 2^10 (1024) iterāciju, kas aizņem ~100ms jaukšanai - nenozīmīgi pieteikšanās brīdī, bet postoši uzbrucējiem, kas mēģina miljardiem paroļu.
Labākās drošības prakses
Izmantojiet izmaksas 10-12 vairumam lietojumprogrammu. Izmaksas 10 ir pašreizējais ieteicamais minimums. Nekad neizmantojiet MD5 vai SHA-1 parolēm - tās ir uzlauztas. Nekad neglabājiet vienkārša teksta paroles. Vienmēr izmantojiet bcrypt, Argon2 vai scrypt paroļu jaukšanai.