Hash Generator

Generate MD5, SHA-1, SHA-256 and SHA-512 hashes for free.

This tool runs entirely in your browser. Your files are never uploaded to a server.

What this tool does

Converts any text you type into a cryptographic digest using the algorithm you select — MD5, SHA-1, SHA-256, SHA-384, or SHA-512 — computed entirely in your browser.

How to use it

Click an algorithm button, then type or paste the exact text you want to hash. The digest updates immediately as you type or switch algorithms; capitalization, spaces, tabs, and line endings are all part of the input, so preserve them exactly when comparing against a hash from another source.

Worked example

The UTF-8 text "hello", without quotation marks or a trailing newline, produces 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 with SHA-256, aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d with SHA-1, and 5d41402abc4b2a76b9719d911017c592 with MD5 — the same input, three completely different digest lengths and values depending on the algorithm.

Method

For SHA-1 through SHA-512, the tool encodes your text as UTF-8 bytes and passes them to the browser's native Web Crypto API (crypto.subtle.digest), the same implementation used by web applications for cryptographic hashing. MD5 isn't part of Web Crypto, since it's considered obsolete for security use, so it's computed with a separate JavaScript implementation instead.

Choosing an algorithm

SHA-256 is the default and a solid general-purpose choice, widely used for checksums, Git-adjacent contexts, and integrity verification. SHA-384 and SHA-512 produce longer digests for applications wanting extra margin. MD5 and SHA-1 are included for compatibility with legacy systems and identifiers only — both have practical collision attacks and must not be relied on for security purposes.

Limitations

This hashes exactly the text you type — it doesn't hash files directly, doesn't support keyed/HMAC hashing, and doesn't let you choose a text encoding other than UTF-8. A hash match confirms the input is identical to what produced a reference hash; for MD5 and SHA-1 specifically, that guarantee doesn't hold against a deliberate attacker.

Privacy and processing

Hashing runs entirely in your browser using native or JavaScript hash implementations. The text you enter is never uploaded to a server.

Frequently Asked Questions

Is my text sent to a server?
No — hashing runs entirely in your browser using the Web Crypto API (for SHA algorithms) or a local JavaScript implementation (for MD5); nothing you type is uploaded.
Which algorithm should I use?
SHA-256 is a solid default for general-purpose hashing and integrity checks. Use MD5 or SHA-1 only for compatibility with legacy systems, since both have known collision weaknesses and shouldn't be relied on for security.
Why do the algorithms produce such different-looking results?
Each algorithm has a fixed output length regardless of input size — MD5 always produces 32 hex characters (128 bits), SHA-1 produces 40 (160 bits), and SHA-256/384/512 produce 64/96/128 characters respectively — so switching algorithms changes both the value and the length of the digest.