MD5
MD5 (message-digest algorithm 5) is a one-way hash algorithm which calculates a 128-bit fingerprint value for a message or a file of arbitrary length. A fingerprint is, at least in theory, unique to a single message or file, so that if you have two files which both produce the same fingerprint, it can be said that they are identical. The main use therefore is to verify the integrity of a message or a file.
If you download a file from the Internet, there normally is no way to check whether the file was altered during the download due to transmission errors or received without any error. This is where MD5 comes into play. If the servers lists the MD5 hash of the file, you can simply calculate the MD5 hash of the file you downloaded and compare it to the hash you got from the server. In case both hashes are the same, it is very unlikely that the file was altered, thus you got the file as it is on the server.
Every modern Unix distribution has an MD5 program included so on those platforms it is no problem to verify file downloads. On Windows, however, you first have to get and install such a program.
The usage of MD5 as file integrity check is demonstrated using a simple command line MD5 program, which is available for Windows and Unix:
C:\WINDOWS\DESKTOP\MD5>type match.demo4.bz2.md5
MD5 (match.demo4.bz2) = 609f46a341fedeaeec18abf9fb7c9647
C:\WINDOWS\DESKTOP\MD5>md5.exe -l match.demo4.bz2
609f46a341fedeaeec18abf9fb7c9647 match.demo4.bz2
The first command displays the content of a file called "match.demo4.bz2.md5", which just contains the MD5 hash of the file to check, namely "match.demo4.bz2". The second command calculates the MD5 hash of the file as it was downloaded. If both hashes are the same, you got the file as it is on the server.
Keep in mind that there is only one MD5 algorithm so that if you don't like the command line program, you can ask a search engine of your choice for another program that supports MD5 calculation and use that one instead.