Hash text and files without uploading anything
Type text or drop a file and this tool computes its SHA-1, SHA-256, SHA-384 and SHA-512 hashes on the spot, in your browser. Hashes are the standard way to verify downloads, confirm that a file has not changed, and fingerprint data without storing the data itself. Because everything runs locally, the tool is safe for sensitive material that you would never paste into a server-side checker.
How to use the hash generator
- Hash text: type or paste into the text box and press Generate. All four hashes appear at once, ready to copy.
- Hash a file: choose a file and press Hash file. The file is read locally and hashed in chunks, so even large files work without uploading a single byte.
- Compare with a known hash: paste the expected value into the compare box. The tool highlights which algorithm matches, so you can verify a download in seconds.
- Uppercase output: some systems publish checksums in uppercase. Toggle the checkbox if you need capitals instead of the usual lowercase hex.
Where hashes are actually used
- Download verification: software publishers list a SHA-256 checksum next to each download. Hash the file you received and compare: a match proves the download is complete and untampered.
- File integrity: hash a backup before and after copying it. Identical hashes mean an identical file, byte for byte.
- Content addressing: systems like Git identify every version of a file by its hash, so a changed file automatically gets a new identity.
- Password storage: services store hashes of passwords, not the passwords themselves, combined with a salt and a slow hashing function. A plain SHA-256 of a password alone is not safe storage.
Why there is no MD5 here
MD5 is still common in old checksum lists, but it is broken: researchers can craft two different files with the same MD5 hash. Browsers also do not ship MD5 in the Web Crypto API, which this tool uses so that nothing is uploaded. If you must verify an old MD5 checksum, use a desktop checksum utility; for anything new, use SHA-256.