The Generalized Weil Pairing and the Discrete Logarithm Problem on Elliptic Curves
Total Page:16
File Type:pdf, Size:1020Kb
View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector Theoretical Computer Science 321 (2004) 59–72 www.elsevier.com/locate/tcs The generalized Weil pairing and the discrete logarithm problem on elliptic curves Theodoulos Garefalakis Department of Mathematics, University of Toronto, Ont., Canada M5S 3G3 Received 5 August 2002; received in revised form 2 May 2003; accepted 1 June 2003 Abstract We review the construction of a generalization of the Weil pairing, which is non-degenerate and bilinear, and use it to construct a reduction from the discrete logarithm problem on elliptic curves to the discrete logarithm problem in ÿnite ÿelds. We show that the new pairing can be computed e2ciently for curves with trace of Frobenius congruent to 2 modulo the order of the base point. This leads to an e2cient reduction for this class of curves. The reduction is as simple to construct as that of Menezes et al. (IEEE Trans. Inform. Theory, 39, 1993), and is provably equivalent to that of Frey and Ruck7 (Math. Comput. 62 (206) (1994) 865). c 2003 Elsevier B.V. All rights reserved. Keywords: Elliptic curves; Cryptography; Discrete Logarithm Problem 1. Introduction Since the seminal paper of Di2e and Hellman [11], the discrete logarithm prob- lem (DLP) has become a central problem in algorithmic number theory, with direct implications in cryptography. For arbitrary ÿnite groups the problem is deÿned as fol- lows: Given a ÿnite group G, a base point g ∈ G and a point y ∈g ÿnd the smallest non-negative integer ‘ such that y = g‘. In their paper, Di2e and Hellman proposed a method for key agreement, whose security required that DLP be hard for the group (Z=p)∗ of integers modulo a prime p. This is the multiplicative group of the ÿnite ÿeld Fp. Considering an arbitrary ÿnite ÿeld Fq instead, the method can almost trivially be extended to work in the multiplicative group of Fq, where q is a prime power. The security of the protocol now requires DLP to be hard in this group. E-mail address: [email protected] (T. Garefalakis). 0304-3975/$ - see front matter c 2003 Elsevier B.V. All rights reserved. doi:10.1016/j.tcs.2003.06.002 60 T. Garefalakis / Theoretical Computer Science 321 (2004) 59–72 The result of the eHorts of a number of researchers was the development of the index calculus method [1,3,7,15,19,22] and later the number ÿeld sieve and the function ÿeld sieve [2,4,10,16]. The methods are designed to compute discrete logarithms in any ÿnite ÿeld, and are particularly e2cient for ÿnite ÿelds of the form Fq with q = p a prime, or q = pn with p a small prime and n large. In both these cases, the above methods run in subexponential time: the index calculus method in time exp((c1 + o(1))(log q)1=2(log log q)1=2), and the number ÿeld and function ÿeld sieves in time 1=3 2=3 exp((c2 + o(1))(log q) (log log q) ), where c1 and c2 are small constants. The above developments, led Miller [21] and Koblitz [18] to consider alternative groups, where the group operation can be e2ciently computed, but the DLP is hard. Their proposal was the group of points of an elliptic curve E over a ÿnite ÿeld Fq, denoted E(Fq). Traditionally, the group operation here is denoted additively. Thus the elliptic curve discrete logarithm problem (ECDLP) is deÿned as follows: Given an elliptic curve E=Fq, a base point P ∈ E(Fq) and a point Q ∈P ÿnd the smallest non- negative integer ‘ such that Q = ‘ · P. ECDLP in general remains of exponential time complexity to this day. However, it was the work of Menezes et al. [20] that showed that not all elliptic curves oHer the same level of security. The authors used the well-known Weil pairing, em, to translate ∗ the ECDLP from E(Fq) to the DLP in an extension ÿeld Fqk , which can subsequently be solved using one of the subexponential methods discussed earlier (MOV reduction). A necessary condition for it to be e2cient is the existence a small integer k such that (1) E[m] ⊆ E(Fqk ); where m =#P, (2) m | qk − 1. The authors were able to prove that for supersingular curves both conditions hold for k66. Subsequently, Frey and Ruck7 [13] proposed another reduction, based on the Tate pairing m. The advantage of this method is that m(P; S)isanmth root of unity for an easily computable point S (in most interesting cases S = P). Then the only requirement for the reduction to go through is that m | qk − 1 for a small k. Clearly, this is a less restrictive condition. In fact, one cannot avoid this condition, as any isomorphism from k P to a subgroup of Fqk implies that #P = m|q − 1. Later, Harasawa et al. [17] attempted to generalize the method of Menezes, Okamoto, and Vanstone to apply to a larger class of elliptic curves. Their generalization appeared to be very limited. The main reason is that no e2cient method is known to ÿnd a point S ∈ E[m] such that em(P; S) is a primitive mth root of unity, if E is non-supersingular. The purpose of this paper is to bridge the gap between the MOV reduction and the Frey–Ruck7 reduction. We start from a well-known generalization of the Weil pairing, e (see [6, p. 45, 23, p. 107]). The construction of the pairing is as simple as that of the Weil pairing, but has the nice property of the (more involved) Tate pairing, namely e (P; P) is a suitable primitive root of unity. We show how to construct a group isomorphism between P and r, where r =#P is a prime, and r is the group of rth roots of unity. Our construction applies to elliptic curves E=Fq such that r|q−1, i.e., aq ≡ 2 (mod r). For the cases of interest in cryptography, the order r of P is T. Garefalakis / Theoretical Computer Science 321 (2004) 59–72 61 √ very close to the order of E(Fq) (and certainly greater than 2 q). Then, the condition r|q − 1 is equivalent to aq = 2. We note that our construction can be generalized to work for r|qk −1 for any k¿1. If the degree of the extension k is reasonably small, the resulting reduction is e2cient. We want to stress that the reduction presented in this work is not a new attack to elliptic curve cryptosystems. It is an alternative, elementary construction of the reduction of Frey and Ruck.7 The paper is structured as follows. In Section 2, we review the construction of the generalized Weil pairing e parameterized by an isogeny , and state the properties that will be used later. In Section 3, we specialize the isogeny to 1 − , where is the Frobenius endomorphism. In Section 4, we consider curves with trace of Frobenius aq = 2, and show how to ÿnd a point P , such that e (P; P ) is a primitive rth root of unity. In Section 5, we give an algorithm to compute the pairing in the case of interest. It turns out that for Q ∈P, the value e (Q; P) is the multiplicative inverse of the value r(Q; P) of the Tate pairing used by Frey and Ruck.7 Finally, in Section 6 we show how to obtain a reduction in the more general case aq ≡ 2 (mod r). 2. The pairing In this section, we review a generalization of the Weil pairing. As for the rest of the paper, p is prime, and q = pk . Let E be an elliptic curve over Fq. Also let : E → E be a non-zero endomorphism of E, and denote its dual by ˆ. Let T ∈ ker( ˆ)—such a point exists, since ˆ is onto. We denote by m the degree of . Then, the divisor D = m(T) − m(O) is principal. Let O fT ∈ Fq(E) be a function such that div(fT )=m(T) − m(O): We consider now the divisor of fT ◦ . ∗ ∗ div(fT ◦ ) = div( fT )= div(fT) = m( ∗(T) − ∗(O)); the last equality being true by the deÿnition of ∗ (Z-linearity). We note that ∗ ∗ (T) − (O)= e (P)(P) − e (R)(R) P=T R=O = degi (T + R) − (R) ; R=O where T = T. Here we used the fact that is an isogeny, and therefore e (P) does not depend on P, and equals to degi( ). The last line of the derivation shows that the divisor is principal, since it has degree zero, and it sums to ˆ ˆ [degi ] T = [deg ]T = ◦ (T )= T = O: R=O 62 T. Garefalakis / Theoretical Computer Science 321 (2004) 59–72 O So it must be the divisor of some function gT ∈ Fq(E). Thus, m (fT ◦ )=m div(gT ) = div(gT ); which implies that m gT = fT ◦ : (1) gT is deÿned up to a multiplicative constant of course. Let now S ∈ ker( ), and X any O point of E(Fq). m m gT (X + S) = fT ( X + S)=fT ( X )=fT ◦ X = gT (X ) : We deÿne the pairing ˆ e : ker( ) × ker( ) → m as gT (X + S) e (S; T)= : (2) gT (X ) The above deÿnition does not depend on the choice of X . Indeed, if S denotes the translation by S map S : E → E X → X + S then we can write e (S; T)as gT ◦ S e (S; T)= (X ); gT and the function gT ◦ S =gT is constant.