Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO.

10, OCTOBER 2009 1411

Analyzing the Galbraith-Lin-Scott


Point Multiplication Method for
Elliptic Curves over Binary Fields
Darrel Hankerson, Koray Karabina, and Alfred Menezes

Abstract—Galbraith, Lin, and Scott recently constructed efficiently computable endomorphisms for a large family of elliptic curves
defined over IFq2 and showed, in the case where q is a prime, that the Gallant-Lambert-Vanstone point multiplication method for these
curves is significantly faster than point multiplication for general elliptic curves over prime fields. In this paper, we investigate the
potential benefits of using Galbraith-Lin-Scott elliptic curves in the case where q is a power of 2. The analysis differs from the q prime
case because of several factors, including the availability of the point halving strategy for elliptic curves over binary fields. Our analysis
and implementations show that Galbraith-Lin-Scott point multiplication method offers significant acceleration for curves over binary
fields, in both doubling- and halving-based approaches. Experimentally, the acceleration surpasses that reported for prime fields (for
the platform in common), a somewhat counterintuitive result given the relative costs of point addition and doubling in each case.

Index Terms—Elliptic curve cryptography, computer arithmetic, efficiency.

1 INTRODUCTION

L ET E be a Koblitz elliptic curve, i.e., the elliptic curve


Y 2 þ XY ¼ X3 þ 1 or Y 2 þ XY ¼ X3 þ X2 þ 1 defined
over IF2 . Koblitz [25] (see also [37]) showed how point
sense that there are, respectively, only four and six
isomorphism classes of these kinds of curves over a
field IFq , whereas the total number of isomorphism classes
multiplication in EðIF2n Þ can be accelerated by exploiting of elliptic curves over IFq is approximately 2q.
the Frobenius endomorphism  : ðx; yÞ 7! ðx2 ; y2 Þ.PNamely, Recently, Galbraith, Lin, and Scott (GLS) [11] constructed
if P 2 EðIF2n Þ and k 2 ZZ, then one first writesPk ¼ ki i for efficiently computable endomorphisms for a large family of
ki 2 f0; 1g, and thereafter computes kP ¼ ki i ðP Þ. This elliptic curves defined over IFq2 (these endomorphisms had
yields a point multiplication algorithm that is faster than the been discovered earlier by Iijima et al. [19]) and showed that
traditional point multiplication methods because ðP Þ can the GLV technique can be used to significantly speed point
be computed much faster than 2P . multiplication on these curves in the case where q is a prime
Gallant, Lambert, and Vanstone (GLV) [12] showed how number. The GLS elliptic curves are quite special in that
efficiently computable endomorphisms can also be used to their j-invariants belong to IFq . Nevertheless, since there are
accelerate point multiplication on certain ordinary elliptic approximately q isomorphism classes of such elliptic curves
curves defined over finite fields IFq of characteristic greater (out of the roughly 2q2 elliptic curves defined over IFq2 ), the
than 3 (cf., Section 2.3). The GLV technique is usually applied class of elliptic curves for which the GLV technique is
to elliptic curves Y 2 ¼ X3 þ aX defined over IFq , where effective has been significantly enlarged. This is especially
q  1ðmod 4Þ, or elliptic curves Y 2 ¼ X 3 þ b defined over IFq , beneficial for elliptic curve cryptosystems over character-
where q  1ðmod 3Þ. The first curve has an efficiently istic two finite fields because there are many such fields
computable endomorphism : ðx; yÞ 7! ðx; iyÞ, where i 2 over which Koblitz curves with suitable group orders do
IFq has multiplicative order 4, and the second curve has an not exist.
efficiently computable endomorphism : ðx; yÞ 7! ðx; yÞ, In this paper, we investigate the potential advantages of
where  2 IFq has multiplicative order 3. These curves are GLS elliptic curves defined over binary fields IF22‘ . In
particular, we wish to determine whether GLV point
special in thatpthey
ffiffiffiffiffiffiffi have complex multiplication by orders in multiplication is faster than the traditional double-and-
QQðiÞ and Q Qð 3Þ, respectively. They are also rare in the
add point multiplication methods for these curves, and
similarly, for halve-and-add methods [24], [35], for the
. D. Hankerson is with the Department of Mathematics and Statistics, GLS curves themselves, and also against general elliptic
Auburn University, 221 Parker Hall, Auburn, AL 36849. curves over IF2n for prime n  2‘. An affirmative answer
E-mail: hankedr@auburn.edu.
would mean that there is a large class of elliptic curves over
. K. Karabina and A. Menezes are with the Department of Combinatorics
and Optimization, University of Waterloo, Waterloo, ON N2L 3G1 binary fields for which GLV point multiplication is effective.
Canada. E-mail: {kkarabin, ajmeneze}@uwaterloo.ca. Our analysis and experiments show that the GLS curves
Manuscript received 7 Oct. 2008; revised 15 Dec. 2008; accepted 23 Feb. 2009; offer a significant performance advantage using the
published online 26 Mar. 2009. GLV technique, under both doubling-based and halving-
Recommended for acceptance by E.M. Schwarz. based point multiplication methods. In comparison to the
For information on obtaining reprints of this article, please send e-mail to:
tc@computer.org, and reference IEEECS Log Number TC-2008-10-0497. prime field case examined in [11], the experimental results
Digital Object Identifier no. 10.1109/TC.2009.61. are somewhat counterintuitive in that acceleration against
0018-9340/09/$25.00 ß 2009 IEEE Published by the IEEE Computer Society
1412 IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 10, OCTOBER 2009

general elliptic curves is larger for the binary case (on 2.2 Halve-and-Add
“workstation class” processors) even though the cost of Halve-and-add was proposed independently by Knudsen
point addition relative to doubling is higher (and it is the [24] and Schroeppel [35]. The idea is to replace almost all
number of point doubles or halvings that are reduced by
point doublings in double-and-add methods with a poten-
GLV). While binary fields have been less attractive on many
tially faster operation called point halving. To simplify the
processors due to availability of fast integer multipliers, the
interest is likely to increase with the characteristic 2 multi- exposition, we assume that TrðaÞ ¼ 1, where Tr :
P
plier on 64-bit operands announced by Intel for upcoming x 7! n1 2i
i¼0 x denotes the trace function from IF2n to IF2 .
processors, since performance profiles will change drama- Point halving is the following operation: given
tically [14], [15]. Q ¼ ðu; vÞ 2 S, compute the unique point R ¼ ðx; yÞ 2 S
The remainder of this paper is organized as follows: In such that Q ¼ 2R. Recall that the (affine) coordinates of Q
Section 2, we review the double-and-add, halve-and-add, can be obtained from those of R via the doubling formulas:
and GLV methods for elliptic curve point multiplication. An
 ¼ x þ y=x; u ¼ 2 þ  þ a; v ¼ x2 þ uð þ 1Þ. To recover R
