2009: scrypt The scrypt KDF accepts three parameters tunable "according to the amount of memory and computing power available, the latency-bandwidth product of the memory subsystem, and the amount of parallelism desired". As defined, scrypt uses Salsa20/8 core as its main cryptographic primitive, which makes efficient use of up to 128-bit SIMD vectors It should be possible to use wider SIMD vectors when p is greater than 1, but this is a trade-off A variation of scrypt based on another cryptographic primitive is possible (e.g., to please those requiring NIST-approved cryptography) Alternatively, it may be shown that scrypt's cryptographic security is achieved by its initial and final use of PBKDF2 with SHA-256, whereas other processing is "non-cryptographic"