Skip to main content

Module point_hessian

Module point_hessian 

Source
Expand description

Projective points on a generalized Hessian curve.

We represent points on

$$X^3 + Y^3 + cZ^3 = dXYZ$$

by projective triples (X:Y:Z).

This choice is important for Hessian curves because the neutral element is a point at infinity:

$$O = (1 : -1 : 0).$$

The formulas implemented here follow:

  • Farashahi–Joye, §2–§4 for the generalized Hessian model,
  • the EFD projective Hessian formulas for the ordinary Hessian case.

In particular:

  • negation is -(X:Y:Z) = (Y:X:Z),
  • doubling uses the projective formulas from equation (6) in the paper,
  • addition uses the unified formulas (9), with formulas (10) as a fallback for the exceptional cases described in §4.

Structs§

HessianPoint
A projective point (X:Y:Z) on a generalized Hessian curve.