MD5 hash generator
MD5 turns any text into a 128-bit fingerprint, 32 hex characters long — the checksum older systems, package mirrors and database columns still carry. Computed in your browser: the text you type is never sent anywhere.
Part of developer tools and security tools.
MD5
waiting for input…
SHA-1
waiting for input…
SHA-256
waiting for input…
SHA-512
waiting for input…
Good to know about MD5
Ron Rivest published MD5 in 1992 as RFC 1321. Its collision resistance is gone entirely: two inputs sharing an MD5 can be produced in seconds, and even a chosen-prefix collision — where both inputs start with content the attacker picks — is within reach of ordinary hardware. That is how researchers forged a rogue certificate authority in 2008, and how the Flame malware passed itself off as signed by Microsoft in 2012.
What survives is its use for spotting accidental change: a corrupted copy, a truncated transfer, duplicate files in a folder being cleaned up. No practical preimage attack exists, so a given MD5 still cannot be reversed except by guessing, but that is no reason to pick it for anything new — RFC 6151 has advised against it wherever security matters since 2011.
MD5 reference hashes
Every digest below was computed by the same code as the generator above when this page was built, and checked against the value recorded in the site’s source — a mismatch stops the build. Inputs are hashed as UTF-8 bytes, with nothing added.
| Input | MD5 | Copy |
|---|---|---|
| (empty string)0 bytes. Zero bytes — also the digest of any empty file. | d41d8cd98f00b204e9800998ecf8427e | |
| abc3 bytes. The test vector used in the algorithm’s own specification. | 900150983cd24fb0d6963f7d28e17f72 | |
| hello5 bytes. Just the five letters, as printf sends them. | 5d41402abc4b2a76b9719d911017c592 | |
| hello\n6 bytes. With the trailing newline that echo adds. | b1946ac92492d2347c6235b4d2611184 | |
| The quick brown fox jumps over the lazy dog43 bytes. The classic pangram. | 9e107d9d372bb6826bd81d3542a419d6 | |
| café5 bytes. The é is two bytes in UTF-8, c3 a9. | 07117fe4a1ebd544965dc19573183da2 |
Getting the same digest on the command line
On Linux, printf %s hello | md5sum prints 5d41402abc4b2a76b9719d911017c592, the value in the table. The more natural echo hello | md5sum gives b1946ac92492d2347c6235b4d2611184 instead, because echo appends a newline and the newline is hashed too. On macOS the command is md5. When a digest will not match, a trailing newline or a text editor’s different encoding is the first thing to check.
Other algorithms
MD5 digests are 128 bits, 32 hex characters. The same text through the other algorithms:
Or open the hash generator with all four side by side. Either way the text stays in this tab — see the privacy page.