Bcrypt adgangskode Generator
Generer sikker bcrypt adgangskode hashes øjeblikkeligt i din browser. Vælg din omkostningsfaktor og hash-adgangskoder på klientsiden - helt privat og gratis.
Generer sikker bcrypt adgangskode hashes øjeblikkeligt i din browser. Vælg din omkostningsfaktor og hash-adgangskoder på klientsiden - helt privat og gratis.
bcrypt er en adgangskode-hashing-funktion designet af Niels Provos og David Mazières i 1999, afledt af Blowfish-chifferet. I modsætning til generelle hash-funktioner som SHA-256, er bcrypt bevidst langsom - og konfigurerbart langsom via en omkostningsparameter - som er præcis den egenskab, en password-hasher har brug for. En hurtigere hash-funktion lader angribere brute-force flere kandidater i sekundet; en langsommere begrænser dem.
bcrypt inkorporerer også salt per adgangskode automatisk, hvilket eliminerer en hel klasse af angreb baseret på forudberegnet regnbuetabeller. Salt- og omkostningsparameteren gemmes som en del af bcrypt-outputtet, så verifikation behøver kun den gemte hash og kandidatadgangskoden - ingen separat saltstyring. Denne kombination af langsomhed, salt og selvstændigt format gjorde bcrypt til standard password-hash i to årtier og et stærkt valg i dag.
Der findes moderne alternativer. Argon2 vandt 2015 Password Hashing Competition og tilbyder hukommelseshårdhed ud over tidshårdhed. scrypt tilbyder lignende egenskaber. Til nye designs er Argon2id det anbefalede valg. bcrypt forbliver acceptabel og bredt udbredt, især i miljøer, hvor Argon2 ikke er tilgængelig.
At gemme adgangskoder som almindelig tekst er fejlbehandling. At gemme dem med en hurtig hash som SHA-256 er knapt bedre - moderne GPU'er beregner milliarder af SHA-256 hashes i sekundet, hvilket gør brute-force-angreb mod enhver almindelig adgangskode mulig på timer. bcrypts bevidste langsomhed flytter økonomien: til en prisfaktor 12 bruger en angriber ca. 250 ms pr. kandidatadgangskode, hvilket gør brute-force upraktisk for enhver ikke-triviel adgangskode.
bcrypts automatiske per-password salt besejrer også regnbuebordsangreb. To brugere med den samme adgangskode producerer forskellige bcrypt-hashes, fordi deres salte er forskellige. At kompromittere adgangskodedatabasen tillader ikke en angriber hurtigt at identificere almindelige adgangskoder eller forudberegnet tabelhits.
Indtast en adgangskode, vælg pris, få hashen.
bcrypt bruger en modificeret Blowfish-chiffers nøgleopsætningsfase, gentaget 2^ omkostningstider. Omkostningsfaktoren er logaritmisk — omkostning 12 er dobbelt så langsomme som omkostning 11, fire gange så langsomme som omkostning 10. Denne logaritmiske skalering giver administratorer mulighed for at skrue op for omkostningerne over tid, efterhånden som hardwaren forbedres, uden at redesigne systemet.
Outputformatet er $version$cost$saltAndHash, hvor saltAndHash er base64-kodet med et brugerdefineret alfabet. Versionen er typisk $2b$ (den moderne variant med wraparound-fejlen rettet) eller $2y$ (PHP-specifik, ækvivalent). Saltet er 16 bytes; hashen er 24 bytes; sammen koder de til 53 tegn i custom-base64.
Maksimal inputlængde er 72 bytes (grænsen for Blowfish-nøglens længde). Længere adgangskoder afkortes lydløst, hvilket er et langvarigt bcrypt-mærke. Bedste praksis er enten at begrænse adgangskodens længde til 72 bytes eller pre-hash med SHA-256 for at normalisere længden før bcrypt.