In the original meaning, a "handbook" was a small book that one could hold in one's hand. The idea was that such a book could be carried around and therefore serve as a convenient reference. As the word's meaning developed, it came to mean "a compendious book or treatise for guidance in any art, occupation, or study," as the OED puts it. This Handbook of Elliptic and Hyperelliptic Curve Cryptography definitely falls within the latter definition. It has more than 800 pages and weighs in at almost four pounds. It clearly aims for fairly complete coverage of the basics of public-key cryptography using elliptic and hyperelliptic curves.
The structure of the book is interesting. The first chapter gives an introduction to public-key cryptography at a fairly abstract level. By page 7, the RSA system has already been described, and by the end of the chapter we have a general framework in place for cryptographic systems based on various kinds of discrete logarithm (DL) problems. Thus, in the rest of the volume, all one needs to do is generate an appropriate DL problem and refer to the first chapter.
The following section sets up the necessary algebraic background, quickly running from groups, rings, and fields to the cohomology of algebraic varieties. Then comes a section on "elementary arithmetic" that focuses mostly on algorithms for arithmetic (exponentiation in a group, "infinite-precision" integer arithmetic, finite field arithmetic, and p-adic numbers). The third section takes up the arithmetic of algebraic curves, focusing mostly on the elliptic and hyperelliptic cases. The concluding sections home in on issues related to cryptography, discussing point counting, discrete logarithms, and the practical implementation of these systems.
This is not, of course, the place to go to begin to learn this material, but it should serve as a very useful reference. In particular, specialists in arithmetical algebraic geometry who would like to learn more about algorithmic issues will find it very useful. I suspect that specialists in cryptography who want to find out about elliptic curve cryptography will find it tough sledding (depending, of course, on their background in algebra and number theory). Most undergraduates will find it very hard, but they may find certain chapters useful, especially if they are interested in finding out about applications of abstract algebra. Libraries should make sure they have a copy.
Fernando Q. Gouvêa is professor of mathematics at Colby College in Waterville, ME.
Introduction to Public-Key Cryptography
Background on p-adic Numbers
Background on Curves and Jacobians
Varieties Over Special Fields
Background on Pairings
Background on Weil Descent
Cohomological Background on Point Counting
Finite Field Arithmetic
Arithmetic of p-adic Numbers
ARITHMETIC OF CURVES
Arithmetic of Elliptic Curves
Arithmetic of Hyperelliptic Curves
Arithmetic of Special Curves
Implementation of Pairings
Point Counting on Elliptic and Hyperelliptic Curves
COMPUTATION OF DISCRETE LOGARITHMS
Generic Algorithms for Computing Discrete Logarithms
Index Calculus for Hyperelliptic Curves
Transfer of Discrete Logarithms
Algebraic Realizations of DL Systems
Compositeness and Primality Testing-Factoring
REALIZATIONS OF DL SYSTEMS
Fast Arithmetic Hardware
Practical Attacks on Smart Cards
Mathematical Countermeasures Against Side-Channel Attacks
Random Numbers-Generation and Testing