diff options
Diffstat (limited to 'src/Specific/X2555/C128/CurveParameters.v')
-rw-r--r-- | src/Specific/X2555/C128/CurveParameters.v | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/Specific/X2555/C128/CurveParameters.v b/src/Specific/X2555/C128/CurveParameters.v new file mode 100644 index 000000000..1171f7583 --- /dev/null +++ b/src/Specific/X2555/C128/CurveParameters.v @@ -0,0 +1,39 @@ +Require Import Crypto.Specific.Framework.RawCurveParameters. +Require Import Crypto.Util.LetIn. + +(*** +Modulus : 2^255-5 +Base: 130 +***) + +Definition curve : CurveParameters := + {| + sz := 3%nat; + base := 130; + bitwidth := 128; + s := 2^255; + c := [(1, 5)]; + carry_chains := Some [seq 0 (pred 3); [0; 1]]%nat; + + a24 := Some (121665 (* XXX TODO(andreser) FIXME? Is this right for this curve? *)); + coef_div_modulus := Some 2%nat; + + goldilocks := None; + karatsuba := None; + montgomery := false; + freeze := Some false; + ladderstep := true; + + mul_code := None; + + square_code := None; + + upper_bound_of_exponent_loose := None; + upper_bound_of_exponent_tight := None; + allowable_bit_widths := None; + freeze_extra_allowable_bit_widths := None; + modinv_fuel := None + |}. + +Ltac extra_prove_mul_eq _ := idtac. +Ltac extra_prove_square_eq _ := idtac. |