Guides / CRC32

CRC32 Checksum

Fast Error Detection for Files and Data Streams

Important

CRC32 is not a cryptographic hash. It is designed for accidental error detection, not for security or tamper resistance.

What is CRC32?

CRC32 is a 32-bit cyclic redundancy check used to detect accidental data corruption. It is common in ZIP archives, network protocols, and storage formats where speed is important.

How It Works

CRC32 treats input bytes as a polynomial over GF(2) and performs polynomial division by a generator polynomial. The remainder is the checksum.

Key Properties

  • Output size: 32 bits (8 hex characters)
  • Primary goal: Detect random transmission/storage errors
  • Performance: Very fast in software and hardware
  • Custom polynomial: Supported in this app for compatibility scenarios

When to Use CRC32

  • File integrity checks for accidental corruption
  • Protocol-level validation
  • Compatibility with tools/formats that already use CRC32

When Not to Use CRC32

  • Security validation against malicious changes
  • Password hashing or digital signatures
  • Any cryptographic integrity requirement

Try CRC32

Try CRC32 Calculator

Key Takeaways

  • CRC32 is for accidental error detection, not security
  • Default output is 32 bits (8 hexadecimal characters)
  • Use custom polynomials only when compatibility requires it
💡 Have any idea?