Random & security tools

Hash generator and checksum checker

Compute the MD5, SHA-1, SHA-256, SHA-384 and SHA-512 hashes of any text or file. Paste the checksum from a download page and the matching hash lights up, so you can confirm the file arrived intact.

MD5 · not secure
SHA-1 · not secure
SHA-256
SHA-384
SHA-512

Runs entirely in your browser. Nothing you enter here is uploaded.

How to check a file's checksum

  1. Choose File and drop the file you downloaded, or choose Text to hash what you type.
  2. All five hashes are calculated. Large files show progress as they are read.
  3. Paste the checksum from the download page into Expected checksum. Capitals and spaces are ignored. If one of the hashes matches, its row turns green and the message says which algorithm it was.
  4. If nothing matches, the file is not the one the publisher released: the download may be incomplete or corrupted, or the file may have been replaced. Download it again from the official source.

What a hash is

A cryptographic hash function turns any amount of data into a short, fixed-length fingerprint. The same input always gives the same hash; changing a single bit changes the hash completely; and for a secure hash it is infeasible to find two different inputs with the same hash or to work backwards from a hash to the input. That is what makes hashes useful for checking downloads: the publisher posts the hash of the real file, you hash what you received, and the two agree only if the file is bit-for-bit identical.

Which algorithm to trust

AlgorithmLengthStatus
MD5128 bits (32 hex digits)broken — collisions can be produced deliberately; fine for spotting accidental corruption only
SHA-1160 bits (40 hex digits)broken — a practical collision was demonstrated in 2017; do not use for security
SHA-256256 bits (64 hex digits)secure; the usual choice for download checksums
SHA-384384 bits (96 hex digits)secure
SHA-512512 bits (128 hex digits)secure

MD5 and SHA-1 are included because many older download pages still publish them, and they still reliably detect an accidentally damaged file. They do not protect against someone who deliberately replaces a file, because attackers can craft different files with the same MD5 or SHA-1 hash. Prefer SHA-256 whenever the publisher offers it.

How it is computed here

The SHA family uses the Web Crypto API built into your browser. MD5 is not part of Web Crypto, so it is implemented on this page following RFC 1321 and verified against the RFC's own test values and against Node.js on 3 MB of random data. Text is converted to bytes as UTF-8 before hashing, so the same Chinese or accented text gives the same hash as command-line tools on a UTF-8 system.

Hashing is not password storage

Fast hashes such as SHA-256 should not be used on their own to store passwords: they are designed to be quick, which also makes guessing quick. Password storage needs a deliberately slow, salted algorithm such as Argon2, bcrypt or scrypt.

Examples

InputAlgorithmHash
empty textMD5d41d8cd98f00b204e9800998ecf8427e
abcMD5900150983cd24fb0d6963f7d28e17f72
abcSHA-1a9993e364706816aba3e25717850c26c9cd0d89d
abcSHA-256ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad

These are the standard test vectors from RFC 1321 and FIPS 180-4, so you can use them to confirm any hashing tool is working. On the command line the equivalents are shasum -a 256 file on macOS and Linux, and certutil -hashfile file SHA256 on Windows.

Limits

  • SHA hashes of files over 512 MB are not calculated. Web Crypto can only hash a whole file at once, which would need the entire file in memory. MD5 is computed in 4 MB pieces and works for files of any size.
  • Text is hashed as UTF-8 with line breaks exactly as typed. A trailing newline changes the hash, which is a common reason two tools disagree on text.
  • No HMAC or keyed hashes, and no SHA-3 or BLAKE family, which Web Crypto does not provide.

Frequently asked questions

How do I verify a download with a checksum?

Hash the downloaded file here and paste the checksum from the publisher's site into Expected checksum. A green row means the file is identical to the one they published.

Is my file uploaded?

No. The file is read and hashed in your browser; this is the only safe way to hash private documents.

Is MD5 still safe?

Not for security. It detects accidental corruption, but attackers can create different files with the same MD5. Use SHA-256 when you can.

Why do two tools give different hashes for the same text?

Usually because of an invisible difference such as a trailing newline, different line endings or a different text encoding.

Can a hash be reversed?

No. A hash is a one-way fingerprint. For short, guessable inputs, attackers can try likely values and compare, which is why passwords need special slow hashing.

Sources and further reading

Guides that use this tool

↵ to open · Esc to close