tooloora

Hash Generator — SHA-256 for files & text, local

Compute SHA-1, SHA-256, SHA-384 and SHA-512 checksums of files and text, and check them against an expected value — all in your browser, nothing uploaded.

Runs locally — nothing is uploaded

SHA-1
SHA-256
SHA-384
SHA-512

The comparison tolerates upper/lower case, whitespace and full sha256sum lines. SHA-256 has 64 hex characters.

Runs locally in your browser — no upload.

Generate SHA hashes of files and text in your browser

Drop a file to compute its SHA-256 (or SHA-1, SHA-384, SHA-512) checksum, or type text and get all four digests live. Paste the published checksum next to it and a clear match/mismatch verdict tells you whether your download is intact. Everything runs on the Web Crypto API in your browser — nothing is uploaded.

How do I verify a downloaded file?

Many download pages publish a checksum next to the file — Linux ISOs, installers, firmware images. To check yours: drop the file into the file mode, pick the algorithm the page names (usually SHA-256), and paste the published value into the compare field. The comparison is forgiving about form — upper or lower case, extra whitespace, a whole sha256sum line like ba7816bf… ubuntu.iso, even the Base64/SRI notation — but strict in its verdict: a single differing character means the file is not the one that was published. If the pasted value's length matches a different SHA variant than the one you selected, the tool points that out and offers to switch instead of showing a misleading mismatch.

What is a hash and what is it for?

A hash function maps any input to a fixed-length digest. The same input always yields the same digest, and changing a single character changes the whole output — yet you can never run it backwards to recover the input. That makes hashes ideal for verifying integrity (does this download match the published checksum?) and for storing passwords without keeping the password itself.

Which algorithm should you use?

AlgorithmDigest lengthUse today?
SHA-1160-bit (40 hex)legacy only — broken since a practical collision in 2017
SHA-256256-bit (64 hex)recommended default
SHA-384384-bit (96 hex)higher-security contexts
SHA-512512-bit (128 hex)higher-security contexts

SHA-256 underpins TLS certificates, software signing, Git and Bitcoin. SHA-1 is shown for compatibility with older systems, but Google demonstrated a real SHA-1 collision (“SHAttered”) in 2017, so it must not be used for security. MD5 is intentionally omitted — it's broken and the Web Crypto API doesn't provide it; if you paste an MD5 value into the compare field, the tool says so instead of pretending a mismatch.

Why is there a file size limit?

The browser's native digest function takes exactly one buffer — it cannot stream. Hashing a file natively therefore means holding the whole file in memory, which this tool allows up to 256 MB. Beyond that, SHA-256 switches to a built-in streaming implementation that reads the file in small chunks with constant memory: it handles large files, just noticeably slower than the native path, and the tool estimates the wait beforehand. SHA-1, SHA-384 and SHA-512 have no streaming fallback and stay limited to 256 MB — an honest boundary rather than a silent failure.

Hashing is one-way, not encryption

You cannot decode a hash back to the text — there is no “decrypt” here. Attackers can only guess candidate inputs and compare digests, which is why long, unique inputs (and salting for passwords) matter.

Private by default

Files and text are hashed locally with your device's own resources; they never leave the browser. That makes this safe for checking sensitive documents, and it keeps working without a network connection.

Frequently asked questions

What is a hash (checksum)?

A hash function turns any input into a fixed-length string of characters — the digest. The same input always gives the same digest, while the tiniest change produces a completely different one. Hashes are used to verify that a file or message hasn't changed and to store passwords safely.

How do I verify a downloaded file against its checksum?

Drop the file into the file mode, pick the algorithm the download page names (usually SHA-256), then paste the published checksum into the compare field. The tool tolerates upper/lower case, whitespace and full sha256sum lines and shows a clear match or mismatch. A mismatch means the file is not the one that was published — download it again from the official source.

Is there a file size limit?

Files up to 256 MB are hashed with the browser's native Web Crypto, which needs the whole file in memory at once. Beyond that, SHA-256 switches to a built-in streaming implementation with constant memory — slower, but it works for large files. SHA-1, SHA-384 and SHA-512 remain limited to 256 MB, and the tool says so instead of failing silently.

Which algorithms are supported, and why no MD5?

SHA-1, SHA-256, SHA-384 and SHA-512. MD5 and SHA-1 are cryptographically broken for security use; SHA-256 or stronger is recommended. MD5 isn't offered because Web Crypto doesn't include it — if you paste an MD5 value into the compare field, the tool tells you instead of showing a misleading mismatch.

Are my files or text uploaded to compute the hash?

No. Hashing runs entirely in your browser via the Web Crypto API (plus a local JavaScript fallback for very large files). Your data never leaves your device — there's no server call, no logging, and it works offline.

Can I reverse a hash back to the original data?

No. Hashing is one-way by design: you cannot recover the input from the digest. Attackers can only guess inputs and compare, which is why long, unique inputs (and salting for passwords) matter.