crc — Calcolo del CRC

Il modulo crc calcola i checksum CRC16 e CRC32 su buffer di tipo byte. Ogni funzione può essere chiamata con il solo data per avviare un nuovo CRC, oppure con un value precedente per continuare un CRC esistente su più buffer.

Esempio:

import crc

c = crc.crc32(b"hello ")
c = crc.crc32(b"world", value=c)
print(hex(c))

Funzioni

crc.crc16(data: bytes, *, value: int = None) int

Calcola un checksum CRC16 su data, che deve essere un oggetto di tipo buffer (ad esempio bytes, bytearray o memoryview).

Se value non viene fornito, viene avviato un nuovo CRC16 su data e restituito. Se value viene fornito, viene utilizzato come stato CRC16 precedente e aggiornato con data prima di essere restituito, consentendo il calcolo del CRC16 su più buffer. Vengono utilizzati solo i 16 bit inferiori di value.

Restituisce il CRC16 risultante come int.

crc.crc32(data: bytes, *, value: int = None) int

Calcola un checksum CRC32 su data, che deve essere un oggetto di tipo buffer (ad esempio bytes, bytearray o memoryview).

Se value non viene fornito, viene avviato un nuovo CRC32 su data e restituito. Se value viene fornito, viene utilizzato come stato CRC32 precedente e aggiornato con data prima di essere restituito, consentendo il calcolo del CRC32 su più buffer.

Restituisce il CRC32 risultante come int.