The MD4 Message-Digest Algorithm, MD5 Message-Digest Algorithm, and SHA-1 Secure Hash
Algorithm, are secure hash functions for computing a condensed representation of a message
or a data file. The algorithms take as input a message of arbitrary length and produces
as output a a 128-bit for MD4 and MD5; 160-bit for SHA-1 "fingerprint" or "message digest"
of the input.
The MD4, MD5, & SHA-1 algorithms are called secure because it is computationally
infeasible to find a message which corresponds to a given message digest, or to
find two different messages which produce the same message digest (collision). Any
change to a message in transit will, with very high probability, result in a different
message digest, and the signature will fail to verify.
JavaScript MD4, MD5, & SHA-1 Hash generator
Links:
Wikipedia: MD4
Wikipedia: MD5
Wikipedia: SHA
MD4: RFC 1320
MD5: RFC 1320
SHA-1: FIPS PUB 180-1
Wikipedia: Birthday Attack
MD5 Collision Nearly Found
PDF: Collisions for Hash Functions
PS: Near-Collisions of SHA-0
PDF: Making a Faster Cryptanalytic Time-Memory Trade-Off