20 breaking releases
new 0.21.0 | Dec 19, 2024 |
---|---|
0.20.0 | Jul 18, 2024 |
0.19.0 | Jun 21, 2024 |
0.17.0 | Mar 4, 2024 |
0.3.0 | Nov 5, 2021 |
#2248 in Cryptography
687 downloads per month
Used in 16 crates
135KB
3K
SLoC
A collection of utilities used by our other libraries in this workspace.
- Pedersen commitment
- Elgamal encryption and variations - plain Elgamal, hashed-Elgamal and batched hashed-Elgamal
- finite field utilities like inner product, weighted inner product, hadamard product, etc.
- multiscalar multiplication (MSM) like Fixed Base MSM
- polynomial utilities like multiplying polynomials, creating polynomial from roots, etc.
- An efficient way to check several equality relations involving pairings by combining the relations in a random linear combination and doing a multi-pairing check. Relies on Schwartz–Zippel lemma.
- hashing utilities like hashing arbitrary bytes to field element or group element.
- solving discrete log using Baby Step Giant Step algorithm
lib.rs
:
A collection of utilities used by our other libraries in this workspace.
- Pedersen commitment
- Elgamal encryption, including Hashed Elgamal
- finite field utilities like inner product, weighted inner product, hadamard product, etc.
- multiscalar multiplication (MSM) like Fixed Base MSM
- polynomial utilities like multiplying polynomials, creating polynomial from roots, etc.
- An efficient way to check several equality relations involving pairings by combining the relations in a random linear combination and doing a multi-pairing check. Relies on Schwartz–Zippel lemma.
- hashing utilities like hashing arbitrary bytes to field element or group element.
- solving discrete log using Baby Step Giant Step algorithm
Dependencies
~6–14MB
~169K SLoC