ckzg
Python bindings for C-KZG-4844
Decision gist · record as of 2026-08-14
Yes, if you are building Ethereum client software or infrastructure that must validate EIP-4844 or EIP-7594 commitments. The package is actively maintained, audited, has no known vulnerabilities, and avoids the need to reimplement cryptographic functions. Install friction is moderate due to compiled wheels; ensure the trusted setup file is available at runtime.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires the trusted setup file (trusted_setup.txt) to be available at runtime; precompute parameter affects memory usage and performance trade-offs.
- Medium install friction due to compiled wheel distribution across multiple platforms (cp310–cp312, manylinux, musllinux, macOS arm64, Windows).
- Active maintenance with recent release 36 days ago and ongoing repository activity.
License · maintenance · safety
Apache-2.0 (permissive) — Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions; suitable for most production and research contexts.
last release 2026-07-09 (36 days) · last repo commit 2026-08-11 · 174 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 6,353,243 downloads/mo, #1,923 on PyPI
Alternatives
Verify before relying
pip install ckzg
import ckzg
# Load trusted setup once during initialization
ckzg.load_trusted_setup_file('trusted_setup.txt', precompute=0)
# Verify a blob KZG proof
ckzg.verify_blob_kzg_proof(blob, commitment, proof)- Whether the package includes or downloads the trusted setup file automatically, or if users must provide it separately.
- Exact Python version support range (requires_python is unspecified in metadata).
- Performance characteristics on systems other than Apple M1 referenced in benchmarks.
What it is and what it does
ckzg is a Python binding to C-KZG-4844, a minimal C implementation of the Polynomial Commitments API specified in Ethereum's EIP-4844 (Deneb) and EIP-7594 (Fulu) consensus specifications. It exposes cryptographic functions for KZG commitments, proofs, and verification operations used by Ethereum clients to validate blob data without re-implementing critical cryptographic primitives.
The library is designed for use within Ethereum infrastructure and provides functions like blob-to-commitment conversion, proof computation, and batch verification. It relies on blst for BLS12-381 signature operations and has been audited by Sigma Prime (2023) for EIP-4844 and zkSecurity (2025) for EIP-7594. Single-threaded by design for simplicity; batch verification functions offer efficiency gains when processing multiple blobs.
Use it for
- Ethereum client implementations validating EIP-4844 blob commitments and proofs during consensus.
- Ethereum node software implementing EIP-7594 data availability sampling with cell KZG proof verification.
- Research and testing of Ethereum consensus specifications against reference test vectors.
- Building Ethereum infrastructure tools that need to verify blob data authenticity without reimplementing KZG.
- Batch processing of multiple blob proofs where performance is critical (53% faster per blob in batch mode).
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are building Ethereum client software or infrastructure that must validate EIP-4844 or EIP-7594 commitments.
The package is actively maintained, audited, has no known vulnerabilities, and avoids the need to reimplement cryptographic functions. Install friction is moderate due to compiled wheels; ensure the trusted setup file is available at runtime.
Install
ckzg on PyPI
Before you install
Medium install friction due to compiled wheel distribution across multiple platforms (cp310–cp312, manylinux, musllinux, macOS arm64, Windows). Active maintenance with recent release 36 days ago and ongoing repository activity.
Requires the trusted setup file (trusted_setup.txt) to be available at runtime; precompute parameter affects memory usage and performance trade-offs.
License in practice
Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions; suitable for most production and research contexts.
Quickstart
pip install ckzg
import ckzg
# Load trusted setup once during initialization
ckzg.load_trusted_setup_file('trusted_setup.txt', precompute=0)
# Verify a blob KZG proof
ckzg.verify_blob_kzg_proof(blob, commitment, proof)
Verify before relying
- Whether the package includes or downloads the trusted setup file automatically, or if users must provide it separately.
- Exact Python version support range (requires_python is unspecified in metadata).
- Performance characteristics on systems other than Apple M1 referenced in benchmarks.
Package facts
| License | Apache-2.0 permissive |
| Python support | Not specified |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 36 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 6,353,243 / month, #1,923 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
Evidence: ckzg-2.1.8-cp310-cp310-macosx_11_0_arm64.whl; ckzg-2.1.8-cp310-cp310-manylinux2010_i686.manylinux_2_12_i686.manylinux_2_28_i686.whl; ckzg-2.1.8-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; ckzg-2.1.8-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; ckzg-2.1.8-cp310-cp310-musllinux_1_2_aarch64.whl; ckzg-2.1.8-cp310-cp310-musllinux_1_2_i686.whl; ckzg-2.1.8-cp310-cp310-musllinux_1_2_x86_64.whl; ckzg-2.1.8-cp310-cp310-win_amd64.whl; ckzg-2.1.8-cp311-cp311-macosx_11_0_arm64.whl; ckzg-2.1.8-cp311-cp311-manylinux2010_i686.manylinux_2_12_i686.manylinux_2_28_i686.whl; ckzg-2.1.8-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; ckzg-2.1.8-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; ckzg-2.1.8-cp311-cp311-musllinux_1_2_aarch64.whl; ckzg-2.1.8-cp311-cp311-musllinux_1_2_i686.whl; ckzg-2.1.8-cp311-cp311-musllinux_1_2_x86_64.whl; ckzg-2.1.8-cp311-cp311-win_amd64.whl; ckzg-2.1.8-cp312-cp312-macosx_11_0_arm64.whl; ckzg-2.1.8-cp312-cp312-manylinux2010_i686.manylinux_2_12_i686.manylinux_2_28_i686.whl; ckzg-2.1.8-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; ckzg-2.1.8-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_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 › “kzg polynomial commitments”
- ckzgProvides Python bindings to C-KZG-4844, a cryptographic library…
- bittensor-drandProvides timelock encryption for Bittensor commit-reveal weight…
- passagemath-homflyProvides a Python interface to libhomfly for computing Homfly…
Give your agent the search over MCP, or paste the wish link into any chat.
More Cryptography packages
Certifi provides Mozilla's curated collection of root SSL certificates for Python applications to validate TLS hosts and verify certificate trustworthiness.
cryptography provides cryptographic recipes and low-level primitives for symmetric encryption, message digests, key derivation, and other common cryptographic algorithms in Python.
Pure-Python RSA encryption, decryption, signing, and key generation following PKCS#1 v1.5, with command-line and library interfaces.
pyOpenSSL wraps OpenSSL's SSL/TLS functionality for Python, providing high-level connection objects and certificate handling through a Python-friendly interface around OpenSSL's cryptographic operations.
Provides Microsoft Entra ID token-based authentication for Azure SDK clients through a set of TokenCredential implementations that handle OAuth flows and managed identity support.
PyNaCl provides Python bindings to libsodium for digital signatures, secret-key and public-key encryption, hashing, message authentication, and password-based key derivation.
See also securesystemslib · PyKMIP · py-ecc · siwe · opentimestamps · coincurve · cryptg · lightecc · pyDes · ziglang