How to use
Enter text or choose files
On the Text tab, type or paste and the hashes update as you type; set Input is to hex or Base64 for raw bytes. On the Files tab, drop one or more files up to 200 MB each.
Pick algorithms, output and HMAC
Tick the algorithms you want and choose the Output format. Tick HMAC with a secret key and enter the key to get HMAC values instead of plain hashes.
Compare, copy or export
Paste a checksum into Compare with an expected hash and the matching line turns green. Copy any value, or for files download a checksum file or a CSV of every hash.
Why Hash Generator
- Eight algorithms at once, including SHA-3 and CRC32.
- HMAC mode with a text, hex or Base64 key.
- Hashes many files locally and exports sha256sum-style lists or CSV.
- Built-in comparison with a clear match or no match.
Hash algorithm quick reference
Every algorithm turns any input into a fixed-length output, shown here as hexadecimal. Longer outputs are harder to collide by chance, but the main difference that matters today is whether practical attacks exist.
For new work, pick SHA-256 unless a spec asks for something else. Use MD5 or SHA-1 only to match a checksum someone else published, or where a legacy system gives you no choice. None of these are suitable for storing passwords on their own.
| Algorithm | Output bits | Hex characters | Security status |
|---|---|---|---|
| MD5 | 128 | 32 | Broken; fine for spotting accidental corruption only |
| SHA-1 | 160 | 40 | Collisions shown in practice in 2017; avoid for new security uses |
| SHA-256 | 256 | 64 | Secure; the common default |
| SHA-384 | 384 | 96 | Secure; a shortened form of SHA-512 |
| SHA-512 | 512 | 128 | Secure; often faster than SHA-256 in software on 64-bit CPUs |
| SHA3-256 | 256 | 64 | Secure; a different design from SHA-2, used as a backup standard |
| SHA3-512 | 512 | 128 | Secure |
| CRC32 | 32 | 8 | Not a security hash; detects accidental errors only |
How to verify a download checksum
A checksum proves the file you downloaded is byte-for-byte the file the publisher released. Find the SHA-256 value on the official download page, then compute the hash of your copy and compare. With this page, drop the file on the Files tab and paste the published value into the compare box.
If the values match, the file is intact. If they differ, download it again, ideally from the official site rather than a mirror, and never run an installer whose checksum does not match. You can also check from a terminal with tools that ship with your operating system:
- Windows Command Prompt or PowerShell: certutil -hashfile file.iso SHA256
- Windows PowerShell: Get-FileHash file.iso (uses SHA-256 by default)
- macOS: shasum -a 256 file.iso
- Linux: sha256sum file.iso
- MD5 on macOS: md5 file.iso, and on Linux: md5sum file.iso
Worked example: one extra newline changes everything
Hashes change completely when a single byte changes. The text hello world gives the SHA-256 hash b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9 and the MD5 hash 5eb63bbbe01eeed093cb22bb8f5acdc3.
Add one newline at the end, which is what echo hello world does in a terminal, and SHA-256 becomes a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447 while MD5 becomes 6f5902ac237024bdd0c176cb93063dc4. Nothing in the new hashes hints that the inputs were almost the same.
This is the most common reason a hash from this page does not match one from a script. Use echo -n, or printf, when you hash text on the command line, and check for Windows line endings when you hash files that were edited on different systems. Pasting the text into the box on this page and comparing it with your script's output quickly shows whether the input is the problem.