Scrypt este o funcție de hashing a parolelor special concepută pentru a rezista atacurilor de forță brută la scară largă care utilizează hardware personalizat.
Comparativ cu bcrypt, scrypt necesită o cantitate mare de resurse de memorie, ceea ce crește considerabil costul atacurilor care utilizează ASIC, FPGA și hardware similar.
Descrierea parametrilor:
• password: Parola care trebuie hashuită
• salt: Valoare salt pentru a spori securitatea
• N: Parametru de cost CPU/memorie (trebuie să fie o putere a lui 2)
• r: Parametru de dimensiune bloc
• p: Parametru de paralelizare
• dkLen: Lungimea cheii derivate (octeți)
Setări recomandate: N=16384, r=8, p=1, dkLen=32. Hash-ul este unidirecțional și nu poate fi inversat pentru a recupera parola originală.