Expand description
§blstrs
An implementation of the BLS12-381 pairing-friendly elliptic curve construction.
Structs§
- Bls12
- Bls12-381 engine
- G1Affine
- This is an element of $\mathbb{G}_1$ represented in the affine coordinate space. It is ideal to keep elements in this representation to reduce memory usage and improve performance through the use of mixed curve model arithmetic.
- G1Compressed
- G1Projective
- This is an element of $\mathbb{G}_1$ represented in the projective coordinate space.
- G1Uncompressed
- G2Affine
- This is an element of $\mathbb{G}_2$ represented in the affine coordinate space. It is ideal to keep elements in this representation to reduce memory usage and improve performance through the use of mixed curve model arithmetic.
- G2Compressed
- G2Prepared
- G2Projective
- This is an element of $\mathbb{G}_2$ represented in the projective coordinate space.
- G2Uncompressed
- Gt
- This is an element of $\mathbb{G}_T$, the target group of the pairing function. As with $\mathbb{G}_1$ and $\mathbb{G}_2$ this group has order $q$.
- Miller
Loop Result - Represents results of a Miller loop, one of the most expensive portions
of the pairing function.
MillerLoopResults cannot be compared with each other until.final_exponentiation()is called, which is also expensive. - Pairing
G1G2 - Aggregate pairings efficiently.
- Pairing
G2G1 - Aggregate pairings efficiently.
- Scalar
- Represents an element of the scalar field $\mathbb{F}_q$ of the BLS12-381 elliptic curve construction.
Traits§
- Compress
- This traits enables reading and writing a compressed version.
Functions§
- pairing
- Execute a complete pairing operation
(p, q). - unique_
messages - Returns true if all provided messages are distinctly unique, false otherwise.