The Schoof–Elkies–Atkin algorithm (SEA) is an
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
used for finding the
order of or calculating the number of points on an
elliptic curve
In mathematics, an elliptic curve is a smooth, projective, algebraic curve of genus one, on which there is a specified point . An elliptic curve is defined over a field and describes points in , the Cartesian product of with itself. If ...
over a
finite field
In mathematics, a finite field or Galois field (so-named in honor of Évariste Galois) is a field that contains a finite number of elements. As with any field, a finite field is a set on which the operations of multiplication, addition, subtr ...
. Its primary application is in
elliptic curve cryptography
Elliptic-curve cryptography (ECC) is an approach to public-key cryptography based on the algebraic structure of elliptic curves over finite fields. ECC allows smaller keys compared to non-EC cryptography (based on plain Galois fields) to provide ...
. The algorithm is an extension of
Schoof's algorithm Schoof's algorithm is an efficient algorithm to count points on elliptic curves over finite fields. The algorithm has applications in elliptic curve cryptography where it is important to know the number of points to judge the difficulty of solving t ...
by
Noam Elkies
Noam David Elkies (born August 25, 1966) is a professor of mathematics at Harvard University. At the age of 26, he became the youngest professor to receive tenure at Harvard. He is also a pianist, chess national master and a chess composer.
Ear ...
and
A. O. L. Atkin
Arthur Oliver Lonsdale Atkin (31 July 1925 – 28 December 2008), who published under the name A. O. L. Atkin, was a British mathematician.
As an undergraduate during World War II, Atkin worked at Bletchley Park cracking German codes. He receiv ...
to significantly improve its efficiency (under heuristic assumptions).
Details
The Elkies-Atkin extension to
Schoof's algorithm Schoof's algorithm is an efficient algorithm to count points on elliptic curves over finite fields. The algorithm has applications in elliptic curve cryptography where it is important to know the number of points to judge the difficulty of solving t ...
works by restricting the set of primes
considered to primes of a certain kind. These came to be called Elkies primes and Atkin primes respectively. A prime
is called an Elkies prime if the characteristic equation:
splits over
, while an Atkin prime is a prime that is not an Elkies prime. Atkin showed how to combine information obtained from the Atkin primes with the information obtained from Elkies primes to produce an efficient algorithm, which came to be known as the Schoof–Elkies–Atkin algorithm. The first problem to address is to determine whether a given prime is Elkies or Atkin. In order to do so, we make use of
modular polynomials that parametrize pairs of
-
isogenous elliptic curves in terms of their
j-invariant
In mathematics, Felix Klein's -invariant or function, regarded as a function of a complex variable , is a modular function of weight zero for defined on the upper half-plane of complex numbers. It is the unique such function which is hol ...
s (in practice alternative modular polynomials may also be used but for the same purpose).
If the instantiated polynomial
has a root
in
then
is an Elkies prime, and we may compute a polynomial
whose roots correspond to points in the kernel of the
-isogeny from
to
. The polynomial
is a divisor of the corresponding
division polynomial used in Schoof's algorithm, and it has significantly lower degree,
versus
. For Elkies primes, this allows one to compute the number of points on
modulo
more efficiently than in Schoof's algorithm.
In the case of an Atkin prime, we can gain some information from the factorization pattern of
in