10.12.2012 Views

Prime Numbers

Prime Numbers

Prime Numbers

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

7.6 Elliptic curve primality proving (ECPP) 373<br />

5. [Operate on point]<br />

Compute the multiple U =[m/q]P (however if any illegal inversions occur,<br />

return “n is composite”);<br />

if(U == O) goto [Choose point ...];<br />

Compute V =[q]U (however check the above rule on illegal inversions);<br />

if(V = O) return “n is composite”;<br />

return “If q is prime, then n is prime”;<br />

Note that if n is composite, then there is no guarantee that Algorithm 2.3.13<br />

in Step [Choose discriminant] will successfully find u, v, eveniftheyexist.In<br />

this event, we continue with the next D, until we are eventually successful, or<br />

we lose patience and give up.<br />

Let us work through an explicit example. Recall the Mersenne prime<br />

p =2 89 − 1 analyzed after Algorithm 7.5.9. We found a discriminant D = −3<br />

for complex multiplication curves, for which D there turn out to be six possible<br />

curve orders. The recursive primality proving works, in this case, by taking<br />

p +1+u as the order; in fact, this choice happens to work at every level like<br />

so:<br />

p =2 89 − 1,<br />

D = −3 : u = 34753815440788, v = 20559283311750,<br />

#E = p +1+u =2 2 · 3 2 · 5 2 · 7 · 848173 · p2,<br />

p2 = 115836285129447871,<br />

D = −3 : u = 557417116, v = 225559526,<br />

#E = p2 +1+u =2 2 · 3 · 7 · 37 · 65707 · p3,<br />

and we establish that p3 = 567220573 is prime by trial division. What we have<br />

outlined is the essential “backbone” of a primality certificate for p =2 89 − 1.<br />

The full certificate requires, of course, the actual curve parameters (from Step<br />

[Obtain curve parameters]) and relevant starting points (from Step [Choose<br />

point ...]) in Algorithm 7.6.3.<br />

Compared to the Goldwasser–Kilian approach, the complexity of the<br />

Atkin–Morain method is a cloudy issue—although heuristic estimates are<br />

polynomial, e.g. O(ln 4+ɛ N) operations to prove N prime (see Section 7.6.3).<br />

The added difficulty comes from the fact that the potential curve orders<br />

that one tries to factor have an unknown distribution. However, in practice,<br />

the method is excellent, and like the Goldwasser–Kilian method a complete<br />

and succinct certificate of primality is provided. Morain’s implementation of<br />

variants of Algorithm 7.6.3 has achieved primality proofs for “random” primes<br />

of well over two thousand decimal digits, as we mentioned in Section 1.1.2.<br />

But even more enhancement has been possible, as we discuss next.<br />

7.6.3 Fast primality-proving via ellpitic curves (fastECPP)<br />

A new development in primality proving has enabled primality proofs of some<br />

spectacularly large numbers. For example, in July 2004, the primality of the

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!