X · Coding theory

Cyclic redundancy check (CRC)

What it is

Treat the message as a binary polynomial; compute its remainder modulo a fixed generator polynomial. Detect any single burst of N consecutive bit errors.

Where it lives

Ethernet frames (CRC-32), TCP segments (with checksums on top), USB, ZIP archives, every DNS message.

The key insight

CRC is for detection only — it cannot correct errors. CRC-32 catches almost all random bit flips and any burst of ≤ 32 consecutive bit errors.