Skip to content
Tools

MD5 Generator

Generate MD5 hashes instantly from text or files with built-in verification and comparison tools. Everything runs locally in your browser.

MD5 is no longer considered cryptographically secure due to known collision vulnerabilities.

Use MD5 only for file integrity verification, checksums and legacy compatibility. For security-sensitive applications, use SHA-256, SHA-512 or dedicated password hashing algorithms such as bcrypt or Argon2.

Input source
43 B

MD5

128 bits · 32 characters

9e107d9d372bb6826bd81d3542a419d6

Characters
43
Words
9
Bytes
43
Hash length
32
Hashed in
<1 ms

Text · 43 B

Integrity checks only — not for security

Everything happens locally in your browser. Your files and text are never uploaded.

What is MD5?

MD5 — Message Digest 5 — is a hash function published by Ronald Rivest in 1992. It reduces any input, of any length, to a fixed 128-bit fingerprint, written as 32 hexadecimal characters.

Any input, always 32 characters out
""                          →  d41d8cd98f00b204e9800998ecf8427e"abc"                       →  900150983cd24fb0d6963f7d28e17f72"abd"                       →  4911e516e5aa21d327512e0c8b197616a 4 GB video file           →  32 characters, just the same

Notice the second and third lines. One character changed, and the digest is entirely different — there is no partial resemblance between the hashes of similar inputs. That is what makes a hash useful for spotting change.

MD5 was designed as a cryptographic hash, and it no longer qualifies as one. Collisions have been practical since 2004. It survives because it is fast, short and printed next to a great many downloads — so reading those checksums still requires computing it.

How MD5 hashing works

  1. 1. Pad the message. Append a single 1 bit, then zeros, until the length is 64 bits short of a multiple of 512 — then append the original length in bits. Every message becomes a whole number of 512-bit blocks.
  2. 2. Start from four fixed words. A, B, C and D are initialised to constants written into the specification.
  3. 3. Process each block in 64 steps. Four rounds of sixteen, each mixing the block into the state with a different non-linear function, a rotation and a constant drawn from the sine table.
  4. 4. Add the result back into the state and move to the next block. This is why hashing can be incremental: the state is all that carries between blocks, so a file can be read a slice at a time.
  5. 5. Emit the four words as 32 hexadecimal characters, little-endian.

That incremental step is what lets this page hash a multi-gigabyte file without loading it into memory: it reads four megabytes, folds them into the state, discards them and moves on.

MD5 characteristics

128-bit output

Every digest is exactly 128 bits, whatever went in — a single character or a ten-gigabyte video. That fixed size is what makes a hash useful as a fingerprint.

32 hexadecimal characters

Those 128 bits are conventionally written as 32 hex characters, four bits each. Case carries no meaning; lowercase is the convention.

Deterministic

The same bytes always produce the same digest, in every language and on every machine, forever. This is what lets a published checksum mean anything.

One-way

The digest cannot be turned back into the input — information is discarded on the way. That is not the same as secret: a guessable input can still be found by hashing guesses.

Avalanche effect

Changing one bit of the input changes about half the bits of the output. There is no partial similarity between the hashes of similar files.

Fast

MD5 is quick, which is a virtue for checksumming large files and a serious flaw for password hashing, where slowness is the defence.

Common use cases

File integrity checks

Confirm a file survived a copy, a transfer or a decade on a disk. This is what MD5 remains genuinely good at — accidental corruption has no motive and does not craft collisions.

Download verification

Many projects still publish an MD5 next to their downloads. It catches a truncated or corrupted download, though a signature is what proves authenticity.

Checksums

Backup systems, deployment pipelines and archive formats use MD5 to notice when something has changed since it was last recorded.

Duplicate file detection

Hash a folder and identical files share a digest. Fast, and the consequence of a rare accidental collision is only a wrongly grouped file.

Cache keys and ETags

A short deterministic fingerprint of some content, where nothing security-related depends on it being unforgeable.

Legacy systems

Older protocols and databases store MD5 and will not change. Reading them requires computing MD5, which is why this tool exists.

Every one of those is about accidental change. A corrupted download has no intent and cannot craft a collision. The moment an adversary is in the picture — verifying a signature, checking that code has not been altered, storing a password — MD5 stops being suitable.

MD5 vs SHA-256

 MD5SHA-256
SecurityBroken — collisions are practicalNo known practical attack
Hash length128 bits, 32 hex characters256 bits, 64 hex characters
Collision resistanceNone in practice, since 2004Considered strong
SpeedFasterSlower, and that rarely matters
Published19922001
In WebCryptoNo — deliberately excludedYes
Recommended useChecksums and legacy compatibility onlyAnything new

The short version: use SHA-256 unless something else forces MD5 on you. MD5’s speed advantage is real and almost never the deciding factor — hashing a gigabyte takes a couple of seconds either way, and the difference disappears next to the time spent reading the file from disk.

Limitations of MD5

Collision attacks

In 2004 Wang and Yu published a method for producing two different inputs with the same MD5. What was hours of computation then is seconds now. Researchers have demonstrated colliding pairs of executables, PDFs and even X.509 certificates — documents that differ meaningfully while sharing a digest. If someone mightwant two files to hash the same, MD5 cannot stop them.

Not suitable for password storage

MD5 is fast, and a general-purpose graphics card computes billions of MD5s per second. A stolen table of MD5 password hashes is cracked in hours — how many hours depends on the passwords, which is the number the password strength checker estimates. Password hashing needs a function that is deliberately, tunably slow — and salted, which MD5 is not on its own.

Not recommended for digital signatures

