Use the free CRC32 Checksum Calculator below: your data never leaves your browser — all work happens on your device, and nothing is uploaded to any server.
CRC32: the fingerprint that catches accidents
Every ZIP file you have ever opened contains CRC32 checksums. So does every PNG image. When a program reads a file and the checksum does not match, it knows the data was damaged somewhere along the way: a bad download, a failing disk, a corrupted transfer. CRC32 is the workhorse behind that check. It takes any data, of any length, and squeezes it down to a single 32-bit number, usually written as eight hex digits. Change one byte of the data and the number changes, almost always.
The key word is “almost”. CRC32 is designed to catch accidents, not attacks. It detects burst errors, single-bit flips and most random corruption with very high reliability. But it is not a cryptographic hash. Anyone can compute the CRC32 of any data, and an attacker who wants to tamper with a file can simply recompute the checksum after changing it. If you need to detect deliberate tampering, use a cryptographic hash or an HMAC, not CRC32.
How the table algorithm works
CRC32 processes data one byte at a time using a precomputed table of 256 values. It starts with all bits set, then for each byte it looks up a table entry based on the current checksum mixed with that byte, shifts, and combines. At the end it flips all the bits once more. The table is generated from a polynomial, the number 0xEDB88320, which is the reversed form of the standard CRC32 polynomial. The result is deterministic: the same input always gives the same checksum, on every platform, in every implementation that follows the standard.
That standard behavior is why the check value for the string “123456789” is famous: 0xCBF43926. Every correct CRC32 implementation in the world produces that value for that input, and it is the first test any implementation is checked against. This tool passes that test, and you can verify it yourself by typing “123456789” into the text box. The empty input gives 0x00000000, which is the other standard check.
Where CRC32 shows up
ZIP archives store a CRC32 for every file inside, so your unzip program can verify each file as it extracts it. PNG images store a CRC32 for every chunk, so a viewer can reject a damaged image instead of displaying garbage. Ethernet frames and many storage systems use CRC variants to catch transmission errors. The reason is speed: CRC32 is extremely fast, even on tiny hardware, because the table lookup replaces most of the arithmetic.
Programmers also use CRC32 as a quick hash for hash tables and for deduplication checks, though it is not ideal there because its 32-bit output means collisions become likely once you have tens of thousands of values. The birthday paradox says that with about 77,000 random values, two of them probably share a CRC32. That is fine for error detection, where the question is whether this specific file changed, but it is a real limit for identification.
Checksums, hashes and signatures: what is the difference
People mix these up, so here is the short version. A checksum like CRC32 catches accidental damage and is fast. A cryptographic hash like SHA-256 catches deliberate tampering, because an attacker cannot easily craft different data with the same hash, but it proves nothing about who made the data. A signature like HMAC adds a secret key, so it proves both integrity and origin. Pick the tool that matches your threat: accidents need CRC32, attackers need hashes, and impersonation needs HMAC.
This tool computes CRC32 for text you type and for files you select, entirely in your browser. Files are read locally and never uploaded, which matters if you are checksumming something private. The output shows the hex value, the unsigned decimal value and the signed 32-bit value, because different programs display CRC32 in different formats and comparing values across tools is easier when you can see all three.
Common questions
Why do two tools sometimes show different CRC32 values for the same file? Usually one of them is showing the signed value, or the file differs by a trailing newline. Compare the hex value and check the exact bytes. Can CRC32 detect every error? No, but it detects all single-bit errors, all two-bit errors and all burst errors up to 32 bits, which covers essentially all accidental damage. Is my file uploaded? No. The file is read by your browser and processed locally.

Pingback: JWT Generator HS256 - Create a Signed JWT Online Free