I. Introduction
Hash functions operate at the heart of contemporary cryptographic protocols, such as the Digital Signature Standard (DSS), Transport Layer Security (TLS), Internet Protocol Security (IPSec), random number generation algorithms, authentication algorithms and password storage mechanisms.