A signature signs a hash, not a document. If two documents can share a hash, one signature covers both — which is exactly how a forged certificate authority was demonstrated in 2008. Signature schemes moved to SHA-256 for this reason.

A legacy algorithm

Standards bodies have deprecated MD5 for security use for over a decade, and browsers dropped it from their crypto APIs. It persists in checksums, cache keys and older systems, and that is the only place it belongs.

Security best practices

  • Use SHA-256 or SHA-512 for anything new. Both are in every standard library and in the browser itself, and the hash generator computes either here. There is no reason to reach for MD5 unless something you do not control already uses it.
  • Never use MD5 for password hashing. Not with a salt, not with many iterations, not with a secret pepper. The algorithm is the wrong shape for the job — it is built to be fast.
  • Use bcrypt, Argon2 or PBKDF2 for passwords. They are designed to be slow and to have their cost tuned upwards as hardware improves. Argon2 is the current recommendation; bcrypt remains perfectly respectable.
  • MD5 is still fine for integrity verification. Checking that a file arrived intact, spotting duplicates, noticing that a backup changed — for all of these the threat is corruption, not an adversary, and MD5 handles it.
  • Prefer a signature to a checksum when authenticity matters. A checksum published on the same page as the download proves nothing if the page itself was compromised. A signature checked against a key you already trust does.
  • Never treat a hash as encryption. Hashing is one-way and lossless of nothing — it discards. A hash of a short or predictable value is recoverable by simply hashing guesses, which is how rainbow tables work.
  • Compare hashes in full. Checking the first and last few characters is a habit worth losing; crafted collisions aside, it defeats the point of comparing at all.

Frequently asked questions

Is this MD5 Generator free?

Yes. Text hashing, file hashing, verification, search and all three export formats are free, with no account and no limit on how much you hash.

Is my data uploaded?

No. Text and files are hashed by JavaScript running in your browser, and a file is read straight from disk in slices — it never travels anywhere. Nothing is sent to a server, nothing is stored and nothing is logged. You can disconnect after the page loads and it keeps working.

Can I hash files?

Yes, any file: text, PDF, images, archives, video, anything. The file is read a few megabytes at a time so a large one does not exhaust memory or freeze the page, and a progress indicator shows how far along it is. The name, size and MIME type are shown alongside the checksum.

Can I verify MD5 checksums?

Yes. Paste the checksum you were given into the verification field and the tool compares it with the one it computed. Comparison ignores case and spacing, because published checksums come formatted in all sorts of ways. When they differ, the exact characters that differ are highlighted — two 32-character hex strings are impossible to compare by eye.

Is MD5 secure?

No, not for anything security-related. Practical collision attacks have existed since 2004, and today two different files with the same MD5 can be produced in seconds on a laptop. That means MD5 cannot prove a file has not been tampered with by someone who wants to tamper with it. It is still perfectly good at catching accidental corruption — a truncated download, a bad disk — which is what checksums are usually for.

Can MD5 be reversed?

Not directly. MD5 is one-way: it throws information away, and a 32-character digest cannot contain a file of any size. But short or common inputs can be looked up — every common password has been hashed and tabulated long ago — so a hash of something guessable offers no protection at all.

Why do two identical files have the same MD5?

Because MD5 is deterministic: the same bytes always produce the same digest, on any machine, in any language, forever. That is the whole point. It is what lets you compare a downloaded file against a published checksum, and what makes MD5 useful for finding duplicate files.

Should I use MD5 for passwords?

No, absolutely not. MD5 is fast, and speed is exactly wrong for password hashing — a modern graphics card computes billions of MD5s per second, so a stolen database of MD5 password hashes is cracked in hours. Use bcrypt, scrypt or Argon2, which are deliberately slow and salted per password.

What is a collision?

Two different inputs producing the same hash. Collisions must exist for any hash function — there are more possible inputs than outputs — but a good one makes finding a pair infeasible. MD5 no longer does: crafted collisions are cheap, and pairs of files that differ meaningfully while sharing a digest have been published.

What is the difference between MD5 and SHA-256?

MD5 produces 128 bits and SHA-256 produces 256. More importantly, SHA-256 has no known practical collision attack, while MD5 has had one for two decades. MD5 is faster, which matters for checksumming very large files and matters not at all for security. For anything new, use SHA-256.

Why does the browser not have MD5 built in?

Deliberately. The WebCrypto API supports SHA-1 and the SHA-2 family but refuses MD5, precisely because offering it would encourage its use in security code. This tool therefore implements MD5 itself, in JavaScript, verified against the seven test vectors published in RFC 1321.

Does it handle Unicode correctly?

Yes. Text is encoded as UTF-8 before hashing, which is what every other implementation does, so a string with accents, non-Latin scripts or emoji produces the same digest here as it would in Python, Node or a shell.

How large a file can it hash?

Up to 2 GB. The file is read in four-megabyte slices and hashed incrementally, so memory use stays flat regardless of size and the page keeps responding. A large video takes a while, and the progress bar tells you how long is left.

Can I download the result?

Three ways: a plain text checksum line, a CSV row for a spreadsheet, and a JSON report that includes the verification outcome and a note recording that MD5 is not a security control.

Are there keyboard shortcuts?

Ctrl/Cmd+Enter hashes immediately, Ctrl/Cmd+Shift+C copies the hash, Ctrl/Cmd+Shift+D downloads the JSON result, Ctrl/Cmd+Shift+L loads another sample and Ctrl/Cmd+Shift+Delete clears everything. Ctrl/Cmd+F opens the search, and Escape closes it.

Popular tools

↑ ↓NavigateOpenEscClose