Hash and Checksum Generator
MD5, SHA-1, SHA-2, CRC-32 and HMAC for text and files.
HMAC (keyed hash)
Think a result is wrong? Report it on GitHub
About hashes and checksums
Generate MD5, SHA-1, SHA-256, SHA-512 and CRC-32 hashes and HMACs of text or large files, and check them against an expected value. Free, in your browser.
A hash function turns any amount of data into a short fixed-length value. Changing even one byte of the input changes the result completely, which makes hashes useful for checking that a download arrived intact or that two files are identical.
Which algorithm should I use?
Use SHA-256 or stronger for anything security-related. MD5 and SHA-1 are broken: they can still detect accidental corruption, but an attacker can craft two different files with the same value. CRC-32 is a fast checksum, not a cryptographic hash.
Why does my hash not match?
The usual cause is invisible differences in the input: a trailing line break added when copying from a terminal, Windows (CRLF) versus Unix (LF) line endings, or accented characters stored in a different Unicode form. This tool shows which line endings your text uses, warns about trailing line breaks, and can normalise both.
For example, the SHA-256 of hello begins 2cf24dba, but hello followed by a line break gives a completely different value beginning 5891b5b5. That is what echo hello | sha256sum prints, because echo adds the line break.
Is my file uploaded?
No. Files are read and hashed inside your browser, in chunks, without being sent anywhere.