Argon2 es el ganador del Password Hashing Competition y una de las opciones preferidas para almacenar contraseñas en proyectos nuevos. Además del tiempo de cálculo, el algoritmo requiere una cantidad determinada de memoria, lo que dificulta acelerar mediante paralelización masiva los ataques con GPU y hardware especializado. La herramienta ofrece tres pestañas: generar hash, verificar contraseña y analizar hash.
Las configuraciones predefinidas son solo puntos de partida habituales. Los parámetros definitivos deben determinarse teniendo en cuenta la CPU, la memoria y el número de inicios de sesión simultáneos del servidor de destino.
Introduzca una contraseña, confirme los parámetros y genere un hash en el formato PHC estándar. El hash contiene el nombre del algoritmo, la versión, los parámetros m/t/p, el salt y el cuerpo del hash, y puede almacenarse directamente en una base de datos. El campo de contraseña se puede mostrar u ocultar. También se puede generar una contraseña aleatoria destinada exclusivamente a probar los parámetros.
El modo de verificación recibe un hash Argon2 existente y la contraseña que se desea comprobar, lee los parámetros almacenados en el hash, vuelve a calcular el hash y compara los resultados. Muestra si la contraseña coincide sin generar un nuevo hash. El modo de análisis extrae de la cadena PHC el algoritmo, la versión, la memoria, las iteraciones, el paralelismo, el salt y el cuerpo del hash, facilitando la comprobación de que la configuración utilizada en producción coincide con la documentación.
El benchmark realiza varios cálculos con los parámetros actuales y muestra los tiempos medio, mínimo y máximo, además de recomendaciones de optimización. Esto permite encontrar un equilibrio adecuado entre seguridad y tiempo de respuesta durante el inicio de sesión. Los resultados solo corresponden al dispositivo y navegador actuales; el servidor debe probarse por separado.
Los hashes de contraseñas no son reversibles. La herramienta solo realiza cálculos, verificaciones y análisis de parámetros y no ofrece descifrado. Todos los cálculos se realizan localmente mediante WebAssembly en el navegador. Las contraseñas y los hashes no se envían al servidor ni se almacenan. Si el motor local no está disponible, se muestra directamente un error y no se utiliza ningún cálculo alternativo en el servidor.
Comentarios 0