crc — Calcul CRC

Modulul crc calculează sume de control CRC16 și CRC32 peste tampoane (buffers) asemănătoare octeților. Fiecare funcție poate fi apelată doar cu data pentru a începe un nou CRC sau cu o value anterioară pentru a continua un CRC existent de-a lungul mai multor tampoane (buffers).

Exemplu:

import crc

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

Funcții

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

Calculează o sumă de control CRC16 peste data, care trebuie să fie un obiect asemănător unui tampon (buffer) (de ex. bytes, bytearray sau memoryview).

Dacă value nu este furnizată, se începe un nou CRC16 peste data și este returnat. Dacă value este furnizată, este folosită ca stare CRC16 anterioară și actualizată cu data înainte de a fi returnată, permițând calculul CRC16 de-a lungul mai multor tampoane (buffers). Sunt folosiți doar cei mai puțin semnificativi 16 biți ai value.

Returnează CRC16 rezultat ca int.

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

Calculează o sumă de control CRC32 peste data, care trebuie să fie un obiect asemănător unui tampon (buffer) (de ex. bytes, bytearray sau memoryview).

Dacă value nu este furnizată, se începe un nou CRC32 peste data și este returnat. Dacă value este furnizată, este folosită ca stare CRC32 anterioară și actualizată cu data înainte de a fi returnată, permițând calculul CRC32 de-a lungul mai multor tampoane (buffers).

Returnează CRC32 rezultat ca int.