Generador de hashes Argon2 en línea
Tres variantes Argon2id/i/d, memoria, iteraciones y paralelismo ajustables, verificación PHC y benchmark
Generador de hashes Argon2 en línea
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.
Variantes del algoritmo y configuraciones predefinidas
- Variantes: Argon2id se recomienda para el almacenamiento de contraseñas, Argon2i es adecuado para escenarios específicos que requieren resistencia frente a ataques de canal lateral y Argon2d no se recomienda para el almacenamiento general de contraseñas.
- Configuraciones predefinidas: recomendada con 64MB, 3 iteraciones y paralelismo 2; alta seguridad con 128MB, 3 iteraciones y paralelismo 4; pocos recursos con 32MB, 2 iteraciones y paralelismo 1. También se pueden personalizar todos los valores.
- Significado de los parámetros: la memoria indica la cantidad de memoria utilizada para un hash individual y las iteraciones indican el número de rondas de cálculo. El paralelismo no debería superar los hilos de CPU disponibles en el servidor.
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.
Generar hash
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.
Verificar y analizar
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.
Benchmark de rendimiento
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.
Validación de parámetros y gestión de errores
- La memoria debe estar entre 1MB y 1024MB, las iteraciones entre 1 y 100 y el paralelismo entre 1 y 16. Los valores fuera de estos rangos se indican inmediatamente.
- Con más de 256MB de memoria, la página advierte que el navegador puede fallar por falta de memoria. Estos parámetros deben probarse directamente en el servidor.
- Los formatos de hash no válidos y las cadenas PHC sin salt o sin sección de hash muestran una causa concreta.
- Si se produce un error de cálculo, se recomienda reducir la memoria o las iteraciones y volver a intentarlo. Si el navegador no admite WebAssembly, se muestra el error directamente y la contraseña nunca se envía al servidor.
Casos de uso
- Elegir un algoritmo de hash de contraseñas y parámetros adecuados para nuevos proyectos.
- Evaluar los parámetros antes de migrar de MD5, SHA o bcrypt a Argon2.
- Comprobar la fortaleza real de los parámetros utilizados por hashes PHC existentes en producción.
- Demostrar las características de los hashes de contraseñas con alto consumo de memoria en formación y enseñanza.
Privacidad y seguridad de los datos
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.
Generar, verificar y analizar hashes de contraseñas Argon2 en línea
- Tres variantes: Argon2id se recomienda para almacenar contraseñas, Argon2i para escenarios con protección frente a ataques de canal lateral y Argon2d no se recomienda para el almacenamiento general de contraseñas
- Tres configuraciones predefinidas: recomendada 64MB t=3 p=2, alta seguridad 128MB t=3 p=4 y pocos recursos 32MB t=2 p=1; también es posible una configuración totalmente personalizada
- Validación de parámetros: memoria de 1 a 1024MB, iteraciones de 1 a 100 y paralelismo de 1 a 16; por encima de 256MB se muestra una advertencia sobre posible falta de memoria del navegador
- Salida como hash PHC estándar, apta para almacenarse directamente en una base de datos
- El modo de verificación recalcula usando los parámetros almacenados en el hash y compara; el modo de análisis muestra algoritmo, versión, memoria, iteraciones, paralelismo, salt y hash
- El benchmark de rendimiento proporciona el tiempo medio y recomendaciones de optimización para elegir parámetros adecuados para el servidor de destino