Hash Generator
Generate a cryptographic hash (MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA3-256, SHA3-512, RIPEMD-160) of any text, in hex or base64, and optionally verify it against an expected hash.
Input
Hex comparison is case-insensitive; base64 is case-sensitive.
Output
Only shown when an expected hash is provided.
Guides
The Hash Generator computes a cryptographic hash (also called a digest or checksum) of any text you enter. Type or paste a message, pick an algorithm, and the fixed-length fingerprint appears instantly — in hexadecimal or base64. You can also paste an expected hash to confirm two values match.
A hash is a one-way function: the same input always produces the same output, but you can't reverse the output back into the input. That makes hashing ideal for verifying file integrity, comparing values without exposing them, storing lookup keys, and building checksums.
Supported algorithms
- MD5 — 128-bit. Fast and widely used for non-security checksums, but cryptographically broken. Never use it for passwords or signatures.
- SHA-1 — 160-bit. Also broken for collision resistance; kept for legacy interoperability (older Git objects, TLS certificates).
- SHA-224 / SHA-256 / SHA-384 / SHA-512 — the SHA-2 family, the current mainstream choice. SHA-256 is the default and a safe pick for almost everything.
- SHA3-256 / SHA3-512 — the newer Keccak-based SHA-3 standard, a structurally different design from SHA-2.
- RIPEMD-160 — 160-bit, used in Bitcoin address derivation.
The MD5, SHA-1, and RIPEMD-160 options are labeled as legacy because they should only be used to interoperate with systems that already rely on them, not for new security-sensitive work.
How to use it
- Enter your message in the input box.
- Choose a hash algorithm (SHA-256 is selected by default).
- Pick an output format: lowercase hex, uppercase hex, or base64.
- Read the computed hash, and use the copy or download button to save it.
Comparing against an expected hash
Paste a value into the Expected hash field and the tool reports Match or No match. Hexadecimal comparison is case-insensitive (ABC123 and abc123 are treated as equal, which is standard for hex digests), while base64 comparison is case-sensitive. This is handy for verifying a downloaded file's published checksum or confirming that a stored hash corresponds to a known input.
Is hashing the same as encryption?
No. Encryption is reversible with a key; hashing is not. There is no "unhash" operation. If you need to protect data you must later recover, you want encryption, not hashing.
Should I hash passwords with this?
Not directly. Plain SHA-256 or MD5 of a password is unsafe because attackers can precompute it. For password storage, use a purpose-built, salted, slow algorithm such as Argon2, bcrypt, or scrypt.
Privacy
Everything runs entirely in your browser. Your message is hashed locally with the audited open-source @noble/hashes library and is never uploaded to a server, so it's safe to hash sensitive text.
Use it from code
From 3 credits per callREST API
curl -X POST https://api.iotools.cloud/v1/tool/hash-generator \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"inputText": "abc",
"algorithm": "sha256",
"outputFormat": "hex",
"expectedHash": ""
}'Swap in your own key from your account. The tool's fields are the body — no wrapper.
Ask an AI agent
Use the IOTools `hash-generator` tool (Hash Generator) on this input:
YOUR_INPUT_HEREPaste this at any agent connected to the IOTools MCP server, then add your input.