Key derivation function
Appearance
A Key derivation function is a cryptographic hash function which is designed to make a small key or password harder to attack using a dictionary attack or brute force attack.
It is normally expressed as where is the derived key, is the original key, is a large random number (typically around ), and refers to the number of iterations of a sub-function (typically ).
The values of and can then be stored insecurely.
When we have a large number of iterations it is practical time-wise for to be computed for a single password, but not for a large number of passwords as a brute force attack would require. The use of prevents the attackers from precomputing a dictionary of derived keys.