Contrasenya Bcrypt Generador
Genereu hash de contrasenyes bcrypt segures a l'instant al vostre navegador. Trieu el vostre factor de cost i les contrasenyes hash del costat del client: completament privat i gratuït.
Genereu hash de contrasenyes bcrypt segures a l'instant al vostre navegador. Trieu el vostre factor de cost i les contrasenyes hash del costat del client: completament privat i gratuït.
bcrypt és una funció de resum de contrasenya dissenyada per Niels Provos i David Mazières el 1999, derivada del xifratge Blowfish. A diferència de les funcions hash de propòsit general com SHA-256, bcrypt és deliberadament lent, i configurable, mitjançant un paràmetre de cost, que és exactament la propietat que necessita un hash de contrasenyes. Una funció hash més ràpida permet als atacants forçar més candidats per segon; un més lent els limita.
bcrypt també incorpora automàticament sal per contrasenya, eliminant tota una classe d'atacs basats en taules de l'arc de Sant Martí precomputades. El paràmetre sal i cost s'emmagatzemen com a part de la sortida bcrypt, de manera que la verificació només necessita el hash emmagatzemat i la contrasenya del candidat, sense gestió de sal independent. Aquesta combinació de lentitud, sal i format autònom va fer que bcrypt fos el hash de contrasenya predeterminat durant dues dècades i una elecció forta avui.
Existeixen alternatives modernes. Argon2 va guanyar el Concurs d'hashing de contrasenyes de 2015 i ofereix duresa de memòria a més de duresa de temps. scrypt ofereix propietats similars. Per als nous dissenys, Argon2id és l'opció recomanada. bcrypt continua sent acceptable i àmpliament desplegat, especialment en entorns on Argon2 no està disponible.
Emmagatzemar les contrasenyes com a text sense format és una mala pràctica. Emmagatzemar-los amb un hash ràpid com SHA-256 amb prou feines és millor: les GPU modernes calculen milers de milions de hash SHA-256 per segon, fent que els atacs de força bruta contra qualsevol contrasenya comuna siguin factibles en hores. La lentitud deliberada de bcrypt canvia l'economia: amb un factor de cost 12, un atacant gasta aproximadament 250 ms per contrasenya candidata, cosa que fa que la força bruta sigui poc pràctica per a qualsevol contrasenya no trivial.
La sal automàtica per contrasenya de bcrypt també derrota els atacs de la taula de l'arc de Sant Martí. Dos usuaris amb la mateixa contrasenya produeixen hashs bcrypt diferents perquè les seves sals són diferents. El fet de comprometre la base de dades de contrasenyes no permet que un atacant identifiqui ràpidament contrasenyes habituals o visites de taula precalculades.
Escriviu una contrasenya, trieu el cost, obteniu el hash.
bcrypt utilitza la fase de configuració de clau d'un xifrat Blowfish modificat, repetida 2^cost vegades. El factor de cost és logarítmic: el cost 12 és dues vegades més lent que el cost 11, quatre vegades més lent que el cost 10. Aquesta escala logarítmica permet als administradors augmentar el cost amb el temps a mesura que millora el maquinari, sense redissenyar el sistema.
El format de sortida és $version$cost$saltAndHash, on saltAndHash està codificat en base64 amb un alfabet personalitzat. Normalment, la versió és de $ 2b$ (la variant moderna amb l'error envoltant solucionat) o $ 2y$ (específic de PHP, equivalent). La sal és de 16 bytes; el hash és de 24 bytes; junts codifiquen a 53 caràcters de custom-base64.
La longitud màxima d'entrada és de 72 bytes (límit de longitud de clau de Blowfish). Les contrasenyes més llargues es trunquen en silenci, cosa que és una peculiaritat de bcrypt de llarga data. La millor pràctica és limitar la longitud de la contrasenya a 72 bytes o fer un hash prèviament amb SHA-256 per normalitzar la longitud abans de bcrypt.