Cómo usar: Generador y verificador de Bcrypt
- Introduce una contraseña y elige un factor de coste (10–12 es lo habitual).
- Haz clic en Generar hash; cada ejecución produce un hash distinto porque la sal es aleatoria.
- Para comprobar una contraseña, pégala junto con el hash guardado en Verificar una contraseña.
¿Qué es bcrypt?
Bcrypt es una función de hash para contraseñas diseñada en 1999 para ser deliberadamente lenta. Cada hash incluye una sal aleatoria de 128 bits y un factor de coste: el trabajo crece como 2coste, así que puedes hacer el cálculo más lento a medida que el hardware mejora. Esto hace que los ataques de fuerza bruta contra hashes robados sean mucho más costosos que con funciones rápidas como MD5 o SHA-256, que nunca deberían usarse por sí solas para contraseñas.
Anatomía de un hash bcrypt
$2b$12$R9h/cIPz0gi.URNNX3kh2OPST9/PgBkqquzi.Ss7KIUgO2t0jWMUW
│ │ └ sal de 22 caracteres └ hash de 31 caracteres
$2b$ indica la versión del algoritmo y 12 el coste. $2a$, $2b$ y $2y$ producen hashes idénticos para contraseñas normales; $2y$ es el nombre que usan PHP y Apache, y $2b$ es el estándar actual de OpenBSD.
Cómo elegir el factor de coste
| Coste | Iteraciones | Uso |
|---|---|---|
| 4–8 | 16–256 | Solo para pruebas unitarias |
| 10 | 1.024 | Valor por defecto habitual (Laravel, Node bcrypt) |
| 12 | 4.096 | Buena opción en servidores actuales (~250 ms) |
| 14+ | 16.384+ | Muy lento; puede afectar al rendimiento del inicio de sesión |
Apunta a 100–500 ms por hash en tu hardware de producción. El tiempo mostrado arriba se mide en tu navegador y es solo orientativo.
Bcrypt no se puede «descifrar»
Bcrypt es unidireccional: no existe ninguna clave que convierta un hash de nuevo en una contraseña. La verificación funciona calculando el hash de la contraseña candidata con la sal y el coste almacenados en el hash, y comparando los resultados; eso es exactamente lo que hace el comprobador. Ten en cuenta que bcrypt ignora todo lo que venga después de los primeros 72 bytes de una contraseña.
Para archivos de autenticación básica HTTP, usa el generador de htpasswd; para crear contraseñas seguras, usa el generador de contraseñas.
También se busca como: generador bcrypt, bcrypt online, verificar hash bcrypt, comprobar contraseña bcrypt, hash contraseña bcrypt, bcrypt descifrar, hash $2y$.
Herramientas que combinan con: Generador y verificador de Bcrypt
- Generador de Hash — Calcula al instante hashes MD5 y SHA de cualquier texto o archivo, crea firmas HMAC y pega un checksum esperado para verificar una descarga.
- Generador HMAC — Calcula firmas HMAC con clave para peticiones de API y webhooks, y comprueba si una firma recibida es válida, usando la Web Crypto API de tu navegador.
- Comprobador de seguridad de contraseñas — Escribe una contraseña para ver cuántas combinaciones posibles tiene, cuánto tiempo se tardaría en descifrarla, qué patrones la hacen más vulnerable y, si quieres, si aparece en filtraciones de datos conocidas.
- Decodificador JWT — Pega un token web JSON para examinar su encabezado y su carga útil, comprobar cuándo caduca y verificar su firma.
Preguntas frecuentes
¿Se puede descifrar un hash bcrypt?
¿Por qué el hash es distinto cada vez?
¿Son compatibles $2a$, $2b$ y $2y$?
password_verify de PHP acepta las tres.