Hash Generator
MD5 through SHA-512, plus HMAC
Hash text or a file, compare against an expected checksum, and generate keyed HMAC digests.
Hash Generator
Runs in your browser · nothing uploaded01 — How to use Hash Generator
02 — Getting good results
03 — Questions
No. SHA hashing uses the browser's built-in Web Crypto, and MD5 and CRC32 are implemented in the page itself. A file you choose is read locally and never leaves the tab — which is what makes it safe to check a private archive here.
Because a great deal of published checksum data is still MD5, and verifying a file against a checksum from the same source is a legitimate use. Web Crypto deliberately does not offer MD5, so it is implemented here — with a warning attached rather than silently.
The browser's crypto offers HMAC only for the SHA family. CRC32 is not a cryptographic hash at all — it detects accidental corruption, and is trivial to forge deliberately — so an HMAC built on it would be misleading.
Yes, for the same bytes. Text is encoded as UTF-8 before hashing, so a file and its pasted contents agree, and results match sha256sum, md5sum and their equivalents on every platform.
04 — More about Hash Generator
What a hash guarantees, and what it does not
A cryptographic hash promises three things: the same input always gives the same digest, a digest reveals nothing about its input, and finding two inputs with the same digest is computationally infeasible. That third promise is the one that breaks first, and it is what "broken" means when applied to MD5 and SHA-1 — collisions can be constructed deliberately, and have been, including for real certificate and document formats. Note what does not break: verifying a download against a checksum published alongside it by the same party still works, because an attacker who could replace the file could equally replace the checksum, so the digest was never the security boundary in that scenario. The distinction is why these algorithms are simultaneously unsuitable for signatures and perfectly reasonable for the checksum on an old release page.
Why passwords need more than a hash
Hashing a password before storing it stops a database leak handing over plaintext, but only just. Fast hashes are fast for attackers too: a modern GPU computes billions of SHA-256 digests per second, so the entire space of common passwords falls in minutes, and identical passwords produce identical digests, which reveals who shares one. Salting — mixing a unique random value into each password before hashing — fixes the second problem and defeats precomputed lookup tables. The first problem needs a hash designed to be slow and memory-hungry, which is what bcrypt, scrypt and Argon2 are for. None of that is what this tool does; it computes general-purpose digests. If you are storing passwords, reach for a password-hashing function, not SHA-256.
61 more tools
where this came from.
Same shell, same shortcuts, same promise: nothing leaves your browser.