Skip to main content

petrelic

Build status Documentation Status Test coverage

petrelic is a Python wrapper around RELIC. It provides a simple python interface to the BLS-381 pairing and RELIC’s big number class. Our goals is to make it easy to prototype new cryptographic applications in Python using RELIC as the backend. In the future we aim to support a few other pairing curves as well.

petrelic provides native, multiplicative and additive interfaces to RELIC. You can use the one that you find most comfortable. petrelic overloads Python’s binary operators to make computation with pairings easy. For example, here is how you would compute and verify a BLS signature using the multiplicative interface:

>>> from petrelic.multiplicative.pairing import G1, G2, GT
>>> sk = G1.order().random()
>>> pk = G2.generator() ** sk

>>> # Create the signature
>>> m = b"Some message"
>>> signature = G1.hash_to_point(m) ** sk

>>> # Verify the signature
>>> signature.pair(G2.generator()) == G1.hash_to_point(m).pair(pk)
True

You can find more information in the documentation.

You can install petrelic on Linux using:

$ pip install petrelic

For full details see the installation documentation.

Metadata

Release files for petrelic 0.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for petrelic 0.1.5
File Actions
petrelic-0.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details for petrelic-0.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
petrelic-0.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64 Details for petrelic-0.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
petrelic-0.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details for petrelic-0.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
petrelic-0.1.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ ARM64 Details for petrelic-0.1.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
petrelic-0.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-64 Details for petrelic-0.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
petrelic-0.1.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ ARM64 Details for petrelic-0.1.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
petrelic-0.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64 Details for petrelic-0.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
petrelic-0.1.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ ARM64 Details for petrelic-0.1.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Total release size: 7.8 MB

Release files / petrelic-0.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL petrelic-0.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.0 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
8d30c6474955dd816403495a463383fe81c3d99669bde8c84e472dc877a8c69f
BLAKE2b-256 checksum
How to use checksums
bceb1ae3757fa670f53e0db459c46bc8af2d79c9a909afaf680e197a2e86c2d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2

Release files / petrelic-0.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL petrelic-0.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 962.2 kB
Tags CPython 3.10 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
8a76f8d50a58ed571e03581f4a7641e704047991808ed42a28634ff673299626
BLAKE2b-256 checksum
How to use checksums
88025c75ed083a62577b031f9a9f7c9c3e9bf7a18814c566987e58572011926e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2

Release files / petrelic-0.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL petrelic-0.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 968.7 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
a3fcf2bdccf0b118ed5d77949ffe74eb012bd3d0f393c8583facafa783217232
BLAKE2b-256 checksum
How to use checksums
a9000b48ce5d73fdd8403f2433e34f1d84cd5fd6ab4da98ebf849286b25e5978
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2

Release files / petrelic-0.1.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL petrelic-0.1.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 962.2 kB
Tags CPython 3.9 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
ec210a7ec878a1b0dcc6cdfe6bfb20e2f24200c1206a7c66a429929e4f34270e
BLAKE2b-256 checksum
How to use checksums
651cf4b73c46af54f33b0637278459de3091157842766a6ead6b3ec0362086b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2

Release files / petrelic-0.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL petrelic-0.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.0 MB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
e2f695c95e08c52145b940f1252dcc179238ebc0e21fdb9827b42073b4ecb7eb
BLAKE2b-256 checksum
How to use checksums
1e70a991cf0e96320197b6ab14a88d4e8c9e3967fec47bd5faab58c86914ddf2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2

Release files / petrelic-0.1.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL petrelic-0.1.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 962.3 kB
Tags CPython 3.8 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
c2dde63507d982ca2d90d513dca06b0cef4fdcb5170227ae3463ed37b1180ccd
BLAKE2b-256 checksum
How to use checksums
9d47e96601b30c867a9439fd3d612c1d1b371944cca44224af8eb8bae3b816aa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2

Release files / petrelic-0.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL petrelic-0.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 956.3 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
428b10a8cac21ae5971c8025838b6d54d2df4007183b1d291fbdb816b6caff3c
BLAKE2b-256 checksum
How to use checksums
1b9a7aa0b3c59edb9e646f5e1b32a071ea5ae886fa060ab2f0fd97008da492ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2

Release files / petrelic-0.1.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL petrelic-0.1.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 958.7 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
bd43acba2677770c8aed24ffbd5babbec62f71de88d5e6a5b7f5b6a0ee7375f2
BLAKE2b-256 checksum
How to use checksums
48c8112adf663ff4f2ebd770e2665d3d5e105617b9f9c1a72ca52e133fe40930
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2

Security for petrelic 0.1.5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page