How to use the CRC32 checksum calculator
- Type or paste your data into Text.
- Choose how to read it with Input is: Text (UTF-8), Hex bytes or Base64 bytes.
- Pick the Polynomial: CRC-32 (zip, PNG, Ethernet) or CRC-32C (iSCSI, ext4).
- Read the 8-digit CRC-32 (hex) value, its Decimal form and the Input size in bytes.
What it does and when to use it
A cyclic redundancy check is a short fingerprint designed to spot transmission and storage errors. It is cheap to compute in hardware, and a 32-bit CRC catches every burst error up to 32 bits long. You will see CRC-32 values inside ZIP archives, gzip trailers, PNG chunks and Ethernet frames, and CRC-32C in disk formats and network storage protocols.
Use this page when you build or debug a file parser, need the CRC of a protocol message, or want to check a value in a spec. For a quick list of many algorithms at once, try hash all. For shorter CRCs used by serial links, see the CRC-16 calculator, and for the simpler checksum inside zlib, the Adler-32 calculator.
How it works
The tool converts your input to bytes and passes them to the hash-wasm library in your browser. Both variants use the reflected (least-significant-bit-first) form described in the CRC catalogue:
| Variant | Polynomial | Initial value | Final XOR | Check value of “123456789” |
|---|---|---|---|---|
| CRC-32 (ISO-HDLC) | 0x04C11DB7 | 0xFFFFFFFF | 0xFFFFFFFF | cbf43926 |
| CRC-32C (iSCSI) | 0x1EDC6F41 | 0xFFFFFFFF | 0xFFFFFFFF | e3069283 |
In plain terms, the data is treated as a long binary number and divided by the polynomial using XOR instead of subtraction. The 32-bit remainder, after the start and end XOR steps, is the checksum. Because the register starts at all ones, leading zero bytes still change the result.
Worked examples
Catalogue check value. 123456789 gives CRC-32 (hex): cbf43926, decimal 3421780262. Every correct CRC-32 implementation must return this.
CRC-32C. The same nine digits with CRC-32C selected give e3069283.
A real PNG chunk. Every PNG file ends with an IEND chunk. Its CRC covers the chunk type and data; IEND has no data, so the input is just the four bytes 49454e44 (“IEND”). With Input is set to Hex bytes, the result is ae426082, decimal 2923585666. Open any PNG in a hex editor and you will see AE 42 60 82 as its last four bytes.
Limits and tips
- Empty input gives
00000000. - The hex output is big-endian. Formats such as ZIP store the CRC little-endian, so the bytes on disk appear reversed.
- Text is encoded as UTF-8. If your system hashes Latin-1 or UTF-16 text, convert it to hex first and use Hex bytes.
Frequently asked questions
Is CRC-32 a hash I can use for security?
What is the difference between CRC-32 and CRC-32C?
Why is my CRC-32 of "123456789" not cbf43926?
Can I check a whole file here?
Sources
- Catalogue of parametrised CRC algorithms, 17 bits and wider — Greg Cook, CRC RevEng, accessed 2026-10-07
- Portable Network Graphics (PNG) Specification — W3C, accessed 2026-10-07
- RFC 3720, iSCSI (CRC32C) — IETF, accessed 2026-10-07
How do we know nothing is uploaded? Test it yourself on the privacy proof page.