Elliptic curves cryptography was introduced independently by Victor Miller (Miller, 1986) and Neal Koblitz (Koblitz, 1987) in 1985. At that time elliptic curve cryptography was not actually seen as a promising cryptographic technique. As time progress and further research and intensive development done especially on the implementation side, elliptic curve cryptography is now being implemented widely. Elliptic curves cryptography offers smaller key size, bandwidth savings and faster in implementations when compared to the RSA (Rivest-Shamir-Adleman) cryptography which based its security on the integer factorization problem. The most interesting feature of the elliptic curves is the group structure of the points generated by the curves, where points on the elliptic curves form a group. The security of elliptic curves cryptography relies on the elliptic curves discrete logarithm problem. The elliptic curve discrete logarithm problem is analogous to the ordinary algebraic discrete logarithm problem, l = gx, where given the l and g, it is infeasible to compute the x. Elliptic curve discrete logarithm problem deals with solving for n the relation P = nG. Given the point P and the point G, then it is very hard to find the integer n. To implement the discrete logarithm problem in elliptic curve cryptography, the main task is to compute the order of group of the curves or in other words the number of points on the curve. Computation to find the number of points on a curve, has given rise to several point counting algorithms. The Schoof and the SEA (Schoof-Elkies-Atkin) point counting algorithms will be part of the discussion in this chapter. This chapter is organized as follows: Section 2, gives some preliminaries on elliptic curves, and in section 3, elliptic curve discrete logarithm problem is discussed. Some relevant issues on elliptic curve cryptography is discussed in section 4, in which the Diffie-Hellman key exchange scheme, ElGamal elliptic curve cryptosystem and elliptic curve digital signature scheme are discussed here accompanied with some examples. Section 5 discussed the two point counting algorithms, Schoof algorithm and the SEA (Schoof-Elkies-Atkin) algorithm. Following the discussion in section 5, section 6 summaries some similarities and the differences between these two algorithms. Section 7 gives some brief literature on these two point counting algorithms. Finally, section 8 is the concluding remarks for this chapter.
[1]
Victor S. Miller,et al.
Use of Elliptic Curves in Cryptography
,
1985,
CRYPTO.
[2]
Reynald Lercier,et al.
Counting the Number of Points on Elliptic Curves over Finite Fields: Strategies and Performance
,
1995,
EUROCRYPT.
[3]
R. Lercier,et al.
"Counting the number of points on elliptic curves over finite fields: strategy and performances," EUROCRYPT '95
,
1995
.
[4]
Reynald Lercier,et al.
Finding Good Random Elliptic Curves for Cryptosystems Defined over F2n
,
1997,
EUROCRYPT.
[5]
Whitfield Diffie,et al.
New Directions in Cryptography
,
1976,
IEEE Trans. Inf. Theory.
[6]
Tanja Lange,et al.
Handbook of Elliptic and Hyperelliptic Curve Cryptography
,
2005
.
[7]
Andreas Stein,et al.
Cryptographic aspects of real hyperelliptic curves
,
2010,
IACR Cryptol. ePrint Arch..
[8]
Kazuhiro Yokoyama,et al.
Efficient Implementation of Schoof's Algorithm
,
1998,
ASIACRYPT.
[9]
N. Koblitz.
Elliptic curve cryptosystems
,
1987
.
[10]
R. Schoof.
Elliptic Curves Over Finite Fields and the Computation of Square Roots mod p
,
1985
.
[11]
R. Zuccherato,et al.
Counting Points on Elliptic Curves Over F2m
,
1993
.
[12]
Robert M. Richardson,et al.
HP Laboratories Technical Report
,
2013
.
[13]
François Morain,et al.
Schoof's algorithm and isogeny cycles
,
1994,
ANTS.
[14]
Wade Trappe,et al.
Introduction to Cryptography with Coding Theory (2nd Edition)
,
2005
.
[15]
David A. Cox.
Primes of the Form x2 + ny2: Fermat, Class Field Theory, and Complex Multiplication
,
1989
.
[16]
John McGee.
René Schoof's Algorithm for Determining the Order of the Group of Points on an Elliptic Curve over a Finite Field
,
2006
.