Select the right algorithm, compare complete hashes and understand what a match proves.
Understand the settings
A cryptographic hash summarizes exact bytes. A filename change does not change those bytes, but a single edited character, a different newline or a modified archive will change the digest. Select the same algorithm used by the publisher before comparing results.
A match shows that your bytes match the bytes represented by that expected digest, subject to the algorithm’s security properties. It does not show that the file is harmless. If an attacker supplies both the file and its advertised checksum, a matching comparison can still be misleading. Get expected hashes through a trusted channel.
SHA-256 is a practical default for ordinary checksum comparison. SHA-1 is included for compatibility with older published hashes; it should not be chosen for new collision-resistant security designs. This utility is not a password-hashing system.
Step by step
- Choose a file or text input and the publisher’s algorithm.
- Calculate the digest. For text, remember that UTF-8 bytes are hashed.
- Paste the complete expected hexadecimal value to compare it.
- If it differs, check version, algorithm and whether the publisher hashed the archive or a file inside it.
Use a reproducible test
SHA-256 of the three characters abc, without a trailing newline, is ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad. Add a newline and calculate again: the digest changes.
Limits and what to check
- Browser file limit: 64 MiB. Web Crypto hashes the loaded data in memory; larger files need a streaming local tool.
- HTTPS is required for Web Crypto in ordinary production browser contexts.
- Case differences in hexadecimal do not change the digest.
- Files/text are processed locally and are not sent to the server.
Troubleshooting
Hash differs from a command-line result
Check whether the command hashed a newline, a different encoding or a different file. Shell echo often adds a newline.
Same name, different checksum
Names are not content identities. Compare the bytes and the exact release version.
The browser says Web Crypto is unavailable
Use HTTPS or a supported local development context and an up-to-date browser.
Related tools
- Understand text, Unicode and byte encodings · Guide
- Clean text while knowing exactly what changed · Guide
Updated October 9, 2026. Report an issue with this guide.