EN

MD5 Hash

Generate a 32-character MD5 digest for text or a whole file

FAQ

Can MD5 be decrypted?

No. MD5 is a one-way hash, not encryption — there is no key and no inverse operation. So-called "MD5 decryption" tools simply look your hash up in a precomputed dictionary; if it is not there, the original cannot be recovered.

What is the difference between 32-character and 16-character MD5?

The 16-character form is just the middle slice of the 32-character digest (characters 9 to 24). It is not a different algorithm — prefer the full 32 characters when verifying files.

How do I use MD5 to verify a file?

Use Hash a file in the toolbar on the original and on the download; identical digests mean nothing was corrupted or altered. The hash you compare against must come from a trusted source (vendor site, GitHub Release page) - comparing a file with itself proves nothing.

Is MD5 still secure?

Not for password storage or signatures. Practical collisions were demonstrated in 2004. Use bcrypt, scrypt or Argon2id with a salt for passwords.

About this tool

Start with the terminology: MD5 is a one-way hash, not encryption. There is no key and no inverse, the output is always 128 bits written as 32 hex characters. "MD5 encryption" is a historical misnomer, and every "MD5 decrypt" service works by looking your digest up in a precomputed dictionary - nothing is ever actually reversed.

"16-character MD5" is not a different algorithm, just characters 9 to 24 of the 32-character digest. It throws away 96 bits and collides far more easily; this tool always outputs the full 32, so slice it yourself if a legacy system demands the short form.

To checksum a file, click Hash a file in the toolbar: the file is read as raw bytes locally and never uploaded. Rule out the two usual false alarms first. The same text saved with CRLF on Windows and LF on Linux hashes differently, and a byte-order mark changes the digest as well. If your value differs from the vendor's, check encoding and line endings before assuming corruption.

Text is hashed as UTF-8, so characters outside the basic plane (emoji, rarer CJK) are expanded into surrogate pairs first. That detail is why many hand-rolled MD5 implementations return a wrong digest for emoji: an encoder that only handles three-byte sequences mangles the pair.

Do not use MD5 for password storage (use bcrypt, scrypt or Argon2id with a salt - salting only defeats rainbow tables, it does not stop weak passwords from being guessed), for signatures, or for tamper detection (use SHA-256 or above). Practical collisions were demonstrated in 2004, and producing two different files with the same MD5 now takes ordinary hardware.