fastcrc
A hyper-fast Python module for computing CRC(8, 16, 32, 64) checksum
Decision gist · record as of 2026-08-14
Yes. fastcrc is actively maintained, carries no security vulnerabilities, has zero runtime dependencies, and offers permissive MIT licensing. Medium install friction is acceptable given pre-built wheels for common platforms. Install it if you need CRC checksums and want compiled-speed performance; skip it if you only need Python's built-in hashlib.crc32 or can tolerate pure-Python performance.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.7 or later; pre-compiled wheels available for common platforms, but installation on unsupported architectures may require a Rust toolchain.
- Medium install friction due to compiled wheels; however, wheels are pre-built for many platforms (x86_64, aarch64, armv7l, ppc64le, s390x, i686, riscv64, and Windows/macOS variants).
- Active maintenance with a recent release 100 days ago.
License · maintenance · safety
permissive license (permissive) — Licensed under MIT (permissive), allowing use in commercial and proprietary projects with minimal restrictions.
last release 2026-05-06 (100 days) · last repo commit 2026-07-20 · 29 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 949,773 downloads/mo, #4,659 on PyPI
Alternatives
Verify before relying
pip install fastcrc
from fastcrc import crc8, crc16, crc32, crc64
data = b"123456789"
print(crc8.cdma2000(data))
print(crc16.xmodem(data))
print(crc32.aixm(data))
print(crc64.ecma_182(data))- Performance comparison with Python's built-in hashlib.crc32 or other pure-Python CRC libraries to validate 'hyper-fast' claim.
- Which specific CRC algorithms and variants are supported beyond the examples shown (cdma2000, xmodem, aixm, ecma_182).
- Whether incremental/streaming CRC computation is supported (as suggested by the chained xmodem example).
What it is and what it does
fastcrc is a Python module that wraps Rust-based CRC computation to provide fast checksum calculations for 8, 16, 32, and 64-bit CRC variants. It exposes multiple algorithm implementations (such as cdma2000 for CRC-8, xmodem for CRC-16, aixm for CRC-32, and ecma_182 for CRC-64) as importable functions that accept byte data and return computed checksums. The module has no runtime dependencies and is distributed as pre-compiled wheels for most common platforms.
Typical use cases include data integrity verification, network protocol implementations, and embedded systems communication where CRC checksums are required. The package is actively maintained, supports Python 3.7 and later, and carries permissive MIT licensing.
Use it for
- Verify data integrity in file transfers or network protocols that mandate specific CRC algorithms.
- Implement embedded systems communication (e.g., industrial protocols, automotive diagnostics) requiring CRC-8, CRC-16, or CRC-32 checksums.
- Compute checksums for firmware or binary payloads in IoT or edge computing applications.
- Validate data in storage systems or databases that use CRC for corruption detection.
- Build incremental checksum validation by chaining CRC computations across data chunks.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
fastcrc is actively maintained, carries no security vulnerabilities, has zero runtime dependencies, and offers permissive MIT licensing. Medium install friction is acceptable given pre-built wheels for common platforms. Install it if you need CRC checksums and want compiled-speed performance; skip it if you only need Python's built-in hashlib.crc32 or can tolerate pure-Python performance.
Install
fastcrc on PyPI
Before you install
Medium install friction due to compiled wheels; however, wheels are pre-built for many platforms (x86_64, aarch64, armv7l, ppc64le, s390x, i686, riscv64, and Windows/macOS variants). Active maintenance with a recent release 100 days ago.
Requires Python 3.7 or later; pre-compiled wheels available for common platforms, but installation on unsupported architectures may require a Rust toolchain.
License in practice
Licensed under MIT (permissive), allowing use in commercial and proprietary projects with minimal restrictions.
Quickstart
pip install fastcrc
from fastcrc import crc8, crc16, crc32, crc64
data = b"123456789"
print(crc8.cdma2000(data))
print(crc16.xmodem(data))
print(crc32.aixm(data))
print(crc64.ecma_182(data))
Verify before relying
- Performance comparison with Python's built-in hashlib.crc32 or other pure-Python CRC libraries to validate 'hyper-fast' claim.
- Which specific CRC algorithms and variants are supported beyond the examples shown (cdma2000, xmodem, aixm, ecma_182).
- Whether incremental/streaming CRC computation is supported (as suggested by the chained xmodem example).
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=3.7 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 100 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 949,773 / month, #4,659 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyProgramming Language :: RustTopic :: Software Development :: Libraries :: Python ModulesTyping :: Typed |
Evidence: fastcrc-0.3.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; fastcrc-0.3.6-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; fastcrc-0.3.6-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; fastcrc-0.3.6-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl; fastcrc-0.3.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; fastcrc-0.3.6-cp310-cp310-manylinux_2_31_riscv64.whl; fastcrc-0.3.6-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl; fastcrc-0.3.6-cp310-cp310-musllinux_1_2_aarch64.whl; fastcrc-0.3.6-cp310-cp310-musllinux_1_2_armv7l.whl; fastcrc-0.3.6-cp310-cp310-musllinux_1_2_i686.whl; fastcrc-0.3.6-cp310-cp310-musllinux_1_2_x86_64.whl; fastcrc-0.3.6-cp310-cp310-win_amd64.whl; fastcrc-0.3.6-cp311-cp311-macosx_10_12_x86_64.whl; fastcrc-0.3.6-cp311-cp311-macosx_11_0_arm64.whl; fastcrc-0.3.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; fastcrc-0.3.6-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; fastcrc-0.3.6-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; fastcrc-0.3.6-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl; fastcrc-0.3.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; fastcrc-0.3.6-cp311-cp311-manylinux_2_31_riscv64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “crc algorithm library”
- fastcrcfastcrc computes CRC checksums (8, 16, 32, and 64-bit variants) using…
- crcengineCrcEngine provides table-based and bit-bashing CRC calculation with…
- anycrcCalculates CRC hashes of arbitrary bit widths (up to 64 bits) with…
Give your agent the search over MCP, or paste the wish link into any chat.
More Python Modules packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.
Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.
Provides reusable metadata objects for use with PEP-593 `typing.Annotated` to express common constraints like bounds, collection sizes, and predicates on types.
Install it if you use or build libraries that need to express type constraints in a standardized, inspectable way—or if you want to annotate your own types with…
Provides runtime tools to inspect and introspect Python type annotations, enabling programmatic examination of type hints at execution time.
See also crc · crcmod · libscrc · anycrc · crccheck · crc32c · crcengine · filehash · google-crc32c