|
|
@@ -1,17 +1,5 @@ |
|
|
|
package sike |
|
|
|
|
|
|
|
// Interface for working with isogenies. |
|
|
|
type isogeny interface { |
|
|
|
// Given a torsion point on a curve computes isogenous curve. |
|
|
|
// Returns curve coefficients (A:C), so that E_(A/C) = E_(A/C)/<P>, |
|
|
|
// where P is a provided projective point. Sets also isogeny constants |
|
|
|
// that are needed for isogeny evaluation. |
|
|
|
GenerateCurve(*ProjectivePoint) CurveCoefficientsEquiv |
|
|
|
// Evaluates isogeny at caller provided point. Requires isogeny curve constants |
|
|
|
// to be earlier computed by GenerateCurve. |
|
|
|
EvaluatePoint(*ProjectivePoint) ProjectivePoint |
|
|
|
} |
|
|
|
|
|
|
|
// Stores isogeny 3 curve constants |
|
|
|
type isogeny3 struct { |
|
|
|
K1 Fp2 |
|
|
|