scrypt
also: scrypt hashing, memory-hard key derivation
A memory-hard key derivation function designed to be resistant to brute-force attacks by requiring significant CPU and RAM resources. It's commonly used for password hashing and key generation.
scrypt is a cryptographic function that derives a key from a password by intentionally consuming both CPU time and memory. Unlike faster hashing algorithms, scrypt's high resource requirements make it computationally expensive to attack, defending against dictionary and brute-force password cracking.
The function uses several tunable parameters: N (CPU/memory cost), r (block size), and p (parallelization factor). These allow administrators to adjust difficulty as hardware improves over time. For example, a system might use scrypt(password, salt, N=16384, r=8, p=1) to hash a user password.
scrypt is popular in cryptocurrency applications (Bitcoin, Litecoin) for proof-of-work mining, and increasingly used for password storage in modern systems as a more secure alternative to bcrypt or PBKDF2.