{"categories":[{"label":"Cryptography","url":"https://skillfed.io/packages/category/security-cryptography/2"}],"enrichment":{"capability":"Python bindings for BLS12-381 elliptic curve cryptography operations, enabling G1/G2 point arithmetic, pairing, serialization, and scalar operations via Rust's arkworks library.","skillfed_tags":["elliptic-curves","bls12-381","cryptography"],"use_cases":["Generate EIP4844 test vectors for Ethereum consensus layer specifications.","Implement BLS signature schemes or threshold cryptography in Python applications.","Perform elliptic curve pairing checks and bilinear map operations for zero-knowledge proofs.","Serialize and deserialize BLS12-381 curve points in cryptographic protocols.","Hash arbitrary data to elliptic curve points using map-to-curve functions."],"what_it_does":"py_arkworks_bls12381 wraps the Rust arkworks algebra library to provide Python access to BLS12-381 elliptic curve operations. It exposes G1 and G2 point types with arithmetic (addition, subtraction, scalar multiplication), identity and generator elements, subgroup checks, and multi-scalar multiplication. The library also supports point serialization in compressed and uncompressed formats with both big-endian and little-endian byte order variants, plus unchecked variants that skip subgroup validation for trusted inputs.\n\nThe package includes pairing operations\u2014both single and multi-pairing with optimized final exponentiation\u2014and pairing checks for cryptographic proofs. It provides map-to-curve functions for hashing to G1 and G2 using SWU mapping with cofactor clearing. Scalar types support arithmetic, division, exponentiation, and inversion. The primary use case is generating test vectors for EIP4844 in Ethereum consensus-specs, though the generic design supports other BLS12-381 applications.","worth_installing":"Yes, if you need BLS12-381 operations in Python and are targeting Python 3.11+. The package is actively maintained, has no known vulnerabilities, and offers comprehensive curve operations with good platform coverage via prebuilt wheels. Install friction is moderate but manageable; the dual MIT/Apache-2.0 license is permissive. Verify suitability for your specific cryptographic use case beyond EIP4844 test generation."},"id":"py-arkworks-bls12381","links":{"html":"https://skillfed.io/packages/py-arkworks-bls12381","md":"https://skillfed.io/packages/py-arkworks-bls12381.md","pypi":"https://pypi.org/project/py-arkworks-bls12381/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-06-23","license_spdx":"MIT OR Apache-2.0","license_treatment":"permissive","name":"py_arkworks_bls12381","python_support":"supports_current","summary":"Python bindings for BLS12-381 curve operations using arkworks"},"popularity":{"monthly_downloads":85839,"position":13896,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.5.0"}
