Verificación de hash Argon2 | Compara una contraseña con un hash codificado
Introduce una contraseña y un hash Argon2 codificado ($argon2id$...) para comprobar si coinciden. Se calcula en el navegador; nada se envía al servidor.
Consejos para verificar un hash Argon2
- Para verificar, pega directamente el hash codificado (una cadena que empieza por $argon2id$) generado con la herramienta Cálculo de hash Argon2.
- El hash codificado ya incluye la variante, el coste de memoria, el número de iteraciones y la sal, por lo que no es necesario especificar estos parámetros por separado al verificar.
- Si el formato del hash no es válido (por ejemplo, por caracteres faltantes o saltos de línea al copiarlo), aparecerá un mensaje de error. Comprueba que has copiado el texto completo correctamente.
- Si el resultado indica que no coinciden, comprueba que la contraseña no contenga mayúsculas o minúsculas incorrectas ni espacios en blanco añadidos por error al principio o al final.
Preguntas frecuentes
A propósito — Por qué basta con "comparar hashes" para verificar una contraseña
A primera vista, verificar una contraseña parece consistir en "comparar directamente la contraseña guardada con la que se ha introducido", pero en realidad el mecanismo es completamente distinto. El servidor (o, como en esta herramienta, el propio navegador) vuelve a aplicar el hash a la contraseña introducida usando el mismo algoritmo y la misma sal que se usaron al guardarla, y solo comprueba si el resultado coincide con el hash almacenado. La contraseña original nunca es objeto de comparación en sí misma: basta con determinar si dos hashes coinciden, y esa es precisamente la ventaja de este método.
Este mecanismo funciona porque funciones de hash como Argon2 son "deterministas": con la misma entrada, la misma sal y los mismos parámetros, siempre se obtiene la misma salida. La cadena del hash codificado (con el formato $argon2id$v=19$m=...$sal$hash) incorpora tanto la sal como todos los parámetros usados en el cálculo original, de modo que no es necesario especificarlos de nuevo al verificar: el propio hash codificado permite repetir el cálculo por completo.
Gracias a estas dos propiedades —la "unidireccionalidad" (no se puede deducir la contraseña original a partir del hash) y el "determinismo" (la misma entrada siempre produce la misma salida)— los proveedores de servicios pueden verificar el inicio de sesión de forma segura sin almacenar nunca la contraseña en texto plano. Aunque la base de datos sea filtrada, un atacante solo obtendría los valores de hash, y con un algoritmo computacionalmente costoso como Argon2, un ataque de fuerza bruta para recuperar la contraseña original tardaría un tiempo extremadamente largo.