Convertidor gratuït

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.

Sobre aquesta eina

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.

Per què hash contrasenyes amb bcrypt

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.

Com utilitzar-la

Escriviu una contrasenya, trieu el cost, obteniu el hash.

  1. Introduïu la contrasenya: Escriviu la contrasenya per fer hash. L'eina s'executa completament al vostre navegador; la contrasenya no es transmet enlloc.
  2. Trieu el factor de cost: El valor per defecte és 10, produint aproximadament 100 ms de temps de resum en el maquinari modern. 12 es recomana per a aplicacions noves (250 ms). Els valors més alts augmenten la seguretat a costa d'una verificació més lenta.
  3. Generar: El hash genera una sal aleatòria de 16 bytes, executa la derivació de clau bcrypt i produeix un hash en format estàndard de $ 2b$.
  4. Utilitzeu el hash: Emmagatzemeu la sortida completa ($2b$cost$saltAndHash) a la vostra base de dades de contrasenyes. La verificació utilitza la mateixa biblioteca per comparar un candidat amb el hash emmagatzemat.

Casos d'ús comuns

Detalls tècnics

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.

Bones pràctiques

Preguntes freqüents

Puc personalitzar la sortida generada?
Sí. L'eina ofereix diverses opcions de personalització per adaptar la sortida a les vostres necessitats específiques. Ajusta la configuració abans de generar o regenera amb diferents opcions.
El contingut generat és d'ús gratuït?
Sí. Tot el que genereu amb aquesta eina és vostre per utilitzar-lo amb finalitats personals, educatives o comercials sense cap restricció ni requisit d'atribució.
Això requereix un compte?
No. L'eina està a punt per utilitzar-se immediatament sense registrar-se, sense correu electrònic i sense registre. Només has d'obrir la pàgina i començar a generar.
Les meves dades d'entrada es mantenen privades?
Sí. Tot el processament es fa al vostre navegador. Les vostres dades d'entrada i la sortida generada mai s'envien a cap servidor extern.
He d'afegir la meva pròpia sal?
No. bcrypt genera i emmagatzema una sal aleatòria automàticament. Afegir la teva pròpia sal és innecessari i pot provocar errors subtils. Utilitzeu la generació de sal predeterminada de la biblioteca.
S'envia la contrasenya a un servidor?
No. L'hashing bcrypt passa al vostre navegador. La contrasenya no surt mai del vostre dispositiu.
Per què hi ha variants de $2a$, $2b$, $2y$?
$2a$ és l'original. $2b$ corregeix un error global descobert el 2014. $2y$ és específic de PHP, funcionalment equivalent a $2b$. Els nous sistemes haurien de produir hash de $ 2b$.
Puc rebaixar un hash d'alt cost a un cost més baix?
No. El hash inclou el cost com a part de la sortida i la verificació requereix el mateix cost. Per canviar el cost, torneu a repetir l'inici de sessió amb èxit.