Skip to main content

The bplib is a library implementing support for computations on groups supporting bilinear pairings, as used in modern cryptography.

It is based on the OpenPairing library by Diego Aranha (https://github.com/dfaranha/OpenPairing), which is itself based on, and compatible with, OpenSSL math functions (bn and ec). The bplib is compatible with petlib types including petlib.bn and the group G1 is a petlib.ec EC group. Along with petlib, they provide easy to use support for maths and ciphers used in modern Privacy Enhancing Technologies.”

A set of bilinear EC groups is defined as:

>>> G = bp.BpGroup()

Such a BpGroup describes 3 groups G1, G2 and GT such that pair(G1,G2)->GT. Generators for the groups G1 and G2 are denoted by:

>>> g1, g2 = G.gen1(), G.gen2()

The special pair operation computes to pairing into GT:

>>> gt = G.pair(g1, g2)

Operations are defined on all elements of G1, G2 or GT in a natural additive infix notation for G1 and G2, and a multiplicative notation for GT:

>>> gt6 = gt**6

As expected the pair operations is additive:

>>> G.pair(g1, 6*g2) == gt6
True
>>> G.pair(6*g1, g2) == gt6
True
>>> G.pair(2*g1, 3*g2) == gt6
True

Metadata

Release files for bplib 0.0.6

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

Source distribution (sdist)

Source distribution for bplib 0.0.6
File Size Uploaded
bplib-0.0.6.tar.gz 40.7 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for bplib 0.0.6
File Interpreter ABI Platform
bplib-0.0.6-py3.6-linux-x86_64.egg Legacy Egg format - - Details
bplib-0.0.6-py2.7-linux-x86_64.egg Legacy Egg format - - Details

Total release size: 490.7 kB

Release files / bplib-0.0.6.tar.gz

Download URL bplib-0.0.6.tar.gz
Size 40.7 kB
Tags Source
SHA-256 checksum
How to use checksums
040deb52c4c5b194dcdba4c94150b9976622ca68e1d1296f17237e9d37071936
BLAKE2b-256 checksum
How to use checksums
20f29687045ddc885ee3a14075a1b7f2a8220fa922a80ae3ad567983f179b016
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.6.7

Release files / bplib-0.0.6-py3.6-linux-x86_64.egg

Download URL bplib-0.0.6-py3.6-linux-x86_64.egg
Size 222.8 kB
Tags Egg
SHA-256 checksum
How to use checksums
89775bece3eb7beba9e42f2c4fc2975e988956def54a162f40f6acd4a415a862
BLAKE2b-256 checksum
How to use checksums
63900a6bcb9cbdbf648063fc824651f80690b372e1ab7b05c034ef6b59ab65ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.6.7

Release files / bplib-0.0.6-py2.7-linux-x86_64.egg

Download URL bplib-0.0.6-py2.7-linux-x86_64.egg
Size 227.2 kB
Tags Egg
SHA-256 checksum
How to use checksums
bb1a326377f6a7ecf0ac2a7b942a66cf728d8f04f1097f5c01a2635eb9b1ed8a
BLAKE2b-256 checksum
How to use checksums
0ede8aa8fece59a0486867f37b52019939831854303aea710b60e4c53c2827f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.6.7

Release history Release notifications | RSS feed

This release

0.0.6 This release

3 release files

0.0.5

3 release files

0.0.4

1 release file

0.0.3

3 release files

0.0.2

3 release files

0.0.1

1 release file

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