MD5 Hash Generator
Produce the familiar 32-character MD5 digest without handing your input to anyone.
The 32 characters you were looking for
MD5 (RFC 1321) turns any input into 128 bits shown as 32 hex digits. abc becomes 900150983cd24fb0d6963f7d28e17f72; the standard pangram becomes 9e107d9d372bb6826bd81d3542a419d6. The algorithm is fast, tiny and embedded in decades of tooling — which is why you still meet it everywhere.
MD5 is broken — but only in one specific way
MD5's collision resistance is dead. In 2004 Xiaoyun Wang's team showed collisions could be constructed by hand; by 2008 researchers had used a chosen-prefix collision to forge a certificate authority signature, and today MD5 collisions take seconds on a laptop. Crucially, this does not break MD5's preimage resistance: given a digest you still cannot find an input that produces it.
| Property | Status | Consequence |
|---|---|---|
| Preimage resistance | Holds | MD5 cannot be reversed |
| Second-preimage resistance | Holds | You cannot find a different file matching a given digest easily |
| Collision resistance | Broken since 2004 | An attacker can craft two different files with the same digest |
Rule of thumb: if an adversary chooses the bytes, MD5 is the wrong tool. If corruption is random or accidental, MD5 is still adequate — it catches the flipped bit.
Legitimate, still-common uses
- Cache busting and deduplication keys where an attacker gains nothing by colliding.
- Legacy
Content-MD5headers and S3/SwiftETagvalues on single-part uploads. - Detecting accidental corruption in a transfer that is not adversarial.
- Reproducing the checksum a vendor published in 2006 and never updated.
The trap that is not MD5's fault
MD5 comparisons in PHP-style code (if ($a == $b)) can be fooled by type juggling: two strings that both look numeric are compared as numbers, so "0e123" equals "0e456". Always compare digests with a constant-time string comparison, never with ==.
How to use it
- Paste the text you want to fingerprint.
- Confirm the algorithm selector is on MD5.
- Copy the 32-character hex digest.
Worth knowing
- Digest length: 128 bits / 32 hex characters.
- Published April 1992 as RFC 1321; still the default in much legacy tooling.
- Collisions practical since 2004-2008; preimage attacks remain impractical.
- Blocks are little-endian, unlike SHA-1 and SHA-2.
Limitations
- Never use MD5 to sign, certify or authenticate anything an attacker can influence.
- Never use MD5 for password storage — it is unsalted and far too fast.
- A matching MD5 is not proof that two files are identical if an adversary was involved.
- Some tools digest the trailing newline too; compare like with like.