If you do not know what the MD5 algorithm is or what it is used for then look up RFC 1321 or visit the "unofficial" MD5 homepage where it is described succinctly as follows:
"The MD5 algorithm takes as input a message of arbitrary length and produces as output a 128-bit "fingerprint" or "message digest" of the input. It is conjectured that it is computationally infeasible to produce two messages having the same message digest, or to produce any message having a given prespecified target message digest. The MD5 algorithm is intended for digital signature applications, where a large file must be "compressed" in a secure manner before being encrypted with a private (secret) key under a public-key cryptosystem such as RSA."
"In essence, MD5 is a way to verify data integrity, and is much more reliable than checksum and many other commonly used methods."
- Initial release