English

Hash Generator — MD5, SHA-256, File Checksums

MD5 and SHA hashes for text and files, computed in the browser

Runs in your browser · nothing is uploaded

File hash

Drop a file here or choose one. Files are never uploaded.

  • MD5
  • SHA-1
  • SHA-256
  • SHA-384
  • SHA-512

MD5 and SHA-1 have known collision attacks; do not use them for security purposes.

What it is

A hash function turns any data into a fixed-length fingerprint. The same input always gives the same value and a one-character change gives a completely different one, which makes hashes handy for checking that a file is unchanged or comparing a download against its published checksum. This tool shows five algorithms side by side.

How to use

  1. Type or paste text and the hashes update immediately.
  2. To hash a file, drop it on the file area or press Choose file. Typing in the text box switches back to text mode.
  3. Pick Hex or Base64 output; hex can also be uppercased.
  4. To check a published checksum, paste it into Expected hash. Case is ignored, spaces and line breaks inside a grouped checksum are removed, and a trailing file name (as in sha256sum output), a sha256: prefix or the BSD form SHA256 (file) = … is handled, so the page tells you which algorithm matches. The Copy buttons still take any value elsewhere.

How it works

  • Text is encoded to UTF-8 bytes first. A Korean syllable is 3 bytes and most emoji are 4.
  • SHA-1, SHA-256, SHA-384 and SHA-512 are computed with the browser’s WebCrypto API (crypto.subtle.digest).
  • MD5 is not offered by WebCrypto, so the open-source spark-md5 library handles it.
  • Base64 output encodes the raw digest bytes, not the hex string.
  • MD5 and SHA-1 are included for compatibility and integrity checks only. Use SHA-256 or stronger for security work, and a dedicated algorithm for passwords.

Examples

Input Algorithm Result
abc MD5 900150983cd24fb0d6963f7d28e17f72
empty string MD5 d41d8cd98f00b204e9800998ecf8427e
abc SHA-256 ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad
안녕하세요 SHA-256 2c68318e352971113645cbc72861e1ec23f48d5baa5f9b405fed9dddca893eb4

These are standard test vectors or values cross-checked against Node.js’s crypto module.

FAQ

Why does my hash differ from another site for the same non-English text?

Because the text is turned into bytes differently. This tool hashes UTF-8 bytes, so the MD5 of 안녕하세요 is 209bebae3eb7363d9b080a66f9e306ef. A tool that uses UTF-16 or a legacy encoding will give another value.

Is my file uploaded?

No. The file is read straight into browser memory and hashed there. Because it is loaded into memory, files over 200 MB are not supported.

Can I store passwords as MD5 or SHA-256 hashes?

Not safely. These functions are designed to be fast, which makes brute-forcing cheap. Use a deliberately slow password hash such as bcrypt, scrypt or Argon2.

Are MD5 and SHA-1 still usable?

For spotting accidental corruption, yes. For anything security related, no, because practical collision attacks are known for both.

Missing a tool?