Hash Generator

Generate MD5, SHA-1, SHA-256, SHA-384 and SHA-512 hashes of any text as you type. The SHA hashes use your browser's Web Crypto API and everything is computed locally, so your text is never uploaded.

  • 100% free
  • No sign-up
  • Runs in your browser
  • Updated

11 bytes of UTF-8. Hashes update as you type and are computed in your browser.

  • MD5 · 128-bit
    5eb63bbbe01eeed093cb22bb8f5acdc3
  • SHA-1 · 160-bit
    Computing…
  • SHA-256 · 256-bit
    Computing…
  • SHA-384 · 384-bit
    Computing…
  • SHA-512 · 512-bit
    Computing…

How to use the Hash Generator

  1. 1Type or paste text into the Text to hash box. The byte count below it shows the size of the text in UTF-8.
  2. 2Read the five hashes, which update instantly as the text changes.
  3. 3Tick Uppercase hex if the system you are comparing against shows hashes in capital letters.
  4. 4Click Copy next to any algorithm to copy that hash.

What is a hash?

A cryptographic hash function turns input of any length into a fixed-length fingerprint. The same input always produces the same hash, but even a one-character change produces a completely different result. For example, the MD5 of hello world is 5eb63bbbe01eeed093cb22bb8f5acdc3, while the MD5 of Hello world is 3e25960a79dbc69b674cd4ec67a72c62.

Hashes are used to check that a downloaded file has not been corrupted or tampered with, to detect duplicate data, to build cache keys, to sign messages, and inside many security protocols. The output is usually shown as hexadecimal: an MD5 hash is 128 bits, or 32 hex characters, and a SHA-256 hash is 256 bits, or 64 hex characters.

Hashing vs encryption vs encoding

Hashing is one-way. There is no key and no way to turn a hash back into the original text; the only approach is to guess inputs and compare. Encryption is two-way: data is scrambled with a key and anyone with the right key can decrypt it. Encoding, such as Base64 or URL encoding, is not security at all and is reversible by anyone. Our guide on what Base64 encoding is explains why encoded data should never be treated as protected.

Because a hash cannot be reversed, two people can compare fingerprints without sharing the data itself. Note that hashes depend on the exact bytes: this tool hashes the UTF-8 encoding of your text, so trailing spaces, line endings and letter case all change the result.

Which algorithm should you use?

MD5 and SHA-1 are broken for security purposes. Researchers can create two different inputs with the same MD5 or SHA-1 hash, so they must not be used for digital signatures, certificates or proving that data is authentic. They are still acceptable as quick checksums for spotting accidental corruption, and you will see them in older systems.

For new work, use SHA-256 or a larger member of the SHA-2 family. As a reference, the SHA-256 hash of abc is ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad. SHA-384 and SHA-512 give longer outputs and are often faster on 64-bit hardware.

Do not store passwords with these hashes

General-purpose hashes like SHA-256 are designed to be fast, which is exactly wrong for passwords: an attacker with a modern graphics card can test billions of guesses per second against a leaked hash. Passwords should be stored with a slow, salted password-hashing function such as Argon2id, bcrypt or scrypt, which your framework or a well-known library provides. Start with a strong secret from the password generator.

Learn more

Frequently asked questions

Can a hash be decrypted or reversed?

No. A hash is not encrypted data, so there is nothing to decrypt. Websites that claim to reverse MD5 simply look the hash up in large tables of common inputs, which is why short or common text offers no protection.

Why does my hash differ from another tool's result?

Usually the input bytes differ. Check for a trailing newline or space, different line endings (Windows uses CR LF), or a different character encoding. This tool always hashes the text exactly as typed, encoded as UTF-8.

Does uppercase or lowercase hex change the hash?

No. Hexadecimal is case-insensitive, so 9E107D9D and 9e107d9d represent the same bytes. The Uppercase hex option only changes how the result is displayed.

Can I hash a file with this tool?

This tool hashes text. To check a downloaded file, use your operating system's built-in command, such as shasum -a 256 on macOS and Linux or certutil -hashfile on Windows.

Is a hash the same as a UUID?

No. A hash is derived from data and is always the same for the same input, while a random UUID is unique by chance and tied to nothing. If you need unique identifiers, use the UUID generator.

Related tools