Skip to main content
2025 Python Packaging Survey is now live!  Take the survey now

A module that implements the CRC8 hash algorithm for Python 2 and 3.

Project description

Python Package Version on Pypi Downloads from Pypi

A module that implements the CRC8 hash algorithm for Python 2 and 3.

Installation

pip install crc8

Or copy the crc8.py file somewhere where you can import it.

Usage

The crc8 class has the same interface as the hash functions in the hashlib module.

Example:

import crc8
hash = crc8.crc8()
hash.update(b'123')
assert hash.hexdigest() == 'c0'
assert hash.digest() == b'\xc0'
hash.reset()
assert hash.hexdigest() == '00'

You can also use the method chaining syntax:

import crc8
hash = crc8.crc8()
result = hash.reset().update(b'123').hexdigest()
assert result == 'c0'

Contribute

If something s not there that you would like to have, open an issue, create a pull request.

The license is MIT and I value contributions if you modify the code.

Changelog

  • v0.2.0 - add reset() by henriksod

  • v0.1.0 - add option to select initial polynom by FevGeb

  • v0.0.5 - document license

  • v0.0.4 - choose MIT license

Release

Install twine.

python setup.py sdist
source .env # if you have stored TWINE_USERNAME and TWINE_PASSWORD
twine upload dist/*

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page