CRC Calculator

Calculate CRC-8, CRC-16, and CRC-32 checksums for any text string and see the result in hexadecimal, decimal, and binary.

Share this calculator

Algorithm

Input is UTF-8 encoded before computing the checksum.

CRC-32 result

Hexadecimal

0xEC4AC3D0

Decimal

3964322768

Binary

11101100010010101100001111010000

Input length: 13 bytes

Also in Hash & Checksum Tools

Error Detection

CRC-8, CRC-16, and CRC-32 checksum calculation for data integrity

A CRC calculator computes a short fixed-size value from an input string using cyclic redundancy check algorithms. CRC checksums are used in network protocols, storage media, and file formats to detect accidental data corruption without storing the full original content.

How cyclic redundancy check works

A CRC algorithm divides the input data by a fixed polynomial and uses the remainder as the checksum. Although the division is done in binary (using XOR instead of subtraction), the process is deterministic — the same input always produces the same CRC value. If a single bit changes anywhere in the data, the remainder almost always changes too, which is why CRC is effective at detecting transmission errors.

CRC is not a cryptographic hash and is not collision-resistant in a security sense — it is designed for fast error detection, not tamper prevention. For security purposes, SHA-256 or similar algorithms are the appropriate choice.

CRC = remainder of (message × 2^r) ÷ generator polynomial

The message is treated as a binary polynomial and divided by a standard generator polynomial; the remainder is the CRC value.

CRC-8, CRC-16, and CRC-32 compared

The number in the CRC variant name is the width of the output in bits. CRC-8 produces an 8-bit (1-byte) result, CRC-16 a 16-bit result, and CRC-32 a 32-bit (4-byte) result. Wider outputs can detect more error patterns and reduce false-positive collision probability, at the cost of slightly more computation.

CRC-32 (ISO 3309 polynomial) is the most widely used variant. It appears in Ethernet frames, ZIP archives, PNG images, and many other formats. CRC-16 is common in industrial protocols and storage formats. CRC-8 appears in single-wire serial protocols and embedded sensor buses.

  • CRC-8 (SMBUS): 256 possible values, detects all single-bit errors in short messages.
  • CRC-16/IBM: 65 536 possible values, used in USB, Bluetooth, and Modbus.
  • CRC-32 (ISO 3309): 4 294 967 296 possible values, used in Ethernet, ZIP, PNG, and ext4.

Frequently asked questions

What is the difference between a CRC and a hash?

CRC algorithms are designed to detect accidental data corruption quickly and with low computational cost. Cryptographic hashes (SHA-256, SHA-512) are designed to be collision-resistant and one-way, making them suitable for security use. A CRC is not a substitute for a cryptographic hash in any security context.

Why does the same file produce a different CRC on different systems?

CRC variants use different generator polynomials, initial values, and output transformations. CRC-32 with the Ethernet polynomial will give a different result than CRC-32C (Castagnoli). Always confirm which specific variant is expected when verifying a published CRC value.

Can CRC detect all errors?

CRC detects most single-bit, double-bit, and burst errors within the protection frame. It does not guarantee detection of all multi-bit patterns and is not designed to prevent intentional modification. For longer messages or security-sensitive use, use a cryptographic hash instead.

Related

More from nearby categories

These related calculators come from the same leaf category, nearby sibling categories, or the same top-level topic.