Generador y Verificador de Hash Bcrypt

Genera un hash bcrypt de una contraseña en texto plano con el factor de coste que elijas, o verifica una contraseña contra un hash bcrypt existente, todo en tu navegador.

Cargando herramienta…

Generador y Verificador de Hash BcryptCambia entre Hash y Verificar para convertir una contraseña en texto plano en un hash bcrypt con sal, o para comprobar si una contraseña coincide con un hash existente. Elige un factor de coste para controlar lo lento y resistente a fuerza bruta que es el hash, y deja que la herramienta genere una sal aleatoria nueva en cada hash. Todo se ejecuta localmente mediante una compilación WebAssembly de bcrypt, así que las contraseñas y los hashes nunca salen de tu navegador.

¿Qué es Generador y Verificador de Hash Bcrypt?

El Generador y Verificador de Hash Bcrypt es una herramienta gratuita en el navegador para la función de hash de contraseñas bcrypt, el mismo algoritmo que usan incontables frameworks web para guardar contraseñas de forma segura. Desarrolladores de backend, ingenieros de seguridad y quienes aprenden sobre autenticación la usan para producir un hash $2b$ de ejemplo con el que poblar una base de datos, para confirmar que un hash almacenado realmente coincide con una contraseña conocida, o para ver cómo el factor de coste cambia el esfuerzo requerido. En modo Hash escribes una contraseña y un factor de coste (4-31); se genera por ti una sal aleatoria de 16 bytes y el resultado es la cadena bcrypt codificada estándar que lleva juntos la versión del algoritmo, el coste, la sal y el digest. En modo Verificar pegas una contraseña y un hash bcrypt existente, pulsas Verificar y la herramienta te indica si coinciden. Como bcrypt es lento a propósito, un factor de coste alto puede tardar un momento perceptible en calcularse.

Cómo usar Generador y Verificador de Hash Bcrypt

  1. Elige Hash para crear un hash nuevo, o Verificar para comprobar una contraseña contra uno existente.
  2. En modo Hash, escribe o pega la contraseña en texto plano que quieres proteger.
  3. Ajusta el factor de coste (10 es un valor por defecto habitual; más alto es más lento y más fuerte).
  4. Pulsa Generar hash y copia la cadena bcrypt resultante en cuanto aparezca.
  5. En modo Verificar, introduce la contraseña y pega el hash bcrypt, luego pulsa Verificar para ver Coincide o No coincide.

Ejemplos

Generar el hash de una contraseña con el coste por defecto

Entrada

contraseña: correct horse battery staple, coste: 10

Salida

$2b$10$... (un hash bcrypt de 60 caracteres; la sal es aleatoria, así que difiere cada vez)

Verificar una contraseña contra un hash almacenado

Entrada

contraseña: hunter2, hash: $2b$10$N9qo8uLOickgx2ZMRZoMyeIjZAgcfl7p92ldGxad68LJZdL17lhWy

Salida

Coincide

Una contraseña incorrecta no pasa la verificación

Entrada

contraseña: wrongpass, hash: $2b$10$N9qo8uLOickgx2ZMRZoMyeIjZAgcfl7p92ldGxad68LJZdL17lhWy

Salida

No coincide

Preguntas frecuentes

¿Se envían mis contraseñas o hashes a algún sitio?
No. El hash y la verificación se ejecutan por completo en tu navegador usando una compilación WebAssembly de bcrypt. Nada de lo que escribes se sube ni se almacena en ningún servidor, así que la herramienta sigue funcionando sin conexión y tus contraseñas nunca salen de la página.
¿Qué factor de coste debería usar?
El factor de coste define cuántas rondas realiza bcrypt; cada incremento aproximadamente duplica el trabajo. Un valor de 10-12 es habitual en aplicaciones web. Valores más altos resisten mejor la fuerza bruta pero tardan más en calcularse, por lo que números muy altos pueden congelar el navegador un instante.
¿Por qué el hash cambia cada vez para la misma contraseña?
Se genera una sal aleatoria de 16 bytes nueva para cada hash, y la sal queda incrustada en el resultado. Sales distintas producen hashes distintos para la misma contraseña, que es justo lo que hace seguro a bcrypt. La verificación sigue funcionando porque la sal se vuelve a leer del hash almacenado.
¿Por qué la verificación dice que mi hash no es válido?
Verificar espera un hash bcrypt completo en la forma codificada estándar, que suele empezar por $2a$, $2b$ o $2y$ seguido del coste y 53 caracteres de sal más digest. Si falta o se altera parte de la cadena, la herramienta no puede leer la sal e informa de un error.
¿Puedo usar este hash directamente en mi aplicación?
Sí. La salida es una cadena bcrypt codificada estándar compatible con las librerías bcrypt habituales, así que puedes almacenarla y verificar contra ella en tu servidor. Para sistemas reales, genera el hash donde se introduce la contraseña en lugar de copiarlo a través de otras herramientas.

Herramientas relacionadas