MD5 / SHA Hash Generator

Generate MD5, SHA-1, SHA-256, SHA-384 and SHA-512 hashes or HMAC signatures. Text, Hex, Base64 or file input; Hex or Base64 output.

Hashing is one-way and cannot be decrypted. HMAC adds a secret key and is commonly used to sign or verify API requests and webhooks.

The file is read in your browser only and never uploaded.

What is a hash?

A hash function turns data of any length into a fixed-length "fingerprint". The same input always gives the same result, changing a single character changes the result completely, and the original cannot be recovered from the hash. Hashes are used to verify downloads, detect changes to data and build cache keys.

How to use

  1. Pick an algorithm, or "All algorithms" to calculate every result at once.
  2. Type in the Input box. With "Auto update" on, the result appears as soon as you stop typing.
  3. Adjust the input encoding and output encoding if needed, or enable HMAC and enter a key.

Algorithm comparison

AlgorithmLength (hex)Suitable for
MD532 charactersChecksums and cache keys; broken, never use it for security
SHA-140 charactersCompatibility with older systems (such as Git); not recommended for security
SHA-25664 charactersThe most widely used choice today
SHA-384 / SHA-51296 / 128 charactersWhen a longer result is required

What is HMAC?

HMAC is a hash combined with a secret key: only someone who knows the key can produce the same result. Many services use it to sign API requests and to prove that a webhook really came from them; payment providers, GitHub and LINE all use HMAC-SHA256. Enable HMAC and enter the key; the key can be plain text, Hex or Base64.

Input and output encoding

Examples

File hashes and comparison

FAQ

Can a hash be decrypted?

No. Hashing is one-way, so there is nothing to decrypt. So-called "MD5 decrypters" simply look the hash up in huge tables of precomputed common strings, which is why simple passwords are easy to find.

Why is my result different from another tool's?

The input is usually slightly different: an extra space or line break, different line endings (Windows CRLF vs Unix LF) or a different text encoding. Make sure the input is identical and the same input encoding is used.

Should I store user passwords with MD5 or SHA-256?

No. These algorithms are fast, so attackers can try guesses quickly too. Use a password hashing algorithm such as bcrypt, scrypt or Argon2.

Is my HMAC key stored?

No. Calculations run in your browser. The site remembers your input and settings, but the HMAC key is deliberately never remembered, so you need to enter it again after reloading.