Contact

Tools  /  Security  /  MD5 Hash Generator

MD5 Hash Generator

MD5 with HMAC-MD5, file hashing, batch mode, a live RFC 1321 test-vector self-check, and a collision-history timeline explaining exactly why MD5 is checksum-only, never security.

What this tool does

Computes MD5 from text or a file, with HMAC-MD5 for keyed verification, batch hashing of multiple lines, and a live self-check against the official RFC 1321 test vectors to confirm the implementation itself is correct. This is a focused, MD5-specific companion to this site's general Hash Generator (which covers nine algorithms side by side) -- here for the real-world non-security uses MD5 still has, and the history of exactly why it has none left for security.

Why MD5 is checksum-only today

MD5 was designed by Ron Rivest in 1991 and was the dominant general-purpose hash for over a decade. Its collision resistance broke in stages: theoretical weaknesses surfaced in the mid-1990s, Xiaoyun Wang's team produced the first practical collision in 2004, and by 2008-2009 researchers demonstrated chosen-prefix collisions precise enough to forge a rogue Certificate Authority certificate that browsers would have trusted. In 2012, the Flame malware was found exploiting an MD5 collision to forge a Microsoft code-signing certificate in the wild -- the clearest real-world demonstration that MD5's collision weakness isn't just academic.

What MD5 is still fine for

Non-adversarial integrity checks where nobody is deliberately trying to produce a matching hash for different content -- detecting accidental corruption in a download, a quick duplicate- file check, or matching against a legacy system that already standardized on MD5 checksums. It should never be used for passwords, digital signatures, certificates, or anywhere an attacker might benefit from engineering a collision.

HMAC-MD5

A keyed variant (RFC 2104) used in a handful of still-active legacy protocols and systems that haven't moved to a stronger HMAC. Implemented here from scratch, since Web Crypto's native HMAC implementation deliberately doesn't support MD5 as the underlying hash.

Self-check against RFC 1321

The official RFC 1321 specification publishes a short list of standard test inputs and their correct MD5 outputs -- this tool computes all of them live and shows a pass/fail check against the published values, a quick way to confirm the implementation itself is behaving correctly rather than trusting it blindly.

Verify against an expected hash

Paste a published MD5 checksum alongside your input and get an immediate match/mismatch -- the single most common real reason to reach for an MD5 tool today.

Privacy

Everything is computed entirely in your browser using a from-scratch MD5 implementation (Web Crypto deliberately doesn't implement MD5, since it's cryptographically broken). Nothing is uploaded.

Frequently asked questions

Is MD5 safe to use for anything?
Safe for non-adversarial integrity checks -- detecting accidental corruption, a quick duplicate check, matching a legacy system's existing checksums. Never for passwords, digital signatures, certificates, or anywhere an attacker could benefit from deliberately engineering a collision.
What actually broke MD5?
Collision resistance -- the guarantee that nobody can find two different inputs producing the same hash. Xiaoyun Wang's team produced the first practical collision in 2004; by 2008-2009 researchers could engineer chosen-prefix collisions precise enough to forge a trusted CA certificate; in 2012 the Flame malware was found exploiting exactly that in the wild.
What is HMAC-MD5 and is it also broken?
A keyed variant (RFC 2104) combining MD5 with a secret key. It's more resistant to MD5's specific collision weaknesses than raw MD5 alone, but still not recommended for new systems -- it exists here for compatibility with legacy protocols that already use it, not as a recommendation to adopt it.
Why does Web Crypto not support MD5 directly?
Because it's cryptographically broken -- the Web Crypto API deliberately omits MD5 (and SHA-1 signing) to steer new code away from them. This tool implements MD5 from scratch in JavaScript for the legitimate non-security uses that remain.
What does the RFC 1321 self-check prove?
That this page's MD5 implementation produces the exact outputs the official specification defines for a set of standard test inputs -- computed live and checked against the published values, rather than asking you to trust the implementation blindly.
Can I hash a whole file, not just text?
Yes -- drag a file onto the input or use the upload button; it's hashed directly from its raw bytes.
How is this different from the main Hash Generator?
The main Hash Generator covers nine algorithms side by side for quick comparison. This tool is MD5-specific -- HMAC-MD5, the RFC 1321 self-check, and MD5's particular collision history -- depth on one algorithm rather than breadth across several.
Is anything I hash sent anywhere?
No. Every hash is computed entirely in your browser -- this tool has no server component.
Theme Accent