Bcrypt är en lösenordshashningsfunktion designad för att vara långsam och beräkningsintensiv, vilket gör den motståndskraftig mot brute-force-attacker. Det är branschstandarden för säker lagring av lösenord.
Hur Bcrypt fungerar
Bcrypt använder Blowfish-chiffret med ett salt och en kostnadsfaktor. Kostnadsfaktorn (rundor) bestämmer hur många iterationer algoritmen utför - varje ökning fördubblar beräkningstiden, vilket gör attacker exponentiellt svårare.
Varför använda Bcrypt?
Till skillnad från MD5/SHA som är snabba (dåligt för lösenord), är bcrypt avsiktligt långsam. Detta gör brute-force-attacker opraktiska. En kostnad på 10 betyder 2^10 (1 024) iterationer, vilket tar ~100ms att hasha - obetydligt för inloggning men förödande för angripare som provar miljarder lösenord.
Bästa säkerhetspraxis
Använd kostnad 10-12 för de flesta applikationer. Kostnad 10 är det nuvarande rekommenderade minimum. Använd aldrig MD5 eller SHA-1 för lösenord - de är knäckta. Lagra aldrig lösenord i klartext. Använd alltid bcrypt, Argon2 eller scrypt för lösenordshashning.