# CRC-32 Checksum Calculator (Hash Generator)

## Learn about CRC-32 algorithm and easily calculate CRC-32 checksum of any string

## What is Cyclic Redundancy Check and CRC-32?

A **cyclic redundancy check (CRC)** is an error-detecting code used to detect data corruption. When sending data, short checksum is generated based on data content and sent along with data. When receiving data, checksum is generated again and compared with sent checksum. If the two are equal, then there is no data corruption. The **CRC-32 algorithm** itself **converts a variable-length string into an 8-character string**.

## Frequently Asked Questions

### What is the Length of CRC-32 Output?

Check value has a length of fixed 8 characters and because of that, the function that generates it is occasionally used as a hash function.

### What is the Difference Between CRC-8, CRC-16, CRC-32 and CRC-64?

The selection of the generator polynomial is the most important part of implementing the CRC algorithm. The polynomial must be chosen to maximize the error-detecting capabilities while minimizing overall collision probabilities.

The most important attribute of the polynomial is its length (largest degree(exponent) +1 of any one term in the polynomial), because of its direct influence on the length of the computed check value.

The most commonly used polynomial lengths are:

- 9 bits (CRC-8)
- 17 bits (CRC-16)
- 33 bits (CRC-32)
- 65 bits (CRC-64)

## Resources

CRC Specifications

CRC-32 Source Code