Hoppa till innehåll

Bcrypt-generator

Skapa en bcrypt-lösenordshash med ett slumpmässigt salt på 16 byte och en kostnadsfaktor från 4 till 12. Verktyget returnerar den standardiserade modulära kryptosträngen som börjar med $2a$, vilken PHP password_verify, Node.js bcrypt, Spring Security och de flesta ramverk godtar. Använd den för att skapa testanvändare, återställa ett administratörslösenord i en databas eller kontrollera din egen hashkod. Lösenordet visas eller lagras aldrig.

Återställ

Vanliga frågor

Vad är bcrypt?

Bcrypt är en funktion för lösenordshashning från 1999 som bygger på Blowfish-chiffret. Den kombinerar ett slumpmässigt salt med en justerbar kostnad, så varje extra kostnadssteg fördubblar arbetet som en angripare behöver lägga på varje gissning. Den är fortfarande ett vanligt och välstött val för lagring av lösenord.

Vad betyder utdatasträngen?

En hash som $2a$10$ följd av 53 tecken innehåller version 2a, kostnaden 10, ett salt på 22 tecken och en hash på 31 tecken, allt i bcrypts egen Base64-teckenuppsättning. Lagra hela strängen, eftersom verifieraren läser saltet och kostnaden från den.

Vilken kostnadsfaktor ska jag välja?

Verktyget tillåter en kostnad från 4 till 12 och använder 10 som standard, vilket är vanligt som standard i ramverk. Varje steg fördubblar tiden, så kostnad 12 tar ungefär fyra gånger så lång tid som kostnad 10. I produktion bör du välja den högsta kostnad som dina servrar klarar av på ungefär 100 till 250 millisekunder.

Varför är kostnaden begränsad till 12?

Högre kostnader tar flera sekunder per hash och skulle göra att en enda begäran upptar servern länge. Kostnad 12 är redan stark för de flesta program, och du kan hasha om med en högre kostnad i din egen miljö vid behov.

Varför ger samma lösenord olika hash varje gång?

Verktyget genererar ett nytt slumpmässigt salt på 16 byte för varje hash. Olika salt ger olika strängar, men alla verifieras mot samma lösenord. Det hindrar angripare från att använda förberäknade tabeller.

Finns det en gräns för lösenordets längd?

Ja. Bcrypt använder bara lösenordets första 72 byte, så verktyget avvisar längre lösenord i stället för att tyst ignorera resten. Icke-ASCII-tecken upptar flera byte var i UTF-8.

Godtar PHP eller Laravel en $2a$-hash?

Ja. PHP password_verify, Laravel, Symfony och WordPress-pluginer som använder password_hash godtar hashar med $2a$, $2b$ och $2y$, som bara skiljer sig åt genom historiska buggfixar. Node.js bcrypt, bcryptjs, Python bcrypt och Spring Security godtar också $2a$.

Lagrar eller loggas mitt lösenord?

Nej. Lösenordet används bara för att beräkna hashen under förfrågan. Det tas bort från svaret och skrivs aldrig till loggar eller lagring.

Bör jag använda bcrypt eller Argon2?

Argon2id är den nyare rekommendationen från OWASP eftersom den kräver mycket minne, vilket gör GPU-attacker dyrare. bcrypt är fortfarande ett godtagbart alternativ och har mycket brett stöd i bibliotek, så det är ett bra val när Argon2 inte är tillgängligt.

Hur kontrollerar jag ett lösenord mot en bcrypt-hash?

Använd Bcrypt Verifier på den här webbplatsen eller anropa ramverkets verifieringsfunktion. Jämför aldrig bcrypt-strängar direkt, eftersom en ny hash av samma lösenord alltid ser annorlunda ut.

Om OneClick Pro

OneClick Pro är en kostnadsfri samling med mer än 150 webbverktyg för det dagliga arbetet: konvertera bilder och enheter, formatera och validera kod, kontrollera domäner och SEO samt arbeta med text, datum och tal. Alla verktyg fungerar utan registrering eller prenumeration, och det du anger används bara för att beräkna resultatet och sparas aldrig. Använd samlingen som en snabb verktygslåda för enstaka uppgifter eller bokmärk verktygen du använder varje dag.