piapia123
en

CRC-32 Checksum Calculator

Encoding

Everything runs locally in your browser — nothing is uploaded

Input
Drop a file here to load its contents
Output

Compute the CRC-32 checksum of any text. CRC is the most common class of error-detecting code — it does not resist tampering (there is no key, anyone can recompute it), but it reliably catches accidental corruption in transit and at rest: network frames, archives, disk sectors and firmware images all use it for integrity checking. One thing to watch: "CRC-32" is not a single algorithm but a family. The same polynomial combined with different initial values, input/output bit reflection and final XOR values produces incompatible checksums whose numbers bear no relation to each other. Six common variants are listed here, each labelled with where it is used. Input is treated as UTF-8 bytes, and results match zlib and other implementations digit for digit.

Features

  • Six variants: IEEE 802.3, Castagnoli (CRC-32C), Koopman, BZIP2, JAMCRC and MPEG-2
  • Output as hexadecimal (upper or lower case) or decimal
  • Non-ASCII text hashed as UTF-8 bytes, matching zlib and other implementations
  • Every variant says where it is used — check what the other system expects before switching
  • Table-driven, so even multi-megabyte input finishes in milliseconds
  • Computed locally; your content never leaves the browser

How to use

  1. Paste your content; the result appears as you type
  2. Pick the variant the other system uses (the default IEEE is what people mean by plain CRC-32)
  3. Switch between hex and decimal, or uppercase, as needed
  4. Click Copy to take the checksum

FAQ

What is the difference between CRC-32, CRC-32C and CRC-32K?
Different polynomials, so the same data yields three entirely different values. CRC-32 (IEEE 802.3) is the common one, used by zip, gzip and PNG. CRC-32C (Castagnoli) is used by iSCSI, SCTP, ext4 and a number of storage systems; its polynomial was chosen for fast hardware implementations. CRC-32K (Koopman) has the strongest error-detection properties of any 32-bit CRC and is used where reliability matters most. Which one you need depends entirely on the system on the other end, not on preference.
Why does my result differ from another online tool?
Nine times out of ten the variant is wrong. Take CRC-32, add the initial value, whether bits are reflected, and the final XOR value, and you can derive six incompatible algorithms that all hand back a plausible-looking eight-digit hexadecimal number. Find out which variant the other side uses — protocol documents usually say, or give a verification value like "input 123456789, output this" — then match the options here. Every variant in this tool is anchored to the CRC catalogue check value.
Can CRC be used as a hash or a signature?
No. CRC is designed to catch accidental errors (line noise, flipped bits), not to resist deliberate modification — it has no key, so anyone can recompute a valid checksum for altered data. Use HMAC or a digital signature for tamper detection. For "did the download complete correctly", CRC or SHA-256 both work, and since SHA-256 is just as cheap, it is the usual choice today.
Why is the checksum not all zeros for empty input?
Because of the initial value. CRC-32 starts at 0xFFFFFFFF, and with empty input that cancels exactly against the final XOR value 0xFFFFFFFF, giving 00000000. CRC-32/MPEG-2 has a final XOR of 0, so empty input yields FFFFFFFF. Those parameters are precisely why variants that all claim to be CRC-32 are mutually incompatible. This tool returns an empty result for empty input rather than showing a checksum — usually it just means nothing has been pasted yet.

Related tools