跳转到主要内容

petlib的二元配对库。

项目描述

bplib是一个库,实现了对支持二元配对的群的计算支持,用于现代密码学。

它基于Diego Aranha的OpenPairing库(https://github.com/dfaranha/OpenPairing),该库本身基于并兼容OpenSSL数学函数(bnec)。bplib与petlib类型兼容,包括petlib.bn,其中G1是petlib.ec EC群。与petlib一起,它们提供了现代隐私增强技术中使用的数学和密码学的简单支持。

定义一组二元EC群如下:

>>> G = bp.BpGroup()

这样的BpGroup描述了3个群G1、G2和GT,使得pair(G1,G2)->GT。群G1和G2的生成元表示为

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

特殊的pair运算计算为GT中的配对

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

运算定义在G1、G2或GT的所有元素上,对G1和G2使用自然加法中缀符号,对GT使用乘法符号

>>> gt6 = gt**6

如预期的那样,pair运算具有加法性质

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

项目详情


下载文件

下载适用于您平台的应用程序文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

bplib-0.0.6.tar.gz (40.7 kB 查看哈希)

上传于

构建的发行版

bplib-0.0.6-py3.6-linux-x86_64.egg (222.8 kB 查看哈希值)

上传于

bplib-0.0.6-py2.7-linux-x86_64.egg (227.2 kB 查看哈希值)

上传于

支持者