Crate ark_bls12_381[][src]

Expand description

This library implements the BLS12_381 curve generated by Sean Bowe. The name denotes that it is a Barreto–Lynn–Scott curve of embedding degree 12, defined over a 381-bit (prime) field. This curve was intended to replace the BN254 curve to provide a higher security level without incurring a large performance overhead.

Curve information:

  • Base field: q = 4002409555221667393417789825735904156556882819939007885332058136124031650490837864442687629129015664037894272559787
  • Scalar field: r = 52435875175126190479447740508185965837690552500527637822603658699938581184513
  • valuation(q - 1, 2) = 1
  • valuation(r - 1, 2) = 32
  • G1 curve equation: y^2 = x^3 + 4
  • G2 curve equation: y^2 = x^3 + Fq2(4, 4)

Modules

fq
fq2
fq6
fq12
fr
g1
g2

Structs

Fq2Parameters
Fq6Parameters
Fq12Parameters
FqParameters
FrParameters
Parameters

Constants

FQ2_ONE
FQ2_ZERO
FQ_ONE
FQ_ZERO

Type Definitions

Bls12_381
Fq
Fq2
Fq6
Fq12
Fr
G1Affine
G1Projective
G2Affine
G2Projective