Ultra Fast Crypt is a highly optimized version of the library crypt
function, written by Michael Glad. Its claim to fame is that it runs up to 45 times faster than the standard crypt when called with the same salt
, and 4 times faster otherwise. Obviously this makes it ideal for brute forcing hashed passwords, since such an attack requires calling crypt with the same salt but varying passwords.
Most of the optimizations are achieved through lookup tables for certain parts of the DES
algorithm and loop expanding for others. This helps share the otherwise intensive processing load with the cpu bus and cache. Other notable optimizations include arranging the code and data structures to be memory friendly, and coding as much as the algorithm as possible in straight assembly