Skip to content

blievrouw/crc64iso

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CRC64ISO

Package for calculating checksums using 64-bit cyclic redundancy checks (CRC) according to the ISO 3309 standard.

Generator polynomial: x64 + x4 + x3 + x + 1

Reference: W. H. Press, S. A. Teukolsky, W. T. Vetterling, and B. P. Flannery, "Numerical recipes in C", 2nd ed., Cambridge University Press. Pages 896ff.

Requirements

  • python 3.x

Installation

pip install crc64iso

PyPI

Examples

  • Calculate 64-bit checksum from a string:
from crc64iso.crc64iso import crc64

checksum = crc64iso.crc64("ILOVEMATH")
  • Calculate 64-bit checksum from incremental (bytes) data:
from crc64iso.crc64iso import crc64_pair, format_crc64_pair

crc_pair_1 = crc64_pair("ILOVE".encode())
crc_pair_2 = crc64_pair("MATH".encode(), crc_pair_1)
checksum = format_crc64_pair(crc_pair_2)