petlib的双线性配对库。

bplib的Python项目详细描述


bplib是一个库,实现对支持 双线性对,用于现代密码学中。

它基于openpairing库 diego aranha(https://github.com/dfaranha/OpenPairing),它本身基于并兼容 使用,openssl数学函数(bnec)。bplibpetlib类型兼容 包括petlib.bn,组g1是一个petlib.ecec组。连同petlib, 它们易于使用 支持现代隐私增强技术中使用的数学和密码。“

一组双线性ec群定义为:

>>> G = bp.BpGroup()

这样一个bpgroup描述3个组g1、g2和gt,这样一对(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

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java是安卓的子类。所容纳之物ClipData或ClipData。项目   毕加索中的java错误get()无法应用于(安卓.content.Context)   管道接受来自控制台和管道文本文件的Java输入   Java Windows文件权限   java如何在Selenium中找到此按钮?我尝试了partiallinktext并多次尝试cssSelector   java如何在spring jdbc模板中生成流式sql?   方法中的java全局值变为null   java设备“Mobile Intel(R)4 Series Express芯片组系列”(\\.\DISPLAY1)初始化失败:   java查找单独文件夹中的资源到类文件   java iCal4j添加会议说明   java如何处理InvalidTokenException?   oop如果Java不支持运算符重载,增量运算符如何在整数实例上工作?   java如何在Hibernate中获取<map>