MD5 Calculator of a String

Free online MD5 hash generator for strings of text


Enter String:
MD5            :

Hashing

Hashes are used for a range a computer security applications. A hash is combination of hex digits that are returned when applied to text or binary information.

A hashing algorithm is designed to be easy to generate a hash from some information though it is hard to reserve engineer the hash to get back to the information. 

A good example of where hashing is used is when storing passwords. If passwords are stored in plain text then anyone who has access also has access to every account. If the passwords are stored as hashes then it is more difficult to use someone else's password. Comparing the hash of the supplied password and the stored hash will confirm if the password was correct.  

Note hashes are not unique and there are example of clashes of two strings generating the same hash though this is considered very rare. Also hashes have a weakness that it is possible to create rainbow tables which are large indexes of string and hash pairs that can be used to check if a hash has been previously generated.

To overcome this salting is used, this is additional text/information that is added the string that allows for a more complicated hash to be generated. Having a unique salt for each user renders rainbow tables almost useless as the information needs to be generated relative to the salt.

Another example of hashing being used is when distributing a file over the internet. When a file is created the vendor can also supply the hash of the file. This allows users to verify that the file they have matches the vendors version. This make it harder for someone to modify the file and distribute the modified file over the internet without the user knowing.

Note MD5 is only one hashing algorithm out of many and other algorithms might be better depending of other factors such as performance or security. 

MD5 Clashes

There are examples of images and files being modified to create identifical MD5 hashes therefore if security is important then a more complex hash maybe required.