Comprobador de bcrypt y argon2
bcrypt & argon2 Checker
Genera el hash bcrypt de una contraseña con el costo que elijas y comprueba una contraseña contra un hash bcrypt existente; detecta argon2 pero no lo calcula.
Calcula el hash de una contraseña con bcrypt, o comprueba una contraseña contra un hash `$2a$`/`$2b$`/`$2y$` existente. La implementación es el `$2b$` de OpenBSD verificado contra los vectores publicados de crypt_blowfish de Openwall, y corre en un worker en esta pestaña.
Se procesa solo en esta pestaña; no se transmite nada.
1024 rondas — el valor por defecto de siempre.
$2b$, verificado contra los vectores de prueba publicados de Openwall crypt_blowfish y ejecutándose por completo en esta pestaña. Solo cuentan los primeros 72 bytes de una contraseña: así es bcrypt, no un fallo de aquí. Los hashes $2x$ (creados por un fallo de crypt_blowfish anterior a 2011) se rechazan, y argon2 no está implementado.Cómo se usa
Elige hash o verificar
Hacer el hash necesita un costo; verificar lee el costo del hash que pegas, porque está guardado en la cadena.
Elige un costo que puedas permitirte
Cada paso duplica el trabajo. 10 fue el valor por defecto durante años, 12 es una elección sólida hoy, y 14 tarda unos segundos visibles en un navegador, y ese es el sentido: a un atacante le cuesta lo mismo.
Lee el veredicto
Coincide o no coincide. Todo ocurre en la pestaña, así que un hash de producción pegado aquí no viaja a ningún sitio.
Preguntas frecuentes
¿Por qué argon2 se rechaza en lugar de admitirse?
Porque un argon2 de confianza en un navegador significa distribuir un build de WebAssembly que este proyecto no puede auditar línea a línea. bcrypt está implementado aquí en código que puedes leer, comprobado contra vectores publicados. Rechazar un hash argon2 es más honesto que una respuesta verosímil salida de una caja negra.
¿Por qué mi contraseña larga verifica contra el hash equivocado?
bcrypt solo lee los primeros 72 bytes. Dos contraseñas que comparten sus primeros 72 bytes son la misma contraseña para él: eso es bcrypt en sí, no esta implementación. Importa para una frase de contraseña, y es una de las razones por las que la gente se pasa a argon2.
¿Por qué hacer el hash de la misma contraseña dos veces da cadenas distintas?
Porque cada ejecución genera una sal nueva de 16 bytes, y la sal viaja dentro del hash. Ambas cadenas verifican la misma contraseña. Un hash de contraseña que es igual cada vez es un hash sin sal, que es exactamente para lo que se construyeron las tablas arcoíris.
¿$2a$, $2b$ y $2y$ son distintos?
No para ninguna contraseña de 72 bytes o menos, que son todas. Los prefijos registran antes o después de qué bug histórico se hizo un hash. `$2x$` es la excepción: marca hashes hechos por un bug de crypt_blowfish anterior a 2011, y esos se rechazan aquí.
Puede recibir de
Hash de un texto
Text Hash
Calcula MD5, SHA-1, SHA-256, SHA-384, SHA-512 y CRC-32 de una cadena, con salida opcional en mayúsculas o en Base64.
Identificador de tipos de hash
Hash Identifier
Deduce qué algoritmo produjo un hash por su longitud, su conjunto de caracteres y su prefijo, ordenado por probabilidad.
Generador de .htpasswd
.htpasswd Generator
Crea entradas de autenticación básica para Apache o nginx con cifrado bcrypt, APR1 o SHA.
Formateador y validador de JSON
JSON Formatter & Validator
Indenta, minifica y valida JSON, señalando la línea y la columna exactas del error de sintaxis.
Después
Estas aceptan lo que produce esta herramienta, así que el resultado puede pasar directamente.
Identificador de tipos de hash
Hash Identifier
Deduce qué algoritmo produjo un hash por su longitud, su conjunto de caracteres y su prefijo, ordenado por probabilidad.
Hash de un texto
Text Hash
Calcula MD5, SHA-1, SHA-256, SHA-384, SHA-512 y CRC-32 de una cadena, con salida opcional en mayúsculas o en Base64.
Generador de .htpasswd
.htpasswd Generator
Crea entradas de autenticación básica para Apache o nginx con cifrado bcrypt, APR1 o SHA.
Medidor de fuerza de contraseñas
Password Strength Meter
Estima cuánto tardaría en descifrarse una contraseña y nombra los patrones que la debilitan, sin que la contraseña salga de tu navegador.
Codificador y decodificador Base64
Base64 Encoder & Decoder
Codifica y decodifica Base64 y Base64URL, para texto o archivos, tratando UTF-8 correctamente.
curl a código
curl to Code
Convierte un comando curl en fetch, axios, requests de Python, Go, PHP o PowerShell.