What an MD5 hash is
MD5 is a hash function. You give it any amount of text and it returns a fixed-length fingerprint: 32 hexadecimal characters. The same input always produces the same fingerprint, while even a one-character change produces a completely different one. You cannot rebuild the original text from the fingerprint, because the process is one-way and many inputs are squeezed into a small output.
MD5 was designed in the early 1990s. Researchers have since shown how to construct two different inputs that share the same MD5 hash, which is called a collision. For that reason it is considered broken for security purposes, even though it is still widely used for non-security jobs.
Where MD5 is still used, and where it should not be
MD5 remains common as a quick checksum. Download pages list it next to files, build systems use it as a cache key, and some older databases and APIs store or expect it as an identifier. If you are working with one of those and need to produce the matching value for a piece of text, this tool gives it to you.
Do not use MD5 to store passwords. It is very fast to compute, which lets attackers test enormous numbers of guesses, and unsalted MD5 hashes of common passwords are easy to look up. Password storage needs a slow, salted algorithm designed for the purpose. It is also a poor choice for signatures or anything where someone could benefit from forging a matching hash. For checksums where you have a free choice, the SHA256 Generator is the better option, and the Hash Generator offers more algorithms.
How to generate an MD5 hash here
- The "Text to hash" box begins with the sample "Hello, world!".
- Type or paste your own text into it. The text is hashed as written, so spaces and line breaks count.
- The "MD5 hash" line shows the 32-character result and updates as you type.
- Click Copy to copy the hash.
The page notes that hashing runs entirely in your browser and that your text is not sent anywhere. The output is lowercase hexadecimal. There is no option for uppercase, for hashing a file, or for adding a salt, so this is a text-only tool.
Tips for getting matching hashes
If the hash you produce does not match one from another system, the usual culprit is invisible differences in the text. A trailing space or newline, a different line-ending style, or a smart quote in place of a straight quote will all change the result completely. Letter case in the input matters too: "Hello" and "hello" hash differently.
Two equal MD5 values suggest the inputs are the same, but because collisions can be engineered, a match is not strong proof when someone may be trying to tamper with the data.