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
Raw data
{
"_id": null,
"home_page": "https://pypi.python.org/pypi/bplib/",
"name": "bplib-fork",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "",
"author": "George Danezis",
"author_email": "g.danezis@ucl.ac.uk",
"download_url": "https://files.pythonhosted.org/packages/8f/ff/c869b390393a36d49ee37bbf99a885c7ac44de97a4d2bba6a4a873527e45/bplib_fork-0.0.63.tar.gz",
"platform": null,
"description": "The ``bplib`` is a library implementing support for computations on groups supporting \nbilinear pairings, as used in modern cryptography. \n\nIt is based on the OpenPairing library by \nDiego Aranha (https://github.com/dfaranha/OpenPairing), which is itself based on, and compatible \nwith, OpenSSL math functions (``bn`` and ``ec``). The ``bplib`` is compatible with ``petlib`` types\nincluding ``petlib.bn`` and the group G1 is a ``petlib.ec`` EC group. Along with ``petlib``, \nthey provide easy to use \nsupport for maths and ciphers used in modern Privacy Enhancing Technologies.\"\n\nA set of bilinear EC groups is defined as:\n\n >>> G = bp.BpGroup()\n\nSuch a BpGroup describes 3 groups G1, G2 and GT such that pair(G1,G2)->GT. Generators \nfor the groups G1 and G2 are denoted by:\n\n >>> g1, g2 = G.gen1(), G.gen2()\n\nThe special ``pair`` operation computes to pairing into GT:\n\n >>> gt = G.pair(g1, g2)\n\nOperations 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:\n \n >>> gt6 = gt**6\n\nAs expected the ``pair`` operations is additive:\n\n >>> G.pair(g1, 6*g2) == gt6\n True\n >>> G.pair(6*g1, g2) == gt6\n True\n >>> G.pair(2*g1, 3*g2) == gt6\n True\n\n",
"bugtrack_url": null,
"license": "LGPL",
"summary": "A bilinear pairing library for petlib.",
"version": "0.0.63",
"project_urls": {
"Homepage": "https://pypi.python.org/pypi/bplib/"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5bf84d697c06d3b5ebe3ebefff93b29bed280f12d7f1cfecd72af53db863f2d4",
"md5": "299e9c20dbaccd543e42bef752f38d36",
"sha256": "1f978feccbca0fc20752eea881668df32de93e52cb42b294350257b1c327bb4d"
},
"downloads": -1,
"filename": "bplib_fork-0.0.63-cp37-cp37m-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "299e9c20dbaccd543e42bef752f38d36",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 101942,
"upload_time": "2023-07-05T10:17:23",
"upload_time_iso_8601": "2023-07-05T10:17:23.675678Z",
"url": "https://files.pythonhosted.org/packages/5b/f8/4d697c06d3b5ebe3ebefff93b29bed280f12d7f1cfecd72af53db863f2d4/bplib_fork-0.0.63-cp37-cp37m-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8fffc869b390393a36d49ee37bbf99a885c7ac44de97a4d2bba6a4a873527e45",
"md5": "14852b4f9a9aa96d91a3aa6310c8b611",
"sha256": "d5f6ac7b1d020cc429133c4b41ee5b46d32ba9e37bdc4e3faec350ff18d5423a"
},
"downloads": -1,
"filename": "bplib_fork-0.0.63.tar.gz",
"has_sig": false,
"md5_digest": "14852b4f9a9aa96d91a3aa6310c8b611",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 40175,
"upload_time": "2023-07-05T10:17:25",
"upload_time_iso_8601": "2023-07-05T10:17:25.536699Z",
"url": "https://files.pythonhosted.org/packages/8f/ff/c869b390393a36d49ee37bbf99a885c7ac44de97a4d2bba6a4a873527e45/bplib_fork-0.0.63.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-07-05 10:17:25",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "bplib-fork"
}