Pure-Python library that implements operations over the BN(2,254) pairing-friendly curve.
Project description
Pure-Python library that implements operations over the BN(2,254) pairing-friendly curve.
Usage Examples
This library is available as a package on PyPI. Usage examples are provided below:
from bn254.curve import r as scalar_upper_bound
from bn254.ecp import generator as base_point
from bn254.ecp2 import generator as random_point
from bn254.big import invmodp, rand
from bn254.pair import e
P = random_point()
G = base_point()
s = rand(scalar_upper_bound)
t = rand(scalar_upper_bound)
s_inv = invmodp(s, scalar_upper_bound)
b = s_inv * t
assert(
e(t*P, G) == e(s*P, b*G)
)
Acknowledgments
This product includes software developed at the Apache Software Foundation. See file headers for notices. You may find archives of the original Apache Milagro Cryptographic Library documentation and source files (some of which were included in a modified form within this library) at the links below:
https://apache.googlesource.com/incubator-milagro-crypto/+/70e3a/version3/python
https://github.com/apache/incubator-milagro-crypto/tree/master/version3/python
The authors also acknowledge learning about the original Apache Milagro Cryptographic Library via the use of its source code within the MIRACL Core Cryptographic Library.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file bn254-0.1.2.tar.gz
.
File metadata
- Download URL: bn254-0.1.2.tar.gz
- Upload date:
- Size: 19.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 113208d61601b9c48a2eb24156bcedcf81e84668584bc723aacf43ac59c3a62a |
|
MD5 | 209274c710c52b1c98ca35e15982519c |
|
BLAKE2b-256 | 13c0516bc8983b913b12eec80ca038137936f5dccf174a7cbc840a43726ceb10 |