explicit formulation of the efficiently computable endo-
morphism for elliptic curves over binary fields IFq2 is from Q, one first finds a solution ^ to the quadratic equation
developed in Section 3. Resistance of GLS curves to Weil ^2 þ ^ ¼ u þ a. Then, one has  ¼ ^ þ TrðtÞ, where t ¼
pffiffiffiffiffiffiffiffiffiffiffi pffiffi
descent attacks on the elliptic curve discrete logarithm v þ u^ [24]. One can then compute x ¼ t þ u or x ¼ t if
problem is studied in Section 4. The point multiplication TrðtÞ ¼ 0 or 1, and y ¼ x þ x2 . In the halve-and-add
methods are compared in Section 5, and experimental algorithm described in the next paragraph, repeated
results are presented in Section 6. Finally, we make some
halving of Q is required. To accelerate halving, one uses
concluding remarks in Section 7.
the -representation ðu; Q Þ of Q, where Q ¼ u þ v=u. The
revised formula for t is t ¼ uðu þ Q þ Þ; ^ note that y does
2 POINT MULTIPLICATION METHODS not have to be computed (thus saving a multiplication).
Consider the ordinary elliptic curve To compute kP , one first finds the w-NAF representation
Pl
2 3
E=IF2n : Y þ XY ¼ X þ aX þ b; 2
i¼0 k0i 2i of 2l1 k mod n; here, l  n is the bitlength of k.
P
T h e n , k  l1 0 i 0
i¼0 kl1i =2 þ 2kl ðmod nÞ, w h e n c e kP ¼
defined over a binary field IF2n , and suppose that Pl1 0 1 0
#EðIF2n Þ ¼ hr, where r is a prime and h is small (so, i¼0 kl1i ð2i P Þ þ 2kl P . The halve-and-add algorithm for
r  2n ). Let S denote the unique order-r subgroup of computing kP is analogous to the double-and-add method
EðIF2n Þ. This section reviews the double-and-add, halve- and has an expected cost of approximately
and-add, and GLV methods for computing kP , where P 2 S  
and k 2 ½0; r  1.  w2
 n ~
