Skip to main content

A bilinear pairing library for petlib.

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bplib-0.0.3.tar.gz (39.1 kB view details)

Uploaded Source

Built Distributions

bplib-0.0.3-py3.5-linux-x86_64.egg (215.3 kB view details)

Uploaded Source

bplib-0.0.3-py2.7-linux-x86_64.egg (218.3 kB view details)

Uploaded Source

File details

Details for the file bplib-0.0.3.tar.gz.

File metadata

  • Download URL: bplib-0.0.3.tar.gz
  • Upload date:
  • Size: 39.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for bplib-0.0.3.tar.gz
Algorithm Hash digest
SHA256 e92ceb21c8173cd1a9951343b84781b6a075f45a43e3cb490c262b038e0c0e06
MD5 367d28c996858d10847d6868d6abd768
BLAKE2b-256 3d1b25b9f3e83a9a14e4be41250987705ee95b8f69322b75a95845e4c2e77708

See more details on using hashes here.

File details

Details for the file bplib-0.0.3-py3.5-linux-x86_64.egg.

File metadata

  • Download URL: bplib-0.0.3-py3.5-linux-x86_64.egg
  • Upload date:
  • Size: 215.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.5.2

File hashes

Hashes for bplib-0.0.3-py3.5-linux-x86_64.egg
Algorithm Hash digest
SHA256 411ffe809f94f44e81a78d995be50eac8c9be6e6b4b26f4438abf9a0347fca10
MD5 6b208e1b502ef78ffc4063aa039236f0
BLAKE2b-256 dc2cc6800a6308456f02f0c72e642b83cfbbf1db2971be4d4f53e476278ca404

See more details on using hashes here.

File details

Details for the file bplib-0.0.3-py2.7-linux-x86_64.egg.

File metadata

  • Download URL: bplib-0.0.3-py2.7-linux-x86_64.egg
  • Upload date:
  • Size: 218.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.5.2

File hashes

Hashes for bplib-0.0.3-py2.7-linux-x86_64.egg
Algorithm Hash digest
SHA256 6721ad1bc7dbf9aecb7534fb8531783d43ea0e674bf286a0c6f3166667b75770
MD5 5b4849338ce9d1d124f9ffd2b49f4ca0
BLAKE2b-256 3606f12ec31424d1215751016ae690db6e25856e5a96cf391a152d7397c8768a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page