Skip to content
Tool

Hash Generator

Compute checksums & HMACs for text and files: MD5, SHA-1/256/384/512, SHA3-256/512. Hex or Base64 output, verify against a known value, and export.

Input mode
Algorithm
Chars: 0 · Bytes: 0
Chars: 0

Applies to hex output only.

Salt is concatenated as prefix + input + suffix.

Live preview
Algorithm: SHA-256 · Bits: 256 · Time: ms

            
WebCrypto fast
MD5 & SHA-3 via loader
HMAC key support
File hashing

How it works

1) Choose algorithm

Use SHA-256/512 for robust checksums. MD5 is for legacy/non-security use.

2) Paste text or pick a file

We hash locally in your browser. Toggle HMAC for keyed hashes.

3) Copy or download

Choose hex/base64 output, uppercase/grouping, and verify against a known digest.

Hashing 101: Checksums, HMACs & Best Practices

Learn when to use SHA-256 vs MD5, how HMAC adds authenticity, and tips for comparing digests.

What is a hash?

A hash maps data to a fixed-size digest (e.g., 256 bits). Small changes in input cause large, unpredictable changes in the output (“avalanche effect”).

HMAC vs plain hash

HMAC (Hash-based Message Authentication Code) mixes a secret key with the message to provide integrity and authenticity. Use HMAC-SHA-256 or HMAC-SHA-512 for API tokens or webhooks.

Which algorithm should I pick?

  • SHA-256 / SHA-512: modern, widely supported; good for checksums/HMACs.
  • SHA-3-256/512: alternative standardized family; useful if required by a spec.
  • MD5 / SHA-1: collision-broken; OK for non-security checks like file integrity where tampering is not a concern.

Comparing digests safely

Normalize encodings (hex vs base64), case, and whitespace. For programmatic checks, prefer constant-time comparison when secrets are involved.

FAQ

Is hashing encryption?

No. Hashing is one-way; encryption is reversible with a key.

Can I reverse a hash?

No — hashes are not designed to be reversed.

Why do results differ across tools?

Different encodings (hex/base64), newline handling, Unicode normalization, or salts/HMAC options can change the output. Make sure settings match.