Elliptic Curves
Total Page:16
File Type:pdf, Size:1020Kb
Chapter 9 Elliptic Curves This is a chapter from version 2.0 of the book “Mathematics of Public Key Cryptogra- phy” by Steven Galbraith, available from http://www.math.auckland.ac.nz/˜sgal018/crypto- book/crypto-book.html The copyright for this chapter is held by Steven Galbraith. This book was published by Cambridge University Press in early 2012. This is the extended and corrected version. Some of the Theorem/Lemma/Exercise numbers may be different in the published version. Please send an email to [email protected] if youfind any mistakes. This chapter summarises the theory of elliptic curves. Since there are already many outstanding textbooks on elliptic curves (such as Silverman [564] and Washington [626]) we do not give all the details. Our focus is on facts relevant for the cryptographic appli- cations, especially those for which there is not already a suitable reference. 9.1 Group law Recall that an elliptic curve over afieldk is given by a non-singular affine Weierstrass equation 2 3 2 E:y +a 1xy+a 3y=x +a 2x +a 4x+a 6 (9.1) wherea 1, a2, a3, a4, a6 k. There is a unique point E on the projective closure that does not lie on the affine∈ curve. O We recall the formulae for the elliptic curve group law with identity element : For O E allP E(k) we haveP+ E = E +P=P so it remains to consider the case where P ,P∈ E(k) are suchO thatP ,PO= . In other words,P andP are affine points and 1 2 ∈ 1 2 6 O E 1 2 so writeP 1 = (x1, y1) andP 2 = (x2, y2). Recall that Lemma 7.7.10 shows the inverse of P1 = (x1, y1) isι(P 1) = (x1, y 1 a 1x1 a 3). Hence, ifx 1 =x 2 andy 2 = y 1 a 1x1 a 3 (i.e.,P = P ) thenP +P− =− . In− the remaining cases let − − − 2 − 1 1 2 O E ( 2 3x1+2a2x1+a4 a1y1 − ifP 1 =P 2 λ= 2y1+a1x1+a3 (9.2) y2 y1 x −x ifP 1 = P 2. 2− 1 6 ± and setx =λ 2 +a λ x x a andy = λ(x x ) y a x a . Then 3 1 − 1 − 2 − 2 3 − 3 − 1 − 1 − 1 3 − 3 P1 +P 2 = (x3, y3). 165 166 CHAPTER 9. ELLIPTIC CURVES Exercise 9.1.1. It is possible to “unify” the two cases in equation (9.2). Show that if 2 3 2 P1 = (x1, y1) andP 2 = (x2, y2) lie ony + (a1x+a 3)y=x +a 2x +a 4x+a 6 and y = y a x a thenP +P can be computed using the fomula 2 6 − 1 − 1 1 − 3 1 2 x2 +x x +x 2 +a (x +x ) +a a y λ= 1 1 2 2 2 1 2 4 − 1 1 (9.3) y1 +y 2 +a 1x2 +a 3 instead of equation (9.2). Definition 9.1.2. LetE be an elliptic curve over afieldk and letP E(k). Forn N define [n]P tobeP+ +P whereP appearsn times. In particular,∈ [1] is the identity∈ map. Define [0]P= ··· and [ n]P=[n]( P ). O E − − Then-torsion subgroup is E[n] = P E( k):[n]P= . { ∈ O E} We writeE(k)[n] forE[n] E(k). ∩ 2 3 Exercise 9.1.3. LetE:y +y=x be an elliptic curve overF 2. Letm N and 4 4 ∈ P=(x P , yP ) E(F 2m ). Show that [2]P=(x P , yP +1). (We will show in Example 9.11.6 that this curve∈ is supersingular.) 2 3 2 Exercise 9.1.4. LetE:y + xy=x +a 2x +a 6 be an elliptic curve overF 2m for m m N. Show that there is a pointP=(x P , yP ) E(F 2 ) if and only if TrF2m /F2 (xP + ∈ 2 ∈ a +a /x ) = 0. GivenQ=(x , y ) E(F m ) show that the slope of the tangent 2 6 P Q Q ∈ 2 line toE atQ isλ Q =x Q +y Q/xQ. Show thaty Q =x Q(λQ +x Q). Hence show that if 2 2 2 P = [2]Q then TrF2m /F2 (xP ) = TrF2m /F2 (a2),x P =x Q +a 6/xQ and TrF2m /F2 (a6/xP ) = 0. m Conversely, show that ifP=(x P , yP ) E(F 2 ) is such that TrF2m /F2 (xP ) = TrF2m /F2 (a2) 2 ∈ and Tr (a /x ) = 0 thenP = [2]Q for someQ E(F m ). F2m /F2 6 P ∈ 2 m (Point halving) GivenP=(x P , yP ) E(F 2 ) such that TrF2m /F2 (xP ) = TrF2m /F2 (a2) ∈ 2 show that there are two solutionsλ F m to the equationλ +λ =x +a . For p Q ∈ 2 Q Q P 2 either solution letx Q = xP (λP +λ Q +x P + 1), whereλ P =x P +y P /xP , andy Q = xQ(λQ +x Q). Show that [2](xQ, yQ) =P. One can consider Weierstrass equations overk that have a singular point in the affine plane (recall that there is a unique point at infinity E and it is non-singular). By a change of variable one may assume that the singularO point is (0, 0) and the equation is 2 3 2 C:y +a 1xy=x +a 2x . LetG=C(k) E (0,0) . It turns out that the elliptic curve group law formulae give rise to∪ a{O group} law−{ onG.} There is a morphism over k 1 fromC toP and the group law onG corresponds to either the additive groupG a or the multiplicative groupG m; see Section 9 of [122], Section 2.10 of [626] or Proposition III.2.5 of [564] for details. Since an elliptic curve is a projective variety it is natural to consider addition formulae on projective coordinates. In the applications there are good reasons to do this (for example, to minimise the number of inversions in fast implementations of elliptic curve cryptography, or in the elliptic curve factoring method). Exercise 9.1.5. LetP 1 = (x1 :y 1 :z 1) andP 2 = (x2 :y 2 :z 2) be points on the elliptic 2 3 2 3 curveE:y z=x +a 4xz +a 6z overk. Let u=x z x z . 1 2 − 2 1 9.2. MORPHISMS BETWEEN ELLIPTIC CURVES 167 Show that (x3 :y 3 :z 3) is a projective representation forP 1 +P 2 where 2 3 x3 =z 1z2(y1z2 y 2z1) u (x 1z2 +x 2z1)u (9.4) − 3− 2 3 y3 = z 1z2(y1z2 y 2z1) + (2x1z2 +x 2z1)(y1z2 y 2z1)u y 1z2u (9.5) − 3 − − − z3 =z 1z2u (9.6) (as long as the resulting point is not (0,0, 0)). The elliptic curve addition formula of equations (9.3) and (9.4)-(9.6) are undefined on certain inputs (such asP= E orP 2 = P 1) and so one currently needs to make decisions (i.e., use “if” statements)O to compute− on elliptic curves. This does not agree with the definition of an algebraic group (informally, that the group operation is given by polynomial equations; formally that there is a morphismE E E). However, it can be shown (see Theorem III.3.6 of Silverman [564]) that elliptic× → curves are algebraic groups. To make this concrete letE be an elliptic curve overk written projectively. A com- plete system of addition laws forE(k) is a set of triples of polynomials (f (x , y , z , x , y , z ), f (x , y , z , x , y , z ), f (x , y , z , x , y , z )) : 1 i k { i,x 1 1 1 2 2 2 i,y 1 1 1 2 2 2 i,z 1 1 1 2 2 2 ≤ ≤ } such that, for all points P,Q E(k), at least one of (f i,x(P, Q), fi,y(P, Q), fi,z(P, Q)) is defined and all triples defined∈ at (P, Q) give a projective representation of the point P+Q. A rather surprising fact, due to Bosma and Lenstra [92], is that one can give a complete system of addition laws forE( k) using only two triples of polynomials. The resulting equations are unpleasant and not useful for practical computation. 9.2 Morphisms Between Elliptic Curves The goal of this section is to show that a morphism between elliptic curves is the compo- sition of a group homomorphism and a translation. In other words, all geometric maps between elliptic curves have a group-theoretic interpretation. Theorem 9.2.1. LetE 1 andE 2 be elliptic curves overk and letφ:E 1 E 2 be a morphism of varieties such thatφ( ) = . Thenφ is a group homomorphism.→ O E1 O E2 0 0 0 Proof: (Sketch) The basic idea is to note thatφ : Pick(E1) Pic k(E2) (where Pick(Ei) ∗ → denotes the degree zero divisor class group ofE i overk) is a group homomorphism and φ ((P) ( E1 )) = (φ(P)) ( E2 ). We refer to Theorem III.4.8 of [564] for the details. ∗ − O − O Definition 9.2.2. LetE be an elliptic curve overk and letQ E(k). We define the translation map to be the functionτ :E E given byτ (P∈)=P+Q. Q → Q Clearly,τ Q is a rational map that is defined everywhere onE and so is a morphism. Sinceτ Q has inverse mapτ Q it follows thatτ Q is an isomorphism of the curveE to itself (though be warned that in− the next section we will define isomorphism for pointed curves andτ Q will not be an isomorphism in this sense).