CRC-32 is a short checksum used in file formats and network protocols to catch accidental corruption. This tool computes it for any text, in hex and decimal, along with the Adler-32 checksum used by zlib. They're fast, but easy to forge on purpose, so they're not for security.
How to use it
- Type or paste your text.
- Read the CRC-32 and Adler-32 values.
- Compare with the value you expect.
- Copy the result.
When it helps
- Checking data integrity in a small test.
- Verifying a checksum from a file-format spec.
- Learning how checksums work.
- Debugging transmission errors.
Good to know
- The test string 123456789 should give cbf43926, a good way to check any CRC-32 implementation.
- The value depends on exact bytes, so text encoding matters.
- For files, use the File Hash Checker.
How CRC works
A cyclic redundancy check treats your data as a long binary number and divides it by a fixed polynomial, keeping the remainder as the checksum. Burst errors, like a few flipped bits in a row, change the remainder, so they're caught reliably.
CRC-32 is the 32-bit version used in ZIP, PNG, Ethernet and many other formats.
Worked example: a known test value
The text 123456789 has a CRC-32 of cbf43926, a standard check value used to test implementations. Enter it and compare. The Adler-32 of the word Wikipedia is 11E60398, another known example.
A single changed character in a longer text will produce a very different CRC.
Checksum versus hash versus signature
A checksum detects accidental errors, a cryptographic hash makes deliberate tampering infeasible to hide, and a signature proves who created the data. Each serves a different purpose, and using the wrong one gives a false sense of safety.
CRC is cheap and ideal for error detection in transmission and storage.
Limits
With only 32 bits, there are about four billion possible values, so two different inputs eventually collide. That's fine for catching random corruption, but not for identifying files uniquely.
Attackers can craft data to produce any CRC they like, so don't use it where adversaries are involved.
Where you meet CRCs
ZIP archives store a CRC-32 for each file, so extraction can detect damage. PNG images use CRC-32 on each chunk. Ethernet frames end with a CRC, and storage systems use them to catch bit rot.
Next time an archive says a CRC error occurred, you now know what it's checking.
Computing a CRC in code
Most languages include a CRC-32 function: zlib.crc32 in Python and Node, java.util.zip.CRC32 in Java, and crc32 in PHP. Comparing your program's output with this tool is a useful way to confirm both agree on the bytes being checked.
Questions
Is CRC32 a hash?
It's a checksum, much simpler than a cryptographic hash.
Can I use it for security?
No. Use SHA-256 for that.