File Hash Calculator
NewCompute the MD5, SHA-1, SHA-256, SHA-384, and SHA-512 hash of any file directly in your browser — nothing is uploaded.
…or drag and drop a file anywhere on this box. Nothing is uploaded — the file is read and hashed entirely in your browser.
—————SHA-1/256/384/512 use the browser's native Web Crypto API. MD5 is implemented from scratch in JavaScript (per RFC 1321) since Web Crypto does not support it — MD5 is included only for compatibility with older checksums; it is cryptographically broken and should not be relied on for security-sensitive integrity checks.
Frequently Asked Questions
Is my file uploaded anywhere to compute the hash?
No. The file is read with the browser's File API and hashed locally — SHA-1/256/384/512 via the native Web Crypto API, and MD5 via a hand-rolled JavaScript implementation, since Web Crypto does not support MD5. Nothing about the file or its contents leaves your browser.
Why include MD5 at all if it's broken?
Plenty of older software (some package registries, legacy download mirrors, some CI caches) still publishes MD5 checksums for basic accidental-corruption detection. It's included for compatibility with those checksums, not as a security recommendation — for anything security-sensitive, use SHA-256 or SHA-512.
How do I verify a downloaded file against a checksum a vendor published?
Drop the file in, then paste the vendor's published hash into the "Compare against a known hash" field. It's checked case-insensitively against all five computed hashes and tells you whether it matches any of them.
Is there a file size limit?
Not an artificial one from this tool, but very large files (multi-GB) are read entirely into memory via arrayBuffer() before hashing, so extremely large files may be slow or hit your browser's memory limits.
Can I drag and drop a file instead of clicking "Choose a file"?
Yes — drag a file anywhere onto the upload box and it starts hashing immediately on drop.