File Hash Calculator — SHA-256, SHA-1, SHA-512 Checksum
Drop a file to get its SHA-256, SHA-1, SHA-384 and SHA-512 checksums — computed on your device — and paste a published hash to verify it matches.
No file chosen.
—
What this tool does
A cryptographic hash turns a file of any size into a short, fixed-length string — a fingerprint of its exact contents. Change one byte anywhere and the whole fingerprint changes. That property is what makes hashes useful for verifying downloads, spotting corruption, and identifying a file without needing to look inside it. This page computes the SHA-family hashes of a file you choose, locally in your browser, and can check the result against a hash the publisher gave you.
The algorithms, and when to use them
| Algorithm | Digest length | Use |
|---|---|---|
| SHA-256 | 64 hex chars | The default choice; what most download pages publish. |
| SHA-512 | 128 hex chars | Longer digest, equally standard. |
| SHA-384 | 96 hex chars | Truncated SHA-512, used in some standards. |
| SHA-1 | 40 hex chars | Legacy; only when a page lists a SHA-1 to match. |
MD5 (32 hex chars) is intentionally not offered: it is broken for security purposes and the browser’s WebCrypto library does not provide it. Use the SHA family above.
Verifying a download
Download sites usually publish a checksum next to the file, in either sha256sum style
(<hash> <filename>) or just the bare hex. Choose the downloaded file here,
pick the matching algorithm, paste the published value into the compare box, and the page tells you
whether they agree. Matching means the bytes you received are exactly the bytes that were published
— an unmatched value means the download was corrupted or is not the file you expected.
Why do this in the browser
A checksum is often exactly the moment you are least willing to hand a file to a third party — a signed contract, a private archive, a piece of evidence. Most checksum websites upload the file to their server to hash it, which defeats the point. This page uses your browser's own WebCrypto library on the file as it sits on your disk; nothing is transmitted, and closing the tab leaves no trace of what you hashed.
Frequently asked questions
Which hash algorithm should I use?
SHA-256 is the default choice: it is fast, widely published, and every OS and language can compute it. SHA-512 is equally strong and slightly faster on 64-bit hardware, but produces a longer digest. SHA-1 still appears on older download pages and in git, and it is fine for detecting accidental corruption — it is not collision-resistant enough for security decisions. This tool deliberately does not offer MD5.
Why does the published hash not match mine?
Four causes, in order of likelihood: the file was downloaded in a different mode (a text-mode transfer can rewrite line endings), the publisher used a different algorithm than the one you selected, the file is a different build or version, or the download was corrupted. Compare the algorithm name and the full digest, not the first few characters, and re-download rather than assuming the file is malicious.
Can I hash a whole folder or many files at once?
Not on this page: it hashes one file at a time, which keeps memory bounded and the result unambiguous. To verify a release with many files, hash the archive (zip, tar) rather than the directory — the archive is the single artefact the publisher signed or listed. If you need per-file checksums, run the tool once per file or use a local command-line tool.
What is a file hash for?
A hash is a short fingerprint of a file’s exact bytes. Two files with the same hash are almost certainly identical; a file whose hash differs from the publisher’s has changed — even by one byte. It is how you verify that a download was not corrupted or tampered with, and how a forensic examiner identifies a file without sharing its contents.
Which algorithm should I use?
SHA-256 is the sensible default and what most download pages publish. SHA-512 is longer and equally fine. SHA-1 is still widely published but is no longer considered collision-resistant, so treat it as a compatibility choice, not a secure one — if a site gives you a SHA-1 to check, use SHA-1; otherwise prefer SHA-256.
Is MD5 supported?
No, and deliberately. MD5 is broken for security purposes — collisions can be manufactured at will — and the browser’s own cryptography library (WebCrypto) does not offer it. If a legacy page only lists an MD5, you can compute it with a command-line tool; this page sticks to the SHA family that WebCrypto provides.
Is my file uploaded?
No. The file is read directly from your disk by the browser and hashed in the page; not a byte is sent anywhere. That is the whole point of doing it here rather than on a server-based checksum site — you can verify a confidential file without exposing it.
How large a file can it handle?
The digest is computed over the whole file in memory, so very large files (multiple gigabytes) depend on how much memory the tab can use. Files up to a few hundred megabytes are comfortable. The progress bar shows the read as it goes, so you can see it working rather than guessing.
Can I check the hash a website published?
Yes — paste it into the compare box. The tool normalises the case and whitespace of both values and tells you whether they match, which removes the usual false alarm from a stray space or a capital letter. If only the algorithm is unknown, the length of the pasted value identifies it.
Go deeper
Longer explanations of the problems this tool solves:
Sources
- NIST FIPS 180-4, Secure Hash Standard (SHA-1, SHA-256, SHA-384, SHA-512).
- MDN Web Docs — SubtleCrypto.digest().
Everything runs in your browser — your file never leaves your device.