Generador y Verificador de Hash Bcrypt
Genere hashes de contraseñas bcrypt con un factor de costo configurable (rondas 4-15) y verifique si una contraseña de texto plano coincide con un hash bcrypt existente. Incluye un desglose visual de la anatomía del hash, medidor de seguridad en tiempo real, estimador de costo vs. velocidad y explicador de variantes ($2a$, $2b$, $2y$).
Tu bloqueador de anuncios impide que mostremos anuncios
MiniWebtool es gratis gracias a los anuncios. Si esta herramienta te ayudó, apóyanos con Premium (sin anuncios + herramientas más rápidas) o añade MiniWebtool.com a la lista de permitidos y recarga la página.
- O pásate a Premium (sin anuncios)
- Permite anuncios para MiniWebtool.com y luego recarga
Generador y Verificador de Hash Bcrypt
Bienvenido al Generador y Verificador de Hash Bcrypt — una herramienta en línea gratuita que te permite generar hashes de contraseñas bcrypt criptográficamente seguros con un factor de costo configurable y verificar si una contraseña en texto plano coincide con un hash bcrypt existente. Ya sea que estés poblando una base de datos, depurando un flujo de inicio de sesión, migrando usuarios entre sistemas o aprendiendo sobre el hashing de contraseñas adaptativo, esta herramienta te ofrece resultados instantáneos además de un desglose visual educativo de cómo bcrypt estructura su formato de hash de 60 caracteres.
¿Qué es Bcrypt y por qué usarlo?
Bcrypt es una función de hashing de contraseñas adaptativa basada en el cifrado Blowfish, diseñada en 1999 por Niels Provos y David Mazières. A diferencia de los hashes criptográficos rápidos como SHA-256 o MD5, bcrypt es intencionadamente lento e incluye un factor de costo ajustable que puede aumentarse a medida que el hardware mejora. Cada hash bcrypt también incorpora una sal aleatoria única, que evita que los atacantes utilicen tablas arcoíris precomputadas. OWASP recomienda bcrypt como uno de los cuatro algoritmos de hashing de contraseñas aceptables para almacenar credenciales de usuario en aplicaciones web modernas.
Factor de Costo: El corazón de la seguridad de Bcrypt
El factor de costo (también llamado factor de trabajo o rondas) controla qué tan costoso es computacionalmente el hash. Es logarítmico: cada +1 duplica el trabajo. Un costo de 12 tarda aproximadamente 250 milisegundos en una CPU moderna típica; un costo de 14 tarda aproximadamente 1 segundo. La tabla a continuación muestra los tiempos de cómputo estimados para cada nivel de costo — elige un valor que sea lo suficientemente rápido para tu flujo de inicio de sesión pero lo suficientemente lento como para frustrar a los atacantes.
| Costo | Rondas | Tiempo Est. | Fortaleza | Recomendado para |
|---|---|---|---|---|
| 4 | 2^4 |
< 1 ms | Solo pruebas — nunca en producción | |
| 5 | 2^5 |
2 ms | Solo pruebas — nunca en producción | |
| 6 | 2^6 |
4 ms | Solo pruebas — nunca en producción | |
| 7 | 2^7 |
8 ms | Solo pruebas — nunca en producción | |
| 8 | 2^8 |
16 ms | Sistemas heredados (legacy) | |
| 9 | 2^9 |
31 ms | Sistemas heredados (legacy) | |
| 10 | 2^10 |
62 ms | Mínimo para producción | |
| 11 | 2^11 |
125 ms | Mínimo para producción | |
| 12 | 2^12 |
250 ms | Valor predeterminado recomendado | |
| 13 | 2^13 |
500 ms | Aplicaciones de alta seguridad | |
| 14 | 2^14 |
1.00 s | Fortaleza máxima | |
| 15 | 2^15 |
2.00 s | Fortaleza máxima |
Anatomía del Hash Bcrypt
Cada hash bcrypt tiene exactamente 60 caracteres de largo y sigue una estructura fija. Comprender cada segmento facilita mucho la depuración de problemas de inicio de sesión o la migración de hashes entre sistemas:
$2b$ → variante del algoritmo$12$ → factor de costo (2^12 = 4096 rondas)7i..qTPY7p4ZLvKIepRKwe → sal en base64 de 22 caractereslX0JB55DviohJT.JYruzy4EN6cl.q8O → resumen hasheado de 31 caracteres
La Sal y la codificación del Resumen
Bcrypt utiliza un alfabeto base64 personalizado que es similar al base64 estándar pero usa ./ en lugar de +/ y no utiliza relleno (padding). Esto es puramente histórico y no afecta la seguridad. La sal son 16 bytes aleatorios, codificados como 22 caracteres base64; el resumen son 23 bytes, codificados como 31 caracteres.
Explicación de las Variantes de Bcrypt
Encontrarás varios prefijos de bcrypt en la práctica. Todos producen hashes con la misma estructura, pero tienen orígenes distintos:
Cómo usar esta herramienta
- Elegir modo: Selecciona Generar Hash para crear un nuevo hash bcrypt, o Verificar Hash para comprobar si una contraseña coincide con un hash existente.
- Ingresar contraseña: Escribe la contraseña en texto plano en el campo de entrada. El medidor de bytes te avisará si tu contraseña se acerca al límite de 72 bytes de bcrypt.
- Establecer el factor de costo: En el modo Generar, arrastra el control deslizante para elegir un factor de costo entre 4 y 15. El tiempo de cómputo estimado y la calificación de seguridad se actualizan en tiempo real.
- Pegar el hash para verificar: En el modo Verificar, pega el hash bcrypt existente de 60 caracteres que comienza con
$2a$,$2b$,$2x$o$2y$. - Ejecutar y leer el resultado: Haz clic en el botón de acción. El modo Generar devuelve el hash con un desglose anatómico codificado por colores; el modo Verificar muestra un indicador grande de COINCIDE o NO COINCIDE con el factor de costo original.
El Límite de Contraseña de 72 Bytes
Bcrypt se basa en la fase de configuración de claves de Blowfish, que solo consume los primeros 72 bytes de la contraseña. Las contraseñas de más de 72 bytes son truncadas silenciosamente por librerías antiguas o rechazadas directamente por las más nuevas. Ten en cuenta que los bytes importan, no los caracteres — un solo emoji ocupa 4 bytes, y la mayoría de los caracteres no ASCII ocupan entre 2 y 4 bytes en UTF-8. Si tu aplicación acepta contraseñas arbitrariamente largas, la mitigación estándar es realizar un pre-hash de la contraseña con SHA-256 y codificar el resumen en base64 antes de pasarlo a bcrypt; esto produce una entrada fija de 44 bytes que encaja cómodamente dentro del límite.
Cuándo elegir Bcrypt vs. Argon2 vs. Scrypt
Las recomendaciones modernas para el hashing de contraseñas de OWASP y el IETF (RFC 9106) enumeran cuatro algoritmos aceptables: Argon2id (preferido para nuevas aplicaciones), bcrypt, scrypt y PBKDF2. Elige bcrypt cuando:
- Necesites una amplia compatibilidad — cada lenguaje principal tiene una librería de bcrypt madura
- Estés trabajando con un sistema existente que ya utiliza bcrypt
- Quieras un algoritmo probado en batalla con más de 25 años de criptoanálisis
- El hashing duro de memoria (Argon2id, scrypt) no sea práctico para tu entorno
Elige Argon2id si estás construyendo un sistema nuevo sin restricciones de compatibilidad — es el ganador moderno de la Password Hashing Competition y ofrece una resistencia contra ataques de GPU y FPGA que bcrypt no puede igualar.
Casos de uso prácticos
Para Desarrolladores
- Poblar bases de datos de desarrollo con usuarios de prueba realistas sin ejecutar todo el flujo de registro
- Generar datos de prueba para tests de integración que ejerciten la ruta de inicio de sesión
- Depurar inicios de sesión fallidos verificando el hash de producción contra la contraseña que informa el usuario
- Migrar hashes heredados
$2a$a$2b$volviendo a hashear en el próximo inicio de sesión - Ajustar el factor de costo para tu entorno de producción midiendo el tiempo de cómputo real
Para Ingenieros de Seguridad
- Verificar que un servicio de autenticación de terceros esté produciendo hashes con el factor de costo que afirma
- Auditar el almacenamiento de contraseñas inspeccionando la variante y el costo del hash en muestras de producción
- Crear material de capacitación que muestre cómo la anatomía de bcrypt lo hace resistente a las tablas arcoíris
Para Estudiantes
- Generar la misma contraseña dos veces para ver cómo la sal produce hashes diferentes
- Experimentar con diferentes factores de costo para sentir el efecto de duplicación de primera mano
- Verificar un hash conocido para entender cómo bcrypt extrae el costo y la sal antes de hashear la candidata
Preguntas frecuentes
¿Qué factor de costo debería usar para bcrypt?
OWASP recomienda actualmente un factor de costo de al menos 10, siendo 12 un buen valor predeterminado moderno que tarda unos 250 milisegundos en un servidor típico. El costo es logarítmico, por lo que cada +1 duplica el trabajo. El costo 14 es apropiado para aplicaciones de alta seguridad, mientras que el costo 15 es el máximo práctico para inicios de sesión interactivos. Nunca use un costo inferior a 10 en producción.
¿Cuál es la diferencia entre $2a$, $2b$, $2x$ y $2y$?
Las cuatro son variantes de bcrypt que se distinguen por su prefijo. $2a$ es la revisión original; $2x$ y $2y$ fueron correcciones de emergencia de PHP para un error de extensión de signo descubierto en 2011; $2b$ es la implementación de referencia moderna que corrigió un error de desbordamiento en contraseñas largas. Los hashes generados con cualquier variante siguen siendo verificables. Las librerías modernas producen $2b$ por defecto y deberías preferirlo para nuevos hashes.
¿Se envía la contraseña que ingreso a un servidor?
El formulario se procesa en el servidor a través de HTTPS para realizar el cálculo de bcrypt, pero ni la contraseña ni el hash resultante se registran o almacenan — cada solicitud se procesa y se descarta. Para una paranoia absoluta sobre contraseñas de prueba, nunca pegue una contraseña real de producción en ninguna herramienta en línea. Use esta herramienta con contraseñas de prueba desechables o en un entorno de desarrollo local.
¿Por qué bcrypt tiene un límite de contraseña de 72 bytes?
Bcrypt se basa en la fase de configuración de claves de Blowfish, que solo consume los primeros 72 bytes de entrada. Las contraseñas de más de 72 bytes son truncadas silenciosamente por librerías antiguas o rechazadas por las más nuevas. Para admitir contraseñas arbitrariamente largas, realice un pre-hash con SHA-256 y codifique el resumen en base64 antes de pasarlo a bcrypt. Esta herramienta advierte cuando su contraseña excede el límite.
¿Puedo verificar un hash que fue generado por otra librería de bcrypt?
Sí. Todas las implementaciones de bcrypt siguen el mismo formato de transmisión ($variante$costo$sal+resumen, 60 caracteres en total) y producen hashes interoperables. Un hash realizado por bcrypt de Node.js, password_hash de PHP, passlib de Python, Spring Security o cualquier librería compatible se verificará correctamente aquí, siempre que el prefijo de variante sea reconocido.
¿Por qué generar la misma contraseña dos veces da un hash diferente?
Bcrypt genera automáticamente una sal aleatoria de 16 bytes nueva para cada hash. La sal se mezcla en el algoritmo y se incrusta en la salida, por lo que dos hashes de la misma contraseña prácticamente nunca son idénticos. La verificación funciona porque checkpw extrae el costo y la sal del hash almacenado y vuelve a ejecutar bcrypt con esos parámetros exactos antes de comparar el resumen.
¿Puedo recuperar la contraseña original de un hash bcrypt?
No. Bcrypt es una función unidireccional — no existe una operación de descifrado. La única forma de encontrar la contraseña original a partir de un hash es adivinar contraseñas y pasarlas por bcrypt con el mismo costo y sal hasta que los resúmenes coincidan, que es exactamente lo que hacen los atacantes durante un ataque de fuerza bruta. El objetivo del costo adaptativo de bcrypt es hacer que esas conjeturas sean prohibitivamente costosas.
¿Funciona en dispositivos móviles?
Sí. La interfaz es totalmente adaptable (responsive) y funciona en teléfonos inteligentes, tabletas y computadoras de escritorio. El cambio de modo, el control deslizante de costo y los paneles de resultados se adaptan a pantallas estrechas.
Recursos adicionales
Cite este contenido, página o herramienta como:
"Generador y Verificador de Hash Bcrypt" en https://MiniWebtool.com/es// de MiniWebtool, https://MiniWebtool.com/
por el equipo de miniwebtool. Actualizado: 26 de abril de 2026