This post serves as a (hopefully soft) introduction to the MD5 cryptographic hash. It has been written to bring some of the people I work with up-to-speed on exactly how MD5 works in the hopes they will stop giving me strange looks when I talk about it.
What is MD5?
MD5 is a cryptographic hash. It has a 128-bit checksum, or resulting hash value, which is split into 4 32-bit words. It processes data in 512-bit chunks, or 64 bytes at a time.
Basically, these two properties are supposed to hold true for MD5:
- Given a hash value, it is very difficult find a message which will hash to that value.
- It is very difficult to find two messages with the same hash value. (No longer true for MD5!)
It’s also a great generic hash, and once you understand MD5 other hashing algorithms seem much less daunting.
More