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.2.tar.gz (39.1 kB view details)

Uploaded Source

Built Distributions

bplib-0.0.2-py3.5-linux-x86_64.egg (213.4 kB view details)

Uploaded Source

bplib-0.0.2-py2.7-linux-x86_64.egg (216.4 kB view details)

Uploaded Source

File details

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

File metadata

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

File hashes

Hashes for bplib-0.0.2.tar.gz
Algorithm Hash digest
SHA256 d74cd65505df159d8bf15ae24737c472c61fa98a47c58e1a0497f208e14c9101
MD5 158adbb318e437235b8c5cc476dc7b97
BLAKE2b-256 079d83f726c4945a6c0bed93ccabedc59f61de19535c0274b0dd4b3722904cb8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: bplib-0.0.2-py3.5-linux-x86_64.egg
  • Upload date:
  • Size: 213.4 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.2-py3.5-linux-x86_64.egg
Algorithm Hash digest
SHA256 18eebe71c08a087a68084a1c765e9a569b4df65633c98cd414527435dbca1b41
MD5 1738187584f494905ae19dc02d711de0
BLAKE2b-256 80df0847adabbee5fc4a9be002aedbfcef6d3475fa2352783e3510778ac28d56

See more details on using hashes here.

File details

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

File metadata

  • Download URL: bplib-0.0.2-py2.7-linux-x86_64.egg
  • Upload date:
  • Size: 216.4 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.2-py2.7-linux-x86_64.egg
Algorithm Hash digest
SHA256 3366ba639c30e5ebca77e809c8d27a222fbf194191b940c867abd726b7bc68c6
MD5 5d5c96757ce3577174ca19b49ae24f1a
BLAKE2b-256 a91a12b6e8d11e95228f9ea931d8ed020720fe71d94d65fa14e7ea1a5438944d

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