MD5 is a widely used hash function. It's been used in a variety of security applications and is also commonly used to check the integrity of files. Though, MD5 is not collision resistant, and it isn't suitable for applications like SSL certificates or digital signatures that rely on this property.
What is MD5?
MD5 (Message-Digest algorithm 5) is a widely used cryptographic hash function. It produces a 128-bit hash value, regardless of the size of the data entered. Although MD5 was originally designed as a cryptographic hash function, extensive security vulnerabilities have been identified. It is used to generate a checksum (ing: checksum) to check that data integrity is provided. However, it is only useful against unintentional changes.
Like many hash functions, MD5 does not contain encryption algorithms. It can be cracked with a brute force attack. It suffers from extensive security vulnerabilities as detailed in the Security section below.
The MD5 was designed by Ron Rivest in 1991 to replace the earlier version MD4. The abbreviation "MD" stands for "Message Digest".
The reliability of the MD5 has been seriously shaken. The security vulnerabilities it contains have also been exploited in the field, most notably the Flame malware from 2012. CMU's Software Engineering Institute declared for its MD5 that "cryptographically fragile is not suitable for further use".