Generador Bcrypt
Generador de hash bcrypt gratuito — 100% lado cliente. Benchmark del factor de coste en tiempo real, parser del hash y snippets para Node.js, Python, PHP, Go.
Actualizado junio de 2026
Revisado por Rafael Duarte
Benchmark local
Tiempo de procesamiento en tu hardware actual
Fragmentos de implementación
const bcrypt = require('bcryptjs');
const SALT_ROUNDS = 12; // OWASP recommended
async function hashPassword(plaintext) {
return await bcrypt.hash(plaintext, SALT_ROUNDS);
}
async function verifyPassword(plaintext, hash) {
return await bcrypt.compare(plaintext, hash);
}
const hash = await hashPassword('user_password');
// '$2b$12$...' (60 chars, always different due to random salt)
const isValid = await verifyPassword('user_password', hash);
// trueCómo funciona
Generar el hash toma menos de cinco segundos
1. Pega la contraseña
La insignia "CLIENT-SIDE SECURE" confirma que no se hace ninguna petición de red al escribir.
2. Ajusta el factor de coste
Deslizador de 4 a 18 — el coste 12 es el valor por defecto recomendado por OWASP.
3. Genera y copia
El hash aparece junto al tiempo exacto que tardó en tu hardware; cópialo con un clic.
Qué hace esta herramienta
Más allá de generar el hash
Verifica un hash existente
La pestaña Verify compara una contraseña contra un hash bcrypt y muestra un check verde o una X roja en milisegundos.
Benchmark del factor de coste
Mide el tiempo real de hashing en tu propio hardware para cada valor de coste, de 8 a 14.
Decodifica un hash bcrypt
Pega cualquier hash para ver por separado su versión, coste, salt y checksum.
Snippets de código listos
Genera el equivalente en Node.js, Python, PHP, Go, Java, Ruby, C# y Rust.
100% del lado del cliente con bcryptjs
Ninguna contraseña sale del navegador — confírmalo en la pestaña Network de las DevTools.
Script de benchmark para tu servidor
Copia un script listo (Node.js, Python, PHP, Ruby o Go) que prueba los costes 10 a 16 en tu propia máquina de producción, no una estimación del navegador.
Ejemplos
Cuándo vas a necesitar esto
Los escenarios más comunes entre quienes usan la herramienta
Autenticación de usuarios
Hashea la contraseña antes de guardarla; bcrypt.compare() confirma la coincidencia en tiempo constante durante el login.
Migrar desde un algoritmo débil
Re-hashea progresivamente las contraseñas de MD5 o SHA-1 a bcrypt cada vez que alguien inicia sesión con éxito.
Calibrar el factor de coste
Corre el benchmark en el hardware de producción para encontrar el coste más alto que aún respete tu límite de UX.
Auditoría de seguridad
Pega un hash existente para verificar su versión, coste y la longitud del salt y del checksum.
Antes de usarlo en producción, revisa esto
Coste 4–8 en producción
Se calculan en menos de 1ms — sin resistencia real a fuerza bruta. Usa 10 como mínimo y 12 como valor por defecto.
Hashear un hash que ya está hasheado
Produce una cadena que nunca se podrá verificar de vuelta. Hashea siempre el texto plano original, nunca un hash previo.
Límite de 72 bytes
Bcrypt trunca la entrada en silencio — las contraseñas más largas necesitan un pre-hash con SHA-256 o pasar a Argon2id.
Guardar el salt por separado
Es innecesario — bcrypt ya incluye el salt dentro de los 60 caracteres del hash.
Contraseñas con tildes o emojis cerca del límite
Bcrypt cuenta bytes, no caracteres — un emoji puede ocupar 4 bytes. Una contraseña de 60 caracteres acentuados puede superar los 72 bytes antes de lo esperado y truncarse en silencio.
Comparar hashes con === en vez de compare()
Comparar cadenas directamente filtra un timing attack, porque se detiene en el primer byte distinto. Usa siempre bcrypt.compare(), password_verify() o su equivalente, que corren en tiempo constante.
Por qué generar el hash aquí
Todo el hashing corre en el navegador con bcryptjs, una implementación pura en JavaScript — abre las DevTools y confirma que la pestaña Network queda vacía.
El benchmark mide el tiempo real en tu propio hardware, no una estimación genérica, y los snippets para ocho lenguajes te ahorran el paso de escribir la llamada a la librería a mano.
A diferencia de una calculadora de hash genérica, esta herramienta descompone el hash generado (versión, coste, salt, checksum) y además genera el script de benchmark para correr en tu propio servidor de producción, el hardware que de verdad va a autenticar a tus usuarios.
Bcrypt vs. Argon2id
Ambos resuelven el hashing de contraseñas; la elección depende del proyecto
Preguntas frecuentes
OWASP recomienda el coste 12 como punto de partida, apuntando a ~250ms por hash en hardware moderno. Usa el benchmark de esta página para medir tu propio servidor y elegir el coste más alto que se mantenga bajo tu límite de UX (300ms–1s).
Referencias
Guía de referencia sobre algoritmos recomendados y factores de coste para almacenar contraseñas.
La librería JavaScript pura que impulsa esta herramienta.
El paper de 1999 de Niels Provos y David Mazières que presentó bcrypt y su factor de coste ajustable.
Artículo relacionado
Salt, pepper, bcrypt e Argon2id: como proteger senhas de verdade
Herramientas relacionadas
- Cifrado César Desarrollador Cifrado César gratuito: codifica o decodifica con cualquier desplazamiento, rueda interactiva, fuerza bruta 25 turnos y análisis de frecuencia. ROT13 incluido.
- Calculadora CHMOD Desarrollador Calculadora chmod visual con avisos de seguridad. Establece permisos de lectura/escritura/ejecución y obtén salida octal y simbólica al instante. Incluye umask, SUID/SGID/sticky bit y presets.
- Simulador Máquina Enigma Desarrollador Simula la máquina de cifrado electromecánica de la Segunda Guerra con flujo de señal eléctrica en tiempo real, rotores configurables y cuadro de conexiones. Sin registro.
- Generador de Hash Online Desarrollador Genera hashes MD5, SHA-1, SHA-256, SHA-384, SHA-512 y CRC32 al instante en tu navegador. Herramienta gratuita y 100% local — sin registro, sin instalación.
- Decodificador JWT Desarrollador Decodifica e inspecciona JSON Web Tokens al instante — visualiza header, payload, verifica firmas HMAC y genera código JWT en PHP, JavaScript, Python y Java.