Cryptography/MD5
From Wikibooks, the open-content textbooks collection
MD5 is a popular Hash Function used by many people around the world. Developed by Professor Ronald L. Rivest of MIT
It's purpose can be classified as follows :
1. Verify the integrity of a file after a specified period of time 2. Generate Hash values for a certain piece of data ( Ex: file) and store them, for later cross checking if the file has been modified or not (this is in essence the 1st point stated above)
for example, on a system having a file called "SAMPLE.TXT", a MD5 hash looks like follows...
filename hash value C:\SAMPLE.TXT BC8FEFECA210FC0C0F3EBC1614A37889
MD5 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. It should be noted that collisions (see above) have been found for the MD5 hash and this has led to a decline in its use.
Exact technical information is described in RFC:1321 (as HTML).

