Scrypt es una función de hashing de contraseñas diseñada específicamente para resistir ataques de fuerza bruta a gran escala mediante hardware personalizado.
En comparación con bcrypt, scrypt requiere una gran cantidad de recursos de memoria, lo que aumenta enormemente el costo de los ataques que utilizan ASIC, FPGA y hardware similar.
Descripción de parámetros:
• password: La contraseña a hashear
• salt: Valor de sal para mejorar la seguridad
• N: Parámetro de costo CPU/memoria (debe ser una potencia de 2)
• r: Parámetro de tamaño de bloque
• p: Parámetro de paralelización
• dkLen: Longitud de clave derivada (bytes)
Configuración recomendada: N=16384, r=8, p=1, dkLen=32. El hash es unidireccional y no se puede revertir para recuperar la contraseña original.