Hash Generator
Compute MD5, SHA-1, SHA-256, and SHA-512 hashes from text or a file, all at once. SHA-1/256/512 come from your browser's native Web Crypto API; MD5 isn't available there (it's cryptographically broken) so it uses a small dedicated library, included anyway since people still need it for legacy checksum compatibility — with a clear note that MD5 and SHA-1 shouldn't be relied on for anything security-sensitive. Runs entirely client-side — nothing is uploaded.
About this tool
This tool computes MD5, SHA-1, SHA-256, and SHA-512 hashes from text or a file, all at once. A cryptographic hash turns any input into a fixed-length fingerprint — the same input always produces the same hash, and changing even one byte produces a completely different one, which is what makes hashes useful for verifying a download matches its published checksum, detecting whether a file has been tampered with, or generating a stable identifier for a piece of data. SHA-1, SHA-256, and SHA-512 come from your browser's native Web Crypto API — the same cryptographic primitives your browser already uses for HTTPS, computed with zero external dependencies. MD5 is different: it's not available in Web Crypto at all, because it's been cryptographically broken since 2004 (deliberately colliding two different inputs to the same MD5 hash is practical, not just theoretical) — but people still search for and need an MD5 generator constantly, mostly for legacy checksum compatibility, so this tool includes it via a small dedicated library. Worth being direct about: MD5 and SHA-1 are shown for compatibility only — don't rely on either for anything where security actually matters (password storage, integrity against a malicious actor, etc.); SHA-256 or SHA-512 are the ones to use for that. It runs entirely client-side — your text or file is hashed locally in your browser and never uploaded anywhere.
Supported formats
- MD5 — 128-bit (32 hex characters). Cryptographically broken — compatibility/checksum use only, never security-sensitive.
- SHA-1 — 160-bit (40 hex characters). Also cryptographically broken (practical collisions demonstrated in 2017) — compatibility use only.
- SHA-256 — 256-bit (64 hex characters). Part of the SHA-2 family, still considered secure — the standard choice for integrity checks today.
- SHA-512 — 512-bit (128 hex characters). Also SHA-2, wider output than SHA-256 — used where a longer hash is specifically required.
What you can do
- Hash typed/pasted text, or an uploaded file
- MD5, SHA-1, SHA-256, and SHA-512 — all four computed at once
- Copy any individual hash in one click
- Nothing is uploaded — every hash is computed locally in your browser
How to use
Step 1
Type, paste, or upload
Switch between Text and File mode — hashing starts automatically, no button to press.
Step 2
See every hash at once
MD5, SHA-1, SHA-256, and SHA-512 all appear together, so you don't have to run four separate tools.
Step 3
Copy what you need
Copy any individual hash — useful for comparing against a published checksum or embedding in a script.
Example
Hashing the text "abc" produces these well-known values:
MD5
900150983cd24fb0d6963f7d28e17f72
SHA-256
ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad
These are standard textbook test vectors — a good way to confirm any hash tool (this one included) is computing correctly, since changing even a single character of the input changes the entire hash.
How your data is handled
This tool is labeled 🟢 Browser: your text or file is hashed directly using your browser's native Web Crypto API (for SHA-1/256/512) and a small local library (for MD5) — nothing is uploaded to a server, and nothing about it is retained once you leave the page.
Frequently asked questions
Why include MD5 and SHA-1 if they're broken?+
People still search for and genuinely need them constantly — mostly for compatibility with legacy systems, checksums published alongside old file downloads, or matching a hash format some other tool already committed to. They're included for that, with a clear note that neither should be trusted for anything security-sensitive (password storage, verifying data against a malicious actor, etc.) — SHA-256 or SHA-512 are the right choice there.
Why do the hashes update as I type, with no "Generate" button?+
Hashing is fast enough for ordinary text that there's no reason to make you click a button first — all four hashes recompute live as you type or paste.
Is there a file size limit?+
No hard limit — the browser reads the whole file into memory to hash it, so extremely large files (multiple GB) may be slow or strain memory, but anything in normal document/image/small-archive territory hashes near-instantly.
Will hashing the same file twice give the same result?+
Yes, always — that's the defining property of a hash function. If you're comparing a file against a published checksum and the hashes don't match, the file's contents differ from what that checksum was generated from, even if the difference is a single byte.
Is my text or file uploaded anywhere?+
No — everything is hashed directly in your browser using the Web Crypto API and a small local MD5 library. Nothing you type, paste, or upload here ever leaves your device.