pathfinder_crypto/algebra/curve/
params.rs

1//! Constants for the stark curve, see the <https://docs.starkware.co/starkex/crypto/stark-curve.html>
2use crate::algebra::curve::*;
3use crate::algebra::field::*;
4
5/// Order of the curve.
6pub const CURVE_ORDER: MontFelt =
7    MontFelt::from_hex("800000000000010FFFFFFFFFFFFFFFFB781126DCAE7B2321E66A241ADC64D2F");
8
9/// Constant `a` from curve equation
10pub const CURVE_A: MontFelt = MontFelt::ONE;
11
12/// Constant `b` from curve equation
13pub const CURVE_B: MontFelt =
14    MontFelt::from_hex("6F21413EFBE40DE150E596D72F7A8C5609AD26C15C915C1F4CDFCB99CEE9E89");
15
16/// Montgomery representation of the Stark curve generator G.
17pub const CURVE_G: ProjectivePoint = ProjectivePoint::from_hex(
18    "1EF15C18599971B7BECED415A40F0C7DEACFD9B0D1819E03D723D8BC943CFCA",
19    "5668060AA49730B7BE4801DF46EC62DE53ECD11ABE43A32873000C36E8DC1F",
20);