Online hash generator
A hash turns data of any length into a fixed-length "fingerprint", commonly used for file integrity checks, password storage and digital signatures. This hash generator computes MD5, SHA-1, SHA-256, SHA-384 and SHA-512 at once — the SHA family via the browser-native Web Crypto API and MD5 in pure JavaScript, all locally in your browser with nothing uploaded.
How to use
- Paste text into the input box.
- Choose the hash algorithm (SHA-256 or higher recommended).
- Click Generate to get the hex hash, which you can copy in one click.
Common use cases
- Verify a downloaded file is intact and untampered.
- Check whether two pieces of content are identical.
- Learn and test hash algorithms.
Note: in practice, storing passwords should not use a plain hash — combine a salt with a purpose-built algorithm like bcrypt or Argon2.
A hash is for comparison, not encryption
The most concrete use is verifying downloads. You grab an installer or an ISO from an official site, which usually publishes an MD5 or SHA-256 value alongside it. Hash the file you downloaded, compare it character by character with the published one, and a match tells you the file wasn't tampered with or cut off mid-download. Two misconceptions are worth clearing up:
- A hash isn't encryption, and it can't be reversed. It's a one-way fingerprint — there's no way to "decode" it back to the original. Sites that claim to "crack" MD5 are just looking answers up in a dictionary.
- Don't store passwords as plain MD5/SHA. They're fast by design — great for checksums, poor against brute force. For passwords use a salted, deliberately slow hash like bcrypt or argon2.
How do you confirm the hashes on this page are correct?
Use an input anyone can look up. The MD5 of hello is 5d41402abc4b2a76b9719d911017c592 and its SHA-256 is 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824, both of which you can verify with echo -n hello | md5sum on your own machine. Now change one character: Hello hashes to 8b1a9953c4611296a827abf8c47804d7, sharing nothing with the first. That is the avalanche property, and it is why a mismatched checksum is usually one stray space or newline rather than a corrupted file — hello with a trailing space gives f814893777bcc2295fff05f00e508da6.