Jump to content

Hessian form of an elliptic curve

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 99.241.166.168 (talk) at 10:33, 6 October 2015 (Group law: A further refinement in terms of layout). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In geometry, the Hessian curve is a plane curve similar to folium of Descartes. It is named after the German mathematician Otto Hesse. This curve was suggested for application in elliptic curve cryptography, because arithmetic in this curve representation is faster and needs less memory than arithmetic in standard Weierstrass form.[1]

Definition

An Hessian curve of equation

Let K be a field and consider an elliptic curve E in the following special case of Weierstrass form over K:

where the curve has discriminant

Then the point P = (0, 0) has order 3. To see this note that the tangent to E at P is the line Y = 0 which intersects E with multiplicity 3 at P. Conversely, given a point P of order 3 on an elliptic curve E both defined over a field K one can put the curve into Weierstrass form with P = (0, 0) so that the tangent at P is the line Y = 0. Then the equation of the curve is

Now, to obtain the Hessian curve, first let μ denote a root of the polynomial

Then

Note that if K has a finite field of order (mod 3), then every element of K has a unique cube root; in general, μ lies in an extension field of K.

Now the curve, C, defined below is birationally equivalent to E:

which is called cubic Hessian form (in projective coordinates)

in the affine plane ( satisfying and ).

Furthermore, (otherwise, the curve would be singular).

Starting from the Hessian curve, a birationally equivalent Weierstrass equation is given by

under the transformations:

where:

Group law

It is interesting to analyze the group law of the elliptic curve, defining the addition and doubling formulas (because the SPA and DPA attacks are based on the running time of these operations). Furthermore, in this case, we only need to use the same procedure to compute the addition, doubling or subtraction of points to get efficient results, as said above. In general, the group law is defined in the following way: if three points lie in the same line then they sum up to zero. So, by this property, the group laws are different for every curve.

In this case, the correct way is to use the Cauchy-Desboves´ formulas, obtaining the point at infinity θ = (1 : −1 : 0), that is, the neutral element (the inverse of θ is θ again). Let P = (x1, y1) be a point on the curve. The line y = −x + (x1 + y1) contains P and θ. Therefore, −P is the third point of the intersection of this line with the curve. Intersecting the elliptic curve with the line, the following condition is obtained

Since D3 ≠ 1 we have x1 + y1 + D ≠ 0, the x-coordinate of −P is y1 and the y-coordinate of −P is x1, i.e., P = (y1, x1) or in projective coordinates .

In some application of elliptic curve cryptography and the elliptic curve method of factorization (ECM) it is necessary to compute the scalar multiplications of P, say [n]P for some integer n, and they are based on the double-and-add method; these operations need the addition and dobling formulas.

Doubling: It is possible to define a "doubling" operation using Cauchy-Desboves´ formulae:

Addition: Similarly given two different points it is possible to define the addition formula:

Algorithms and examples

There is one algorithm that can be used to add two different points or to double; it is given by Joye and Quisquater. Then, the following result gives the possibility the obtain the doubling operation by the addition:

Proposition. Let P = (X : Y : Z) be a point on a Hessian elliptic curve E(K). Then: 2(X : Y : Z) = (Z : X : Y) + (Y : Z : X). Furthermore, we have (Z : X : Y) ≠ (Y : Z : X).

Finally, the negation of a point is simply a permutation in the coordinates which means that for subtraction we have:

To sum up, using the addition algorithm presented above can be used indifferently for: Adding two distinct points, doubling a point and subtracting two points with only 12 multiplications and 7 auxiliary variables including the 3 result variables. Before the invention of Edwards curves, these results represent the fastest known method for implementing the elliptic curve scalar multiplication towards resistance against side-channel attacks.

For some algorithms protection against side-channel attacks is not necessary. So, for these doublings can be faster. Since there are many algorithms, only the best for the addition and doubling formulas is given here:

Addition

Let P1 = (X1 : Y1 : Z1) and P2 = (X2 : Y2 : Z2) be two points distinct to θ. Assuming Z1 = Z2 = 1 then the algorithm is given by:

where

The cost needed is 8 multiplications and 3 additions readdition cost of 7 multiplications and 3 additions, depending on the first point.

Doubling

Let P1 = (X1 : Y1 : Z1) be a point, then the doubling formula is given by:

where:

The cost of this algorithm is three multiplications, three squarings, 11 additions and 3×2.

Example

Let E be the Hessian curve with parameter d = −1. In this curve we have:

Extended coordinates

There is another coordinates system with which a Hessian curve can be represented; these new coordinates are called extended coordinates. They can speed up the addition and doubling. To have more information about operations with the extended coordinates see:

http://hyperelliptic.org/EFD/g1p/auto-hessian-extended.html#addition-add-20080225-hwcd

and are represented by satisfying the following equations:

See also

For more information about the running-time required in a specific case, see Table of costs of operations in elliptic curves

Twisted Hessian curves

Notes

  1. ^ Cauchy-Desbove's Formulae: Hessian-elliptic Curves and Side-Channel Attacks, Marc Joye and Jean-Jacques Quisquarter

References

  • Otto Hesse (1844), "Über die Elimination der Variabeln aus drei algebraischen Gleichungen vom zweiten Grade mit zwei Variabeln", Journal für die reine und angewandte Mathematik, 10, pp. 68–96
  • Marc Joye, Jean-Jacques Quisquater (2001). Hessian Elliptic Curves and Side-Channel Attacks. Springer-Verlag Berlin Heidelberg 2001. ISBN 978-3-540-42521-2.
  • N. P. Smart (2001). The Hessian form of an Elliptic Curve. Springer-Verlag Berlin Heidelberg 2001. ISBN 978-3-540-42521-2.