The canonical representation of an elliptic curve group element.
This should represent the affine coordinates of the point corresponding
to this group element.
Defines a Cubic extension field from a cubic non-residue.
Elliptic curves can be represented via different “models” with varying
efficiency properties.
CurveConfig
bundles together the types that are common
to all models of the given curve, namely the BaseField
over which the
curve is defined, and the ScalarField
defined by the appropriate
prime-order subgroup of the curve.
Wrapper trait representing a cycle of elliptic curves (E1, E2) such that
the base field of E1 is the scalar field of E2, and the scalar field of E1
is the base field of E2.
An opaque representation of an elliptic curve group element that is suitable
for efficient group arithmetic.
The interface for fields that are able to be used in FFTs.
The interface for a generic field.
Types implementing
Field
support common field operations such as addition, subtraction, multiplication, and inverses.
Trait that specifies constants and methods for defining degree-two extension fields.
Trait that specifies constants and methods for defining degree-three extension fields.
A trait that specifies the configuration of a prime field.
Also specifies how to perform arithmetic on field elements.
A trait that specifies the constants and arithmetic procedures
for Montgomery arithmetic over the prime field defined by MODULUS
.
A cycle of curves where both curves are pairing-friendly.
The interface for a prime field, i.e. the field of integers modulo a prime $p$.
In the following example we’ll use the prime field underlying the BLS12-381 G1 curve.
Represents (elements of) a group of prime order r
.
Defines a Quadratic extension field from a quadratic non-residue.