Skip to content
tecuy
Developer & Data

Hash Generator

Generate SHA-256, SHA-384, SHA-512, or SHA-1 hashes of text or a local file using your browser's built-in Web Crypto API.

Hashing runs locally using your browser's built-in Web Crypto API — text and files are never uploaded or sent anywhere. These are general-purpose cryptographic hashes for checking data integrity (e.g. verifying a downloaded file matches a published checksum) — they are not suitable for storing passwords; use a dedicated password-hashing function (e.g. Argon2, bcrypt, scrypt) for that instead.

A cryptographic hash turns any input into a fixed-length string that changes completely if even one character of the input changes — useful for confirming a downloaded file matches a publisher's published checksum, or that two pieces of text are byte-for-byte identical without comparing them directly.

SHA-256, SHA-384, and SHA-512 are current, widely-used algorithms with no known practical collision attacks. SHA-1 is included for compatibility with older systems only — it has known collision weaknesses and should not be relied on anywhere collision resistance matters.

These are not password hashes. A general-purpose hash like SHA-256 is fast by design, which makes it unsuitable for storing passwords — a password hash needs to be deliberately slow (Argon2, bcrypt, scrypt) to resist brute-force guessing.

How to use the Hash Generator

  1. Choose an Algorithm: SHA-256 (the default), SHA-384, SHA-512, or SHA-1.
  2. Type or paste into the Text box; the hex hash appears below as you type.
  3. Click Copy hash to copy it, or Clear to empty the box.
  4. To check a file instead, use "Or hash a file" to pick a file, then click Copy file hash.

Example: Why one character matters

With SHA-256 selected, typing hello world (no line break) gives b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9. Typing Hello world with a capital H gives 64ec88ca00b268e5ba1a35678a1b5316d212f4f366b2477232534a8aeca37f3c, a completely different value.

Questions about the Hash Generator

My text hash doesn't match the one from my terminal. Why?
The tool hashes exactly the characters in the box, encoded as UTF-8. Commands like echo usually add a trailing newline: hello world followed by a line break hashes to a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447 with SHA-256. Check for extra spaces or line breaks.
What happens to my file hash when I change the algorithm?
The file is hashed again with the new algorithm automatically, and the algorithm is shown next to the file name. You can also pick the same file again at any time to re-hash it.
Is there a file size limit, and is MD5 available?
Files over 200 MiB are rejected with a message before they are read. MD5 is not offered because the browser's Web Crypto API, which this tool uses, does not support it.
Is the output uppercase or lowercase?
Always lowercase hexadecimal. Hex comparison is case-insensitive, so a published checksum in uppercase still matches if the characters are the same.