在Python中使用以太坊预编译的配对操作(BN128,在EIP196中指定)

py-eth-pairing的Python项目详细描述


Build Status

如何安装

pip install py_eth_pairing

如何从源代码构建

^{pr2}$
  • 安装成熟
pip install Maturin
  • 编译它
maturin develop --release

如何使用

请检查test.py作为示例

frompy_eth_pairingimportcurve_add,curve_mul,pairing2,curve_negatefrompy_ecc.bn128importG1,G2curve_add(G1,G1)sk=100g1_pk=curve_mul(G1,sk)actual=pairing2(curve_negate(G1),G2,G1,G2)

性能

时间单位是秒。在

curve_add
6.985664367675781e-05
curev_mul
0.00014019012451171875
pairing2
0.0034821033477783203

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

推荐PyPI第三方库


热门话题
映射到“sql select”表的java Hibernate集   如何为JavaSource文件中的多个问题编写Eclipse快速修复程序   java如何在spring Mvc中使用多线程提高性能   java将两条if语句汇总为一条   java当格式为姓氏\,First Name时,如何从LDAP CN中仅获取姓氏   java通过向spark dtaframe列添加值来生成一个新列   java Spring调试日志记录级别不工作   java中有@BeforeClass钩子吗?   java无法在休眠状态下保存数据   MAC上的java SWT菜单无响应   编译器构造与Java环境相关的编译   java在Hibernate中如何延迟加载子记录?   java ViewRoot$CalledFromErrorThreadException在从AsyncTask调用setAdapter()时发生异常?