crc32c
A python package implementing the crc32c algorithm in hardware and software
Decision gist · record as of 2026-08-14
Yes. crc32c is actively maintained, has no known vulnerabilities, provides binary wheels for common platforms, and solves a real need for fast CRC32C computation. The LGPL-2.1-or-later license is permissive for most use cases but requires attribution and compliance with copyleft terms if you redistribute. Install friction is moderate but manageable via pre-built wheels.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires a C compiler (gcc/clang on Linux/macOS, Visual Studio on Windows) if installing from source; binary wheels are available for Python 3.7–3.14 on common platforms.
- Medium install friction due to compiled C extensions; binary wheels are provided for major platforms (Linux, macOS, Windows) and architectures, reducing build-from-source cases.
- Active maintenance with recent commits.
License · maintenance · safety
LGPL-2.1-or-later (copyleft) — Licensed under LGPL-2.1-or-later (copyleft). Code incorporates third-party algorithms under BSD and custom licenses; redistribution requires compliance with LGPL terms and attribution to original authors.
last release 2025-10-17 (301 days) · last repo commit 2026-08-10 · 49 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 34,113,164 downloads/mo, #763 on PyPI
Alternatives
Verify before relying
pip install crc32c
import crc32c
print(crc32c.crc32c(b'hello world'))
# 3381945770
# Or use the hashlib-compatible class
hash_obj = crc32c.CRC32CHash()
hash_obj.update(b'hello')
hash_obj.update(b' world')
print(hash_obj.checksum)- Performance improvement magnitude over pure-Python CRC32C implementations in typical workloads.
- Whether the GIL release mode parameter materially improves throughput in multi-threaded scenarios.
What it is and what it does
crc32c is a Python binding to a CRC32C checksum implementation that automatically selects between hardware-accelerated and software-based computation. On Intel CPUs with SSE 4.2 support and ARMv8 CPUs with native CRC32 instructions, it uses the CPU's native capability; on unsupported hardware, it falls back to a slice-by-8 software algorithm. The package exposes a simple function `crc32c(data, value=0, gil_release_mode=-1)` for one-shot checksums and a `CRC32CHash` class modeled on hashlib's hash objects for incremental updates.
It is commonly used in storage systems, data integrity checks, and applications that need fast, portable CRC32C computation. The hardware acceleration path makes it substantially faster than pure-Python implementations on capable CPUs. The package supports Python 3.7 through 3.14 and is actively maintained; binary wheels eliminate most build friction on standard platforms.
Use it for
- Verify data integrity in distributed storage systems or cloud services that use CRC32C as a checksum standard.
- Compute checksums incrementally for large files or streaming data using the CRC32CHash class.
- Benchmark or profile checksum performance in applications where CRC32C is a bottleneck.
- Integrate CRC32C checksums into custom serialization or replication protocols.
- Replace or supplement binascii.crc32 when CRC32C is required by a specification or interop requirement.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
crc32c is actively maintained, has no known vulnerabilities, provides binary wheels for common platforms, and solves a real need for fast CRC32C computation. The LGPL-2.1-or-later license is permissive for most use cases but requires attribution and compliance with copyleft terms if you redistribute. Install friction is moderate but manageable via pre-built wheels.
Install
crc32c on PyPI
Before you install
Medium install friction due to compiled C extensions; binary wheels are provided for major platforms (Linux, macOS, Windows) and architectures, reducing build-from-source cases. Active maintenance with recent commits.
Requires a C compiler (gcc/clang on Linux/macOS, Visual Studio on Windows) if installing from source; binary wheels are available for Python 3.7–3.14 on common platforms.
License in practice
Licensed under LGPL-2.1-or-later (copyleft). Code incorporates third-party algorithms under BSD and custom licenses; redistribution requires compliance with LGPL terms and attribution to original authors.
Quickstart
pip install crc32c
import crc32c
print(crc32c.crc32c(b'hello world'))
# 3381945770
# Or use the hashlib-compatible class
hash_obj = crc32c.CRC32CHash()
hash_obj.update(b'hello')
hash_obj.update(b' world')
print(hash_obj.checksum)
Verify before relying
- Performance improvement magnitude over pure-Python CRC32C implementations in typical workloads.
- Whether the GIL release mode parameter materially improves throughput in multi-threaded scenarios.
Package facts
| License | LGPL-2.1-or-later copyleft |
| Python support | Supports the current Python release >=3.7 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 301 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 34,113,164 / month, #763 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)Operating System :: OS IndependentProgramming Language :: CProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: crc32c-2.8-cp310-cp310-macosx_10_9_universal2.whl; crc32c-2.8-cp310-cp310-macosx_10_9_x86_64.whl; crc32c-2.8-cp310-cp310-macosx_11_0_arm64.whl; crc32c-2.8-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl; crc32c-2.8-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; crc32c-2.8-cp310-cp310-musllinux_1_2_aarch64.whl; crc32c-2.8-cp310-cp310-musllinux_1_2_x86_64.whl; crc32c-2.8-cp310-cp310-win32.whl; crc32c-2.8-cp310-cp310-win_amd64.whl; crc32c-2.8-cp311-cp311-macosx_10_9_universal2.whl; crc32c-2.8-cp311-cp311-macosx_10_9_x86_64.whl; crc32c-2.8-cp311-cp311-macosx_11_0_arm64.whl; crc32c-2.8-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl; crc32c-2.8-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; crc32c-2.8-cp311-cp311-musllinux_1_2_aarch64.whl; crc32c-2.8-cp311-cp311-musllinux_1_2_x86_64.whl; crc32c-2.8-cp311-cp311-win32.whl; crc32c-2.8-cp311-cp311-win_amd64.whl; crc32c-2.8-cp312-cp312-macosx_10_13_universal2.whl; crc32c-2.8-cp312-cp312-macosx_10_13_x86_64.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 › “crc32c checksum”
- crc32cComputes CRC32C checksums using hardware acceleration when available…
- google-crc32cProvides a fast CRC32C checksum computation by wrapping Google's…
- google-resumable-mediaHandles resumable uploads and downloads for Google Cloud Storage and…
Give your agent the search over MCP, or paste the wish link into any chat.
Similar packages
Provides a fast CRC32C checksum computation by wrapping Google's hardware-accelerated C library, with prebuilt wheels for modern Python versions across Linux, macOS, and Windows.
However, the abandoned repository status and undeclared license are red flags for long-term use—verify license compatibility and consider whether you can tolerate no…
fastcrc computes CRC checksums (8, 16, 32, and 64-bit variants) using multiple algorithm implementations, with a focus on speed through Rust-backed computation.
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…
Calculate, verify, and manage CRC checksums using predefined configurations (CRC8, CRC16, CRC32, CRC64) or custom parameters.
Calculates CRC hashes of arbitrary bit widths (up to 64 bits) with support for incremental updates and combining partial CRCs, using either pre-built models or custom parameters.
CrcEngine provides table-based and bit-bashing CRC calculation with support for pre-defined algorithms (CRC8, CRC16, CRC32, CRC64 variants) and custom algorithm creation, plus C code generation for embedded use.
However, maintenance is dormant; use it for non-critical checksums or where you can fork if needed.
Calculates and verifies file checksums and hashes using algorithms like MD5, SHA-1, SHA-2, BLAKE2, CRC32, and Adler-32, with support for single files, multiple files, and entire directories.
See also lpc-checksum · libscrc · crccheck · checksumdir