crccheck library

1.3.1 · active · verified Sat Apr 11

crccheck is a Python library (currently v1.3.1) for calculating various Cyclic Redundancy Checks (CRCs) and checksums from binary data. It includes over 170 CRC algorithms and simple additive/XOR checksums. The library maintains an active, though somewhat irregular, release schedule, with recent updates adding new CRC algorithms.

Warnings

Install

Imports

Quickstart

Demonstrates how to perform a quick CRC calculation on a single data block and how to process multiple data blocks sequentially. Input data should be in bytes or bytearray format.

from crccheck.crc import Crc32

data_bytes = bytearray.fromhex("DEADBEEF01020304")

# Quick calculation for a single data block
calculated_crc = Crc32.calc(data_bytes)
print(f"CRC-32 for {data_bytes.hex()}: {calculated_crc:08X}")

# Calculation over multiple data blocks
multi_block_data1 = b"Hello"
multi_block_data2 = b"World"

crc_instance = Crc32()
crc_instance.process(multi_block_data1)
crc_instance.process(multi_block_data2)
final_crc = crc_instance.final()
print(f"CRC-32 for multiple blocks: {final_crc:08X}")

view raw JSON →