CRC (Cyclic Redundancy Check) Library

7.1.0 · active · verified Sun Apr 12

The `crc` library provides pure Python implementations for calculating, verifying, and configuring Cyclic Redundancy Check (CRC) checksums. It supports various predefined CRC configurations (e.g., CRC8, CRC16, CRC32, CRC64) and allows for custom configurations. Currently at version 7.1.0, the library is actively maintained with regular releases, often including new CRC configurations and bug fixes, and requires Python >=3.8 and <4.0.

Warnings

Install

Imports

Quickstart

Calculates the CRC-8 CCITT checksum for a sample byte sequence and verifies it. This demonstrates the basic usage of a predefined CRC configuration.

from crc import Calculator, Crc8

data = bytes([0, 1, 2, 3, 4, 5])

# Create a calculator with a predefined configuration (e.g., CRC-8 CCITT)
calculator = Calculator(Crc8.CCITT)

# Calculate the checksum
checksum = calculator.checksum(data)
print(f"CRC-8 CCITT checksum: {checksum:#04x}")

# Verify the checksum
assert calculator.verify(data, 0xBC)
print("Checksum verified successfully!")

view raw JSON →