1D þ ð2  1ÞA þ A þ nH ; ð2Þ
We denote by m the cost of performing a multiplication wþ1
in IF2n , and by A and D, respectively, the cost of performing
where A ~ ¼ A þ m is the cost of a point addition when one of
addition and doubling in EðIF2n Þ. We have D  4m when
López-Dahab projective coordinates [28] are used to the inputs is in -representation, and H is the cost of a
represent points, and A  8m when mixed affine-projective halving. Square roots in IF2n can be computed very
coordinates are employed. efficiently, especially when the reduction polynomial se-
2.1 Double-and-Add lected to represent IF2n is judiciously chosen [2]. For odd n, a
solution to the quadratic equation ^2 þ ^ ¼ c can be obtained
Let w  2 be a positive integer. The width-w NAF of a Pðn1Þ=2 22i
P using the formula ^ ¼ i¼0 c ; the cost of evaluating this
positive integer k is an expression k ¼ l1 i
i¼0 ki 2 , where each
nonzero coefficient ki is odd, jki j < 2w1 ; kl1 6¼ 0, and at expression can be as low as half the cost of a field
most one of any w consecutive digits is nonzero. The length multiplication if there is sufficient storage for some
l of the width-w NAF is at most one more than the length of precomputed values (see [8]). For even n of interest in this
the binary representation of k, and the average density of paper, Section 6.1 describes a solution method with
nonzero digits among all width-w NAFs of length l is comparable cost, and hence, we estimate H  2m as the
approximately 1=ðw þ 1Þ [34], [37]. cost of point halving. The speed advantage of halve-and-add
To compute kP , one first determines the width-w NAF of over double-and-add can now be appreciated by comparing
k, computes Pi ¼ iP for i 2 f1; 3; 5; . . . ; 2w1  1g, and (1) and (2).
initializes an accumulator to 1. The digits of the
width-w NAF are then examined from left to right. For 2.3 GLV Method
each digit ki , the accumulator is doubled and Pki is added Suppose that is a (nontrivial) efficiently computable
to it (if ki 6¼ 0Þ. The expected cost of computing kP can be endomorphism of E defined over IF2n . Let  2 ½2; r  2 be
seen to be approximately the integer such that ðQÞ ¼ Q for all Q 2 S. Then,
  “efficiently computable” means that ðQÞ can be computed
  n much more efficiently than computing Q by standard
1D þ ð2w2  1ÞA þ A þ nD : ð1Þ
wþ1 point multiplication techniques. The GLV strategy [12] for
HANKERSON ET AL.: ANALYZING THE GALBRAITH-LIN-SCOTT POINT MULTIPLICATION METHOD FOR ELLIPTIC CURVES OVER BINARY... 1413

computing kP is to first use the extended Euclidean pffiffiffi the endomorphism is defined over IFq2 . Moreover, it is
algorithm to write k ¼ k1 þ k2  mod r, where k1 ; k2  r, efficiently computable, its cost being roughly equal to a
and then, compute kP ¼ k1 P þ k2 ðP Þ using simultaneous single IFq2 multiplication.
multiple point multiplication (also known as “Shamir’s Now, suppose that #E 0 ðIFq2 Þ ¼ hr, where r is a prime
trick”—see [32, Algorithm 14.88]) or interleaving [12], [33]. and h is small. Let S denote the unique order-r subgroup of
Since the bitlengths of k1 and k2 are half that of k, half of the E 0 ðIFq2 Þ. If Q ¼ ðx; yÞ 2 S, then
point doublings are eliminated. If interleaving is used and if
k1 and k2 are represented in width-w NAFs, then the
2
ðQÞ ¼ 2 1 ðQÞ
 2 
expected cost of computing kP is approximately ¼ x; y þ sq x þ sx
  ¼ ðx; y þ xÞ
 w2
 n n
2 1D þ ð2  1ÞA þ Aþ D : ð3Þ
wþ1 2 ¼ Q;
2
since sq þ s ¼ Tr0 ða þ a0 Þ ¼ 1. Hence, 2 ¼ 1. Thus, there
3 THE ENDOMORPHISM is an integer  satisfying 2 þ 1  0 ðmod rÞ such that
3.1 Weierstrass Form ðQÞ ¼ Q for all Q 2 S.
Let q ¼ 2‘ and let 3.2 Edwards Form
Bernstein et al. [4] showed that all elliptic curves over
E=IFq : Y 2 þ XY ¼ X 3 þ aX2 þ b
binary fields can be written in Edwards form, which has
be an ordinary elliptic curve defined over IFq . Recall that the the advantage of efficient and complete addition formulas
elliptic curve (the latter providing resistance to side-channel attacks). The
following shows that the elliptic curve E 0 =IFq2 and the
~ q : Y 2 þ XY ¼ X 3 þ a~X2 þ b~
E=IF efficiently computable endomorphism can be trans-
formed to Edwards form.
is isomorphic to E over IFq if and only if Trð~ aÞ ¼ TrðaÞ and
P‘1 2i e ffiffilffi e c t d1 2 IFq2 s o t h a t Tr0 ðd1 Þ ¼ Tr0 ða0 Þ þ 1 a n d
Sp
~ ~
b ¼ b, where Tr : x 7! i¼0 x . If E and E are isomorphic 0
Tr ð b=d21 Þ ¼ 1; [4, Theorem 4.3]pshowsffiffiffi that such d1 can be
over IFq , then an isomorphism E ! E~ is given by easily found. Let d2 ¼ d21 þ d1 þ b=d21 , and define
ðx; yÞ 7! ðx; y þ xÞ, where  2 IFq satisfies 2 þ  ¼ a þ a~.  
E20 =IFq2 : Y 2 þ XY ¼ X3 þ d21 þ d2 X 2 þ b:
Now, suppose that #EðIFq Þ ¼ q þ 1  t. Then, #EðIFq2 Þ ¼
P Then, since Tr0 ðd21 þ d2 Þ ¼ Tr0 ða0 Þ, we have E 0 ffi E20 over IFq2
ðq þ 1Þ2  t2 . Let Tr0 : x 7! 2‘1
i¼0 x
2i
denote the trace
function from IFq2 to IF2 , and let a0 2 IFq2 be an element with isomorphism  : E 0 ! E20 defined by ðx; yÞ 7!
ðx; y þ xÞ, where 2 þ  ¼ a0 þ d21 þ d2 . Now, according to
with Tr0 ða0 Þ ¼ 1. Since Tr0 ðaÞ ¼ 0, the elliptic curve
[4], E20 is isomorphic over IFq2 to the complete Edwards
E 0 =IFq2 : Y 2 þ XY ¼ X3 þ a0 X2 þ b binary elliptic curve Ee0 =IFq2 :
is the quadratic twist of E over IFq2 and #E 0 ðIFq2 Þ ¼ d1 ðX þ Y Þ þ d2 ðX 2 þ Y 2 Þ ¼ XY þ XY ðX þ Y Þ þ X2 Y 2 ;
2q2 þ 2  #EðIFq2 Þ ¼ ðq  1Þ2 þ t2 .
The elliptic curves E and E 0 are isomorphic over IFq4 , with isomorphism  : E20 ! Ee0 given by
with the isomorphism given by  
d1 x þ d21 þ d1 þ d2
ðx; yÞ 7!  2 ;
 : E ! E0; ðx; yÞ 7! ðx; y þ sxÞ; x þ y þ d1 þ d1 Þðd21 þ d1 þ d2
  !
where s 2 IFq4 n IFq2 satisfies s2 þ s ¼ a þ a0 . The map  is an d1 x þ d21 þ d1 þ d2
involution, so the inverse isomorphism is 1 ¼ . Define    ;
y þ d21 þ d1 d21 þ d1 þ d2
the Frobenius map  : E ! E by ðx; yÞ 7! ðxq ; yq Þ, and define
and inverse isomorphism 1 : Ee0 ! E20 given by
: E 0 ! E 0 by ¼ 1 :
 2 
d1 d1 þ d1 þ d2 ðx þ yÞ
More explicitly, we have ðx; yÞ 7! ;
xy þ d1 ðx þ yÞ
: ðx; yÞ 7! ðxq ; yq þ sq xq þ sxq Þ:

  x
d1 d21 þ d1 þ d2 þ d1 þ 1 :
Since xy þ d1 ðx þ yÞ

X
‘  Hence, e ¼   1 1 is an efficiently computable endo-
2i 2i1

q
s þs¼ s þs morphism on Ee0 satisfying e ðQÞ ¼ Q for all order-r
i¼1 points Q 2 Ee0 ðIFq2 Þ, and so GLV point multiplication can be
X

i1
effectively carried out in Ee0 ðIFq2 Þ.
¼ ðs2 þ sÞ2
i¼1
X

i1
4 SECURITY
¼ ða þ a0 Þ2 2 IFq2 ; The Gaudry-Hess-Smart Weil descent attack [13] and its
i¼1
generalization by Hess [18] have been shown to be effective
1414 IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 10, OCTOBER 2009

TABLE 1
List of Vulnerable b ¼ ð1 2 Þ2 for the Case ‘ ¼ n ¼ 127; q ¼ 22

for solving the discrete logarithm problem (DLP) in some We consider separately the cases n ¼ 2, n ¼ ‘, and
elliptic curves over characteristic two finite fields of n ¼ 2‘.
composite extension degrees. In this section, we study the
4.1 Case 1: n ¼ 2 and q ¼ 2‘
possible effectiveness of Weil descent attacks on GLS elliptic
curves over IF22‘ , where ‘ is a prime. That is, we examine We have xn þ 1 ¼ ðx þ 1Þ2 . It follows that we must either
whether the attacks can be used to solve the DLP faster than take Ord1 ¼ ðx þ 1Þ2 and Ord2 ¼ ðx þ 1Þ2 (in which case
it would take with Pollard’s rho method which has running the gGHS attack produces a genus-3 nonhyperelliptic curve
time approximately 2‘ (for the hardest instances). C1 over IF2‘ ), or Ord1 ¼ ðx þ 1Þ2 and Ord2 ¼ ðx þ 1Þ (in
We begin by introducing some notation. Let n 2 f2; ‘; 2‘g which case the gGHS attack produces a genus-2 hyper-
and q ¼ 22‘=n . Let K ¼ IF22‘ and k ¼ IFq . Let : K ! K elliptic curve C2 over IF2‘ ). Since the fastest algorithm
denote the Frobenius automorphism defined by
7!
q . If known for solving the DLP in JC1 ðIF2‘ Þ has running time
P approximately 2‘ [6], and since the fastest algorithm known
f ¼ di¼0 ci xi is aP polynomial in IF2 ½x and  2 K, then we
i for the DLP in JC2 ðIF2‘ Þ is Pollard’s rho method, the
define fð ÞðÞ ¼ di¼0 ci  q . For  2 K, we denote by Ord
gGHS attack with n ¼ 2 is ineffective.
the unique nonzero polynomial f 2 IF2 ½x of least degree
satisfying fð ÞðÞ ¼ 0. It is easy to see that Ord is a divisor 4.2 Case 2: n ¼ ‘ and q ¼ 22
of xn þ 1, and that Ord ¼ Ord 2 . Let d denote the multiplicative order of 2 modulo n. We
Let E : Y 2 þ XY ¼ X3 þ aX2 þ b be an elliptic curve have xn þ 1 ¼ ðx þ 1Þf1 f2 fs , where fi are the pairwise
defined over IF22‘ . In the following, we are really only distinct irreducible polynomials of degree d and s ¼
interested in those curves for which #EðIF22‘ Þ ¼ hr, where r ðn  1Þ=d [31, Lemma 7]. One can check that the selections
is a prime and h is small, whence r  22‘ ; these are the Ord1 ¼ fi and Ord2 ¼ x þ 1 yield the smallest useful
curves of interest in cryptographic applications. Since genus, namely, g ¼ 2d  1. Now, for each prime ‘ 2
Tr0 ðaÞ ¼ 1 for all GLS curves, we fix a to be some element ½80; 256 with ‘ 62 f89; 127g, we have d  15. For these ‘,
satisfying Tr0 ðaÞ ¼ 1, and sometimes, denote E by Eb . Note the gGHS attack produces a curve C of genus at least
that #EðIF22‘ Þ  2 ðmod 4Þ. 215  1 ¼ 32;767; the orders of the jacobians JC ðIF22 Þ have
In the generalized Gaudry-Hess-Smart (gGHS) attack [18], bitlength at least 65,534. Since the hardest instances of the
one first writes b ¼ ð1 2 Þ2 , where 1 ; 2 2 K and either DLP in elliptic curves over 512-bit fields is roughly equally
TrK=k ð1 Þ 6¼ 0 or TrK=k ð2 Þ 6¼ 0. Let s1 ¼ degðOrd1 Þ; s2 ¼ as difficult as factoring 15,360-bit integers, and since the
degðOrd2 Þ, and t ¼ degðlcmðOrd1 ; Ord2 ; x þ 1ÞÞ. Then, the latter problem is certainly no harder than the DLP in
gGHS attack reduces the DLP in EðKÞ to the DLP in the 65,534-bit jacobians, it follows that the gGHS attack is
ineffective for all ‘ 62 f89; 127g.
jacobian JC ðkÞ of a curve C of genus g ¼ 2t  2ts1  2ts2 þ 1
For ‘ ¼ 89, we have d ¼ 11. Hence, the gGHS attack
defined over k. The curve C is hyperelliptic if and only if
produces curves C of genus at least 211  1 ¼ 2;047. The
1 2 k or 2 2 k. Since #JC ðkÞ  qg , a necessary condition for bitlength of #JC ðIF22 Þ is at least 4,094. Since the hardest
JC ðkÞ to contain a subgroup of order r is g  n. One can then instances of the DLP in elliptic curve over 178-bit fields is
hope, at least if g is not too large, that the known discrete log certainly no more difficult than factoring 1,500-bit integers,
algorithms for higher genus curves could be used to solve the the gGHS attack is ineffective for ‘ ¼ 89.
DLP in JC ðkÞ in time less than 2‘ . For ‘ ¼ 127, we have d ¼ 7 and s ¼ 18. For some elliptic
Even if the gGHS attack turns out to be ineffective for a curves over IF22‘ , the gGHS attack produces a genus-127
particular GLS curve E 0 , it may be effective for an isogenous hyperelliptic curve C over IF22 . According to the estimates
curve E defined over IF22‘ .1 In that case, it is generally in [30], the Enge-Gaudry index-calculus algorithm [7] can
feasible to map the DLP in E 0 ðIF22‘ Þ to the DLP in EðIF22‘ Þ by solve the DLP in JC ðIF22 Þ in time approximately 252 , which
using a chain of low-degree isogenies (see [9] and [20]). is much faster than the 2127 time it would take using
Thus, for a chosen GLS curve E 0 , it is important to verify Pollard’s rho method. Thus, the gGHS attack is indeed
that the gGHS attack is ineffective for all elliptic curves effective for some elliptic curves when ‘ ¼ 127 and n ¼ 127.
isogenous to E 0 . The vulnerable b and upper bounds on their numbers are
listed in Table 1.2 In total, there are at most 236 vulnerable b.
1. Two elliptic curves E1 and E2 defined over a finite field K are
isogenous over K if #E1 ðKÞ ¼ #E2 ðKÞ. The equivalence classes of elliptic 2. For any factor f 2 IF2 ½x of xn  1, the number of  2 IF22‘ satisfying
curves with respect to isogeny are called isogeny classes. Ord ¼ f can be easily computed using [31, Theorem 5].
HANKERSON ET AL.: ANALYZING THE GALBRAITH-LIN-SCOTT POINT MULTIPLICATION METHOD FOR ELLIPTIC CURVES OVER BINARY... 1415

TABLE 2
List of Vulnerable b ¼ ð1 2 Þ2 for the Case ‘ ¼ 127; n ¼ 254; q ¼ 2

Note, however, that if b is vulnerable, then so is b2 . selected GLS curve has a vulnerable curve in its isogeny
Moreover, the elliptic curves Eb and Eb2 are isogenous over class is at most 213 =2127  1=2114 , which is certainly negli-
IF2254 . Hence, the number of isogeny classes that contain at gible. Furthermore, one can efficiently verify that there is no
least one vulnerable curve is at most 236 =254  228 . Now, vulnerable curve isogenous to a given GLS curve.
there are  2127 isogeny classes of ordinary elliptic curves
over IF2254 that p have 4.4 Summary
ffiffiffiffiffiffiffiffi order congruent to 2 modulo 4, of
which roughly 2127 ¼ 263:5 classes contain a GLS curve. We have shown that GLS curves over IF22‘ with ‘ prime,
We assume that the probability of a curve E having a ‘ 2 ½80; 256, and ‘ 6¼ 127, are not vulnerable to the general-
vulnerable curve in its isogeny class is independent of ized GHS Weil descent attack. Moreover, the probability
whether E is a GLS curve—this is a plausible assumption that a randomly selected GLS curve over IF2254 is vulnerable
because there is no reason to believe that bs in Table 1 are (or isogenous to a vulnerable curve) is negligibly small, and
more likely to be in IF2127 , and because the vulnerability of a in any case, there is an efficient check that can be performed
curve does not seem to depend on its order. Under this to rule out this possibility. Hence, GLS curves over IF22‘
assumption, the probability that a randomly selected with ‘ prime can be easily selected so that the fastest attack
GLS curve has a vulnerable curve in its isogeny class is at known on the DLP is Pollard’s rho method.
most 228 =2127  1=299 , which is certainly negligible.
For the case ‘ ¼ 127, an explicit check that a given GLS 5 COMPARISONS
curve E 0 does not succumb to the gGHS attack would
We examine point multiplication on GLS curves E 0 =IF22‘ :
require enumerating all the (at most) 228 b in Table 1
Y 2 þ XY ¼ X3 þ a0 X2 þ b and random curves E=IF2n :
(excluding the squares of a selected b), and then checking
Y 2 þ XY ¼ X3 þ aX2 þ b (where n  2‘).
that #Eb ðIF2254 Þ 6¼ #E 0 ðIF2254 Þ for each b. The Magma
For the case of GLS curves, we will assume that ‘ is a
package, running on a 1 GHz Sun V440, can compute the
prime and that the curve coefficient b is chosen at random
order of a randomly selected elliptic curve over IF2254 is
subject to the requirement that #E 0 ðIF22‘ Þ ¼ 2r, where r is a
about 0.42 seconds. Thus, performing the explicit check
prime (and where a0 2 IF22‘ is an arbitrary element with
would require about 1,305 days of CPU time, a feasible task
Tr0 ða0 Þ ¼ 1). As explained in Section 3, the curve order
since it can be easily parallelized.
#E 0 ðIF22‘ Þ can be determined by first computing the order
4.3 Case 3: n ¼ 2‘ and q ¼ 2 N ¼ 2‘ þ 1  t of Y 2 þ XY ¼ X 3 þ b over IF2‘ ; one then has
Let d denote the multiplicative order of 2 modulo n. We #E 0 ðIF22‘ Þ ¼ ð2‘  1Þ2 þ t2 .
have xn þ 1 ¼ ðx þ 1Þ2 f12 f22 fs2 , where fi are the pair- For the case of random curves, we will consider the
wise distinct irreducible polynomials of degree d and s ¼ common scenario where n is prime, and where the curve
ð‘  1Þ=d. One can check that the gGHS attack produces a coefficient b is chosen at random subject to the requirement
curve C=IF2 of genus at least 2dþ1 . If ‘ 2 ½80; 256 is a that #EðIF2n Þ ¼ hr, where h is 2 or 4 (depending on TrðaÞ)
prime with ‘ 62 f89; 127g, then d  15, while if ‘ ¼ 89, then and r is prime; without loss of generality, we may assume
d ¼ 11. Thus, as in the previous case of n ¼ ‘, the gGHS that a 2 f0; 1g.
attack is ineffective for all ‘ 6¼ 127. Table 3 summarizes point multiplication costs when
parameters have been chosen compatible with the corre-
We next consider the case ‘ ¼ 127 for which d ¼ 7 and
sponding method, where A0 and D0 denote cost of affine-
s ¼ 18. For some elliptic curves over IF2254 , the gGHS attack
coordinate addition and doubling, respectively, on the
produces a genus-256 hyperelliptic curve C over IF2 . Since
GLS curve. The remainder of this section explains the
the DLP in JC ðIF2 Þ can be solved much faster than the entries in Table 3, discusses assumptions and recent
2127 time it would take using Pollard’s rho method, the gGHS formula improvements relative to the table, and highlights
attack is indeed effective for some elliptic curves when ‘ ¼ computational and practical differences between the
127 and n ¼ 254. The vulnerable b and upper bounds on their curves and methods.
numbers are listed in Table 2. In total, there are at most 221
vulnerable b. As in the n ¼ 127 case, the number of isogeny 5.1 Random Curves
classes that contain at least one vulnerable curve is at most Fong et al. [8] compared point multiplication via
221 =254  213 . Hence, the probability that a randomly doubling-based and halving-based methods on random
1416 IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 10, OCTOBER 2009

TABLE 3
Estimates for Point Multiplication on Random Curves E=IF2n and GLS Curves E 0 =IF22‘

Multiplication costs
pffiffiffi for IF2n and IF22‘ are denoted by m and M, respectively. Inversion cost in IF22‘ is denoted by I. Costs for multiplication by curve
parameter b (or b) for each curve are denoted by b and B, estimated at m=2 and M=3; denotes the cost of applying the endomorphism. The costs
in field multiplications use w ¼ 5; I ¼ 6M; ¼ M, and scalar bitlengths 256 and 253 for E and E 0 , respectively.

TABLE 4
Point Operation cost for Mixed-Coordinate Additions and Projective Doublings,
Where the Projective Point ðX : Y : ZÞ Corresponds to the Affine Point ðX=Z; Y =Z 2 Þ

pffiffiffi
M and S denote the costs of field multiplication and squaring, respectively, and a; b; b denote the cost of multiplication by the corresponding curve
parameters.

curves with a ¼ 1, with operation count and experimental versus halving comparison when precomputation signifi-
data strongly favoring halving. Since then, formula cantly reduces the cost of multiplication by b. The compar-
improvements due to Kim and Kim [21] offer a ison against halving is not quite as straightforward as it
significant acceleration to point doubling in the scenario appears, since there is a one-multiplication “penalty” on
where halving applies, namely, a ¼ 1 with a modest essentially every point addition due to conversion from
amount of per-curve precomputation permitted.3 -coordinates. However, the a ¼ 1 formula for doubling
Table 4 summarizes the costs of point addition and does not pay this penalty and this is the comparison that is
doubling in López-Dahab coordinates with various formu- most meaningful in the present context.
las and parameters. The significance of the Kim and Kim The counts in terms of field multiplication in Table 3
result is that total multiplications for doubling remain assume that field representations can be selected where
unchanged from earlier formulas, but the number of square roots are inexpensive, in which case the halving
multiplications by curve parameter b is now 2 rather than step is dominated by a multiplication and the cost of the
1. Since these formulas do not accelerate typical halving- quadratic solver. In the modest-storage scenario with fields
based methods, we are interested in a revised doubling of interest in this paper, we assume that a point halving can
be done in 5=3 the time of a field multiplication (so,
3. Halving applies to curves with TrðaÞ ¼ 0, however, there is a penalty H  53 m), and that multiplication by a constant with
of at least 1=2 field multiplication per halving step [23], [24]. The doubling-
based approach has a smaller “chaining penalty” with the a ¼ 0 formulas of precomputation requires
pffiffiffi half the time of a general multi-
Bernstein et al. [4]. plication (so, b  b  m=2). Under these assumptions,
HANKERSON ET AL.: ANALYZING THE GALBRAITH-LIN-SCOTT POINT MULTIPLICATION METHOD FOR ELLIPTIC CURVES OVER BINARY... 1417

Table 3 gives a factor 1.26 advantage to the halving-based can be combined, with scalar recoding performed as
approach on E. This is smaller than the factor 1.41 estimate follows. Assume that r  22‘ and let k0 ¼ 2‘ k mod r. Find
in [8], where the López-Dahab doubling formulas were k0  k01 þ k02  ðmod rÞ via the usual GLV technique, giving
used without offline precomputation (but halving was k0i of expected length approximately ‘. Then, ki k0i =2‘
estimated at a higher two-multiplication cost). gives k  k1 þ k2  ðmod rÞ with ki in essentially the form
5.2 GLS Curves we seek, other than a few terms which will involve
doubling in point multiplication.
The GLS curves E 0 =IF22‘ : Y 2 þ XY ¼ X3 þ a0 X2 þ b are Finally, we note that the quadratic extension in GLS is
“small parameter” in the sense that b 2 IF2‘ and a0 can be attractive in the sense that operations in IF22‘ reduce to
chosen arbitrarily subject to the trace requirement Tr0 ða0 Þ ¼ 1. operations in IF2‘ . In particular, precomputation for the
Compared to the random curves, p multiplication
ffiffiffi by the quadratic solver can require less storage than in the random
corresponding curve parameters b or b is a smaller fraction curve case, and inversion in IF22‘ is reduced to three
of the cost of a general multiplication. We can choose a0 so that multiplications and an inversion in IF2‘ . This inversion is
multiplication by a0 is inexpensive; however, the GLS curves likely to be sufficiently inexpensive that point addition can
are trace-1 but not a0 ¼ 1. The Kim and Kim formula for point be done in affine coordinates (and so halving-based
doubling does not apply, but the techniques for a ¼ 0 in the methods can run entirely in affine).
formula of Bernstein-Lange-Farashahi can be adapted as 5.3 Additional Accelerations
follows. To find 2P ¼ ðx3 ; y3 Þ for P ¼ ðx; yÞ 62 fP ; 1g, write Two types of accelerations are suggested by the GLS
the affine formulas as x3 ¼ x2 þ b=x2 and y3 ¼ x2 þ ð þ 1Þx3 , technique and the improved Kim and Kim doubling
where  ¼ x þ y=x. Then, formulas that exploit precomputation. We briefly consider
2

the effects of specializing curve parameters for random
x þ y þ x x4 þ b
y3 ¼ x2 þ curves E and GLS curves E 0 (where GLS has already forced a
x x2
specialization of b, namely, b 2 IF2‘ ). We also examine
6 2 4
x þ xðy þ y þ xÞðx þ bÞ precomputation strategies that offer less dramatic accelera-
¼ ;
x4 tion than those involving curve parameters, but are similar in
and, as in (part of) Kim and Kim, the substitution x6 ¼ the sense that they can reuse tables across point operations.
ðy2 þ xy þ a0 x2 þ bÞ2 from the curve equation is used and the
5.3.1 Specialized Curve Parameters
result written in López-Dahab projective form ðU3 ; V3 ; W3 Þ.
Since the GLS curves E 0 are special in the sense that b 2 IF2‘ ,
Straightforward arithmetic gives the a ¼ 0 Bernstein et al.
we consider specialized b for E and further specialization
formulas [4] but with the addition of a0 ða0 T3 þ S3 Þ in the
on E 0 to speed point multiplication. At the extreme are
assignment to V3 . This formulation is of interest only if
Koblitz curves where b ¼ 1, in which case different
multiplication by a0 is inexpensive, which is the case for techniques apply and will not be considered here. For
GLS curves since parameter a0 can be chosen so that this non-Koblitz curves, selecting specialized b will reduce the
multiplication is essentially free. cost of doubling, while the cost of halving remains the
Unlike Kim and Kim, the “two multiplications by same. If b is of low hamming weight, for example, then
constants” a ¼ 0 Bernstein et al. formulas (and those pffiffiffi
multiplications by b and b (given suitable field representa-
adapted here for GLS) chain the quantity XZ in point tion) in point doubling become inexpensive.
doubling. The consequence can be similar to the point- The overall improvement can be incremental if precom-
halving method, where a point addition has a “penalty” of putation was already giving these multiplications at 1=2 or
an extrapffiffiffimultiplication. There is also multiplication by both 1=3 the cost of a general multiplication in E and E 0 ,
b and b in point doubling, although (as in Kim and Kim) respectively, since the savings are diluted by point addi-
this can be done via two multiplications by b at the cost of tions and other operations. However, if quite special b is
an extra squaring. acceptable and gives associated multiplication at, say 1=8,
The GLV technique also has a precomputation penalty in the cost of general multiplication, then the estimates in
the sense that there are now two inputs P and ðP Þ for Table 3 for E give 976 and 925 as the corresponding
which precomputation is required. If width-w NAF meth- IF2n -multiplication counts for point multiplication on E via
ods are employed, then the basic issue is that precomputa- doubling and halving, respectively, predicting that the two
tion is used less efficiently when interleaving k1 P and methods run at approximately the same time.
k2 ðP Þ. In practice, this penalty is small unless space
constraints limit the amount of precomputation to less than 5.3.2 Reuse of Per-Point Precomputation
four points. Further, the precomputation involving ðP Þ Reuse of precomputation for field multiplication can be
can be obtained from that for P since is inexpensive applied per point, although the possible acceleration is
compared to point addition. For suitable a0 ; can be much smaller than with modestpamounts of per-curve
ffiffiffi
essentially free, in which case the table for ðP Þ can be precomputation involving b and b. King [22] describes
omitted and the values obtained on-demand from the table reuse of multiplication tables within a point double or point
for P . addition, and this technique is examined in more detail in
The Tr0 ða0 Þ ¼ 1 condition on the GLS curves is [3] (where it is called “sequential multiplications”) in the
favorable to point halving techniques (as discussed for context of hyperelliptic curves where the arithmetic
random curves). The GLV and point halving techniques provides more opportunity to exploit the method.
1418 IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 10, OCTOBER 2009

TABLE 5
Curve and Field Parameters

King also describes a per-point precomputation strategy via the OpenSSL libraries.5 There are divisions required in
that applies in some point multiplication methods where GLV recoding, but these can be done per curve so that only
there is a small set of points repeatedly accessed, as in left- multiplications and shifts are involved per scalar. Recoding
to-right width-w NAF methods. The basic idea is to build for halving involves a single per-scalar modular reduction.
tables for some of the field multiplications in point addition Regardless, these operations are a minor portion of the
involving coordinates from the small set, since these overall cost of scalar multiplication.
coordinates will be used repeatedly. The cost of this
precomputation is spread across the entire point multi- 6.1.1 Field Multiplication
plication rather than within a point operation, although Base field multiplication is via comb methods [29]. Briefly, a
admittedly, the method is useful only for small w and the common case of combing calculates c d with a single table
gains are incremental. Further, the right-to-left windowing
of precomputation containing p d for polynomials p of
method in [8] used with halve-and-add (when inversions
degree less than w for some small w (e.g., w ¼ 4). The words
are expensive) precludes this acceleration, since the small
of c are then “combed” w bits at a time to select the
set of fixed points is replaced by multiple accumulators.
appropriate precomputed value to add at the desired
location of the accumulator. These have been among the
6 EXPERIMENTAL RESULTS fastest methods for multiplication on general purpose
processors and can be combined with shallow-depth
For a concrete comparison, we implemented point multi-
Karatsuba-like techniques to control code expansion. How-
plication methods on two curves, each at roughly the 128-bit
ever, going from 32- to 64-bit code can reduce the advantage
security level. The target environment is “workstation-class”
of combing over the Karatsuba-down-to-word-multiplica-
systems which do not have severe memory constraints. In
tion used, for example, in the well-known MIRACL library
this section, we describe the curves, implementation issues,
and development environment, and give timings. [36].6 Nonetheless, combing appears to be fastest in our
environment, and we combed on field elements with comb
We chose curve and field parameters to be compatible
width 4. For 32- and 64-bit code, elements in IF2257 can be
with the 128-bit security requirement and with the methods
represented in eight or four words along with an extra bit.
of interest. For random curves, we chose n ¼ 257, and for
Multiplication suffers only a small penalty by handling this
GLS curves, we could not resist selecting ‘ ¼ 127; if
bit separately.
concerns about the security of elliptic curves over IF2254 Elements in the extension field IF2254 ¼ IF2127 ½u=ðu2 þ
remain (see Section 4), then ‘ ¼ 131 would be a suitable u þ 1Þ are represented as a pair ða0 ; a1 Þ ¼ a0 þ a1 u of
alternative. For the random curve E, point halving and the IF2127 -elements, and extension field multiplication requires
best doubling formulas desire a ¼ 1, and we chose b three multiplications in IF2127 via Karatsuba. Squaring
pseudorandomly so that #EðIF2257 Þ ¼ 2r with r prime. The requires two IF2127 -squarings. We expect similar multi-
reduction polynomials were selected so that both reduction plication times for IF2254 and IF2257 , although the practical
and square roots would be at low cost. Table 5 summarizes comparison is not as clear as the mathematics indicates.
the selections.4 Roughly speaking, comb multiplication looks best when
For GLS, the choice a0 ¼ u (compatible with the trace the machine register size is small compared to the number
requirement) makes multiplication with a0 very inexpensive of words representing a field element. Depending on
(comparable to selecting a 2 f0; 1g for random curves). The platform and n, it is possible that combing is the fastest on
corresponding s in GLS (see Section 3.1) satisfies sq þ s ¼ field elements rather than via shallow-depth Karatsuba-
u þ 1 and so is essentially free. Curve parameter b 2 IF2127 like techniques combined with combing (essentially, the
was chosen so that #E 0 ðIF2254 Þ ¼ 2r, where r is a prime. technique for the extension field).
We used combing with windows
pffiffiffi of width 8 for multi-
6.1 Implementation plications by constants (b and b). This is double the window
The field and elliptic curve code was written in the size used for general multiplication, and the precomputation
C programming language, except for a small fragment in of 256 elements (per constant) is offline. Hence, the runtime is
assembly to assist in finding the degree of a polynomial (for expected to be approximately half the time of a general
inversion). The big-number arithmetic required in the GLV multiplication. A possible downside of combing is that
method (to recode the scalar as k  k1 þ k2  ðmod rÞ) and compilers can be rather sensitive to the precise form of the
halving-based methods (to recode the scalar in base 1=2) is
5. The library at http://www.openssl.org is used in the communications
127 pffiffiffi tool OpenSSH, for example. Here, we are using only the big-number subset.
4. There are polynomials x þ rðxÞ giving two-term x, where r has 6. In personal communication, Julio López reports comb variants that
smaller degree than in fðxÞ ¼ x127 þ x63 þ 1; we chose f since there are can better exploit certain processor characteristics; in particular, his timings
powers differing by a multiple of 64, and the higher degree of r is not a on an AMD Athlon64 are 35 percent faster on IF21;223 than timings from an
significant factor in our environment. The root also is of advantageous form. Opteron in [16].
HANKERSON ET AL.: ANALYZING THE GALBRAITH-LIN-SCOTT POINT MULTIPLICATION METHOD FOR ELLIPTIC CURVES OVER BINARY... 1419

TABLE 6
Timings (in 103 Cycles) on a 3.16 GHz Xeon with Sun C 5.9

Field operation “const” denotes multiplication by a constant with precomputation, and “solve” finds  given trace-0 c so that 2 þ  ¼ c. “D&A” is
width-5 NAF double-and-add. “H&A” is width-5 NAF with right-to-left half-and-add on E [17, Algorithm 3.91] and affine additions on E 0 . The GLV
decomposition is kP ¼ k1 P þ k2 ðP Þ with width-5 NAF applied to k1 and k2 .

code, e.g., some compilers do not optimize arrays as well as 3.16 GHz). Roughly speaking, this processor family
scalars, even when indices are known at compile time. As a includes the Intel Core2 and the Athlon64 and Opteron
platform-dependent example, array dimensions and access from AMD, with similar instruction sets and timings. The
order in a table-lookup method such as comb can mean compiler is Sun C 5.9, producing 64-bit objects.7
10 percent overall difference in multiplication due to the cost The point multiplication times include the cost of scalar
of addressing. recoding (k  k1 þ k2  ðmod rÞ in GLV, and base 1=2 form
of k in halving). A sequence of pseudorandom elements and
6.1.2 Inversion scalars was used in the timings to preclude effects such as
Inversion is via a Euclidean algorithm variant, and only branch prediction that would not apply outside of the
limited optimization was performed. An assembly language laboratory. As expected, field multiplication times for IF2257
fragment for Pentium-like systems was used to exploit a and IF2254 are roughly comparable. If these times were the
bitscan instruction (bsr) useful for speeding degree calcula- same, then Table 3 would predict that E 0 is faster than E for
tions. Inversion in IF2254 was performed by elementary point multiplication in the non-GLV timings. The experi-
matrix methods costing three IF2127 -multiplications and an mental data show that E does better than predicted in this
inversion in IF2127 . comparison, and the main reason is that the comb multi-
plier is more efficient there than on the subfield IF2127 .
6.1.3 Solving Quadratics The GLV technique provides an acceleration of 27 and
Finding solutions to 2 þ  ¼ c for trace-0 c in IF2257 was 23 percent for doubling- and halving-based methods on
done via Algorithm 3.86 of [17] with 4-bit lookups in E 0 ; as expected, the combination of GLV decomposition
accumulation of half-traces. This technique is easier to and point halving gives the best time. A comparison of
implement for a given field than the small-table methods interest is between E 0 and E, and this is the comparison
illustrated in [8], and uses less storage and has lower for prime fields in [11] where the acceleration from GLV is
accumulation cost than the method used in [2]. The 16 percent for 64-bit code on an Intel Core2 and 30 percent
reduction polynomial x257 þ x41 þ 1 gives especially clean on an 8-bit Atmel. The corresponding comparison for
and efficient code, although this choice builds the table point halving methods in our case is 26 percent. While the
from 84 half-trace computations rather than the 71 elements comparison against E may indeed be the “right” one, it
specified by this algorithm for x257 þ x12 þ 1 (but the latter comes with a caveat that the measurement is polluted by
polynomial increases the cost of roots). The extra-digit differences in field multiplication times, a portion of
storage-and-performance penalty noted for multiplication which are due to programmer talent or lack thereof and
is avoided in the quadratic solver by not tracking the vary by processor. A significant difference between the
constant term. cases for curves over prime fields from those over binary
Solutions in IF2254 are found by reduction to IF2127 as fields is the cost ratio of point addition to doubles. As
follows. For c ¼ c0 þ c1 u with ci 2 IF2127 , solve 2 þ  ¼ c1 rough approximations in the scenarios of interest, the ratio
to get 1 , and then obtain 0 from 2 þ  ¼ c00 þ Trðc00 Þ, in the prime field case is 11=8, while the ratio for binary
where c00 ¼ c0 þ 21 ¼ c0 þ c1 þ 1 . The solution is then fields is 8=4. Since the GLV technique reduces doubles but
0 þ ð1 þ Trðc00 ÞÞu. not additions, the opportunity for improvement is appar-
Square root computations are inexpensive with the ently larger for prime fields.
choice of reduction polynomials f. Coefficients corre-
sponding to even and odd powers of x were P extracted
pffiffiffi 7 CONCLUSIONS
simultaneously by 8-bit lookup, and then, c ¼ c2i xi þ
pffiffiffi P pffiffiffi
i
x c2iþ1 x . Since the degree of x is at most ðdeg f þ The GLS curves over binary fields offer significant accelera-
1Þ=2 in our case, no reduction is required and finding a tion via the GLV decomposition technique. The advantage
square root is less expensive than a squaring. extends to comparisons against random curves, and with

6.2 Performance Comparisons 7. Implementation was with general purpose registers only. Brent et al.
[5] discuss techniques to speed polynomial multiplication (especially for
Timings in Table 6 were obtained on a Sun X4150, a 64-bit larger degree) in characteristic 2 and include timings with the “single-
system built on the Intel Xeon processor (model 5460, instruction multiple-data” (SIMD) register set of the Core2.
1420 IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 10, OCTOBER 2009

methods based on point halving. Recent improvements to [19] I. Iijima, K. Matsuo, J. Chao, and S. Tsujii, “Construction of
Frobenius Maps of Twists Elliptic Curves and Its Application to
doubling formulas have narrowed the performance gap Elliptic Scalar Multiplication,” Proc. Symp. Cryptography and
between the doubling- and halving-based techniques, Information Security (SCIS ’02), 2002.
although halving retains a significant advantage provided a [20] D. Jao, S. Miller, and R. Venkatesan, “Do All Elliptic Curves of the
Same Order Have the Same Difficulty of Discrete Log?” Proc.
threshold amount of per-field precomputation is available Advances in Cryptology (ASIACRYPT ’05), pp. 21-40, 2005.
for the quadratic solver. On the other hand, if fairly [21] K. Kim and S. Kim, “A New Method for Speeding Up Arithmetic
specialized curve parameters are acceptable, then the on Elliptic Curves over Binary Fields,” Cryptology ePrint Archive:
Report 2007/181, http://eprint.iacr.org/2007/181, 2007.
analysis shows that the new formulas can eliminate most of [22] B. King, “An Improved Implementation of Elliptic Curves over
the advantage of halving. GF ð2n Þ When Using Projective Point Arithmetic,” Proc. Int’l
Workshop Selected Areas in Cryptography (SAC ’01), pp. 134-150,
2001.
ACKNOWLEDGMENTS [23] B. King and B. Rubin, “Improvements to the Point Halving
Algorithm,” Proc. Australasian Conf. Information Security and
The authors wish to thank the anonymous referees for their Privacy (ACISP ’04), pp. 262-276, 2004.
suggestions. [24] E. Knudsen, “Elliptic Scalar Multiplication Using Point Halving,”
Proc. Advances in Cryptology (ASIACRYPT ’99), pp. 135-149, 1999.
[25] N. Koblitz, “CM-Curves with Good Cryptographic Properties,”
Proc. Advances in Cryptology (CRYPTO ’91), pp. 279-287, 1991.
REFERENCES [26] T. Lange, “A Note on López-Dahab Coordinates,” Tatra Mountains
[1] E. Al-Daoud, R. Mahmod, M. Rushdan, and A. Kilicman, “A New Math. Publications, vol. 33, pp. 75-81, http://eprint.iacr.org/2004/
Addition Formula for Elliptic Curves over GF ð2n Þ,” IEEE Trans. 323, 2006.
Computers, vol. 51, no. 8, pp. 972-975, Aug. 2002. [27] C. Lim and H. Hwang, “Speeding Up Elliptic Scalar Multi-
[2] R. Avanzi, “Another Look at Square Roots (And Other Less plication with Precomputation,” Proc. Int’l Conf. Information
Common Operations) in Fields of Even Characteristic,” Proc. Int’l Security and Cryptology, pp. 102-119, 1999.
Workshop Selected Areas in Cryptography (SAC ’07), pp. 138-154, [28] J. López and R. Dahab, “Improved Algorithms for Elliptic Curve
2007. Arithmetic in GF ð2n Þ,” Proc. Int’l Workshop Selected Areas in
[3] R. Avanzi and N. Thériault, “Effects of Optimizations for Software Cryptography (SAC ’98), pp. 201-212, 1998.
Implementations of Small Binary Field Arithmetic,” Proc. Int’l [29] J. López and R. Dahab, “High-speed software multiplication in
Workshop Arithmetic of Finite Fields (WAIFI ’07), pp. 69-84, 2007. IF2m ”, Progress in Cryptology Proc. First Int’l Conf. in Cryptology in
[4] D. Bernstein, T. Lange, and R. Farashahi, “Binary Edwards India (INDOCRYPT ’00), pp. 203-212, 2000.
Curves,” Proc. Workshop Cryptographic Hardware and Embedded [30] M. Maurer, A. Menezes, and E. Teske, “Analysis of the GHS Weil
Systems (CHES ’08), pp. 244-265, 2008. Descent Attack on the ECDLP over Characteristic Two Finite
[5] R.P. Brent, P. Gaudry, E. Thomé, and P. Zimmermann, “Faster Fields of Composite Degree,” LMS J. Computation and Math., vol. 5,
Multiplication in GF ð2Þ½x,” Proc. Symp. Algorithmic Number Theory pp. 127-174, 2002.
(ANTS-VIII), pp. 153-166, 2008. [31] A. Menezes and M. Qu, “Analysis of the Weil Descent Attack of
[6] C. Diem and E. Thomé, “Index Calculus in Class Groups of Non- Gaudry, Hess and Smart,” Proc. Topics in Cryptology: Cryptogra-
Hyperelliptic Curves of Genus Three,” J. Cryptology, vol. 21, phers’ Track at RSA (CT-RSA ’01), pp. 308-318, 2001.
pp. 593-611, 2008. [32] A. Menezes, P. van Oorschot, and S. Vanstone, Handbook of Applied
[7] A. Enge and P. Gaudry, “A General Framework for Subexponen- Cryptography. CRC Press, 1996.
tial Discrete Logarithm Algorithms,” Acta Arithmetica, vol. 102, [33] B. Möller, “Algorithms for Multi-Exponentiation,” Proc. Int’l
pp. 83-103, 2002. Workshop Selected Areas in Cryptography (SAC ’01), pp. 165-180,
[8] K. Fong, D. Hankerson, J. López, and A. Menezes, “Field 2001.
Inversion and Point Halving Revisited,” IEEE Trans. Computers, [34] J. Muir and D. Stinson, “Minimality and Other Properties of the
vol. 53, no. 8 pp. 1047-1059, Aug. 2004. Width-w Nonadjacent Form,” Math. of Computation, vol. 75,
[9] S. Galbraith, “Constructing Isogenies between Elliptic Curves over pp. 369-384, 2006.
Finite Fields,” LMS J. Computation and Math., vol. 2, pp. 118-138, [35] R. Schroeppel, “Automatically Solving Equations in Finite Fields,”
1999. US patent 09/834,363, 2001.
[10] S. Galbraith, F. Hess, and N. Smart, “Extending the GHS Weil [36] M. Scott, MIRACL—Multiprecision Integer and Rational Arithmetic C
Descent Attack,” Proc. Advances in Cryptology (EUROCRYPT ’02), Library, http://www.computing.dcu.ie/~mike/miracl.html, 2008.
pp. 29-44, 2002. [37] J. Solinas, “Efficient Arithmetic on Koblitz Curves,” Designs, Codes
[11] S. Galbraith, X. Lin, and M. Scott, “Endomorphisms for Faster and Cryptography, vol. 19, pp. 195-249, 2000.
Elliptic Curve Cryptography on a Large Class of Curves,” Proc.
Advances in Cryptology (EUROCRYPT ’09), pp. 518-535, 2009. Darrel Hankerson is a professor in the Department of Mathematics,
[12] R. Gallant, R. Lambert, and S. Vanstone, “Faster Point Multi- Auburn University, Alabama. His recent research interests are in
plication on Elliptic Curves with Efficient Endomorphisms,” Proc. cryptography, in particular, efficient implementation. He is a coauthor
Advances in Cryptology (CRYPTO ’01), pp. 190-200, 2001. of the Guide to Elliptic Curve Cryptography.
[13] P. Gaudry, F. Hess, and N. Smart, “Constructive and Destructive
Facets of Weil Descent on Elliptic Curves,” J. Cryptology, vol. 15, Koray Karabina is currently working toward the PhD degree at the
pp. 19-46, 2002. Department of Combinatorics and Optimization, University of Waterloo,
[14] S. Gueron and M. Kounavis, “Carry-Less Multiplication and Its Canada. His research interests are in mathematical cryptography.
Usage for Computing the GCM Mode,” white paper, Intel
Corporation, http://softwarecommunity.intel.com/articles/eng/ Alfred Menezes is a professor in the Department of Combinatorics and
3787.htm, 2008. Optimization at the University of Waterloo, Canada. His research
[15] S. Gueron and M. Kounavis, “A Technique for Accelerating interests are in cryptography and algorithmic number theory. He is a
Characteristic 2 Elliptic Curve Cryptography,” Proc. Fifth coauthor of Handbook of Applied Cryptography and Guide to Elliptic
Int’l Conf. Information Technology: New Generations (ITNG ’08), Curve Cryptography.
pp. 265-272, 2008.
[16] D. Hankerson, A. Menezes, and M. Scott, “Software Imple-
mentation of Pairings,” Identity-Based Cryptography, M. Joye and
G. Neven, eds., IOS Press, 2008. . For more information on this or any other computing topic,
[17] D. Hankerson, A. Menezes, and S. Vanstone, Guide to Elliptic Curve please visit our Digital Library at www.computer.org/publications/dlib.
Cryptography. Springer, 2003.
[18] F. Hess, “Generalising the GHS Attack on the Elliptic Curve
Discrete Logarithm Problem,” LMS J. Computation and Math.,
vol. 7, pp. 167-192, 2004.

You might also like