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.

370 Chapter 7 ELLIPTIC CURVE ARITHMETIC<br />

In practice one would iterate the algorithm, getting a chain of inferences,<br />

with the last number q so small it can be proved prime by trial division. If some<br />

intermediate q is composite, then one can retreat one level in the chain and<br />

apply the algorithm again. Iterating the Goldwasser–Kilian scheme not only<br />

provides a rigorous primality test but also generates a certificate of primality.<br />

This certificate can be thought of as the chain<br />

(n = n0,a0,b0,m0,q0,P0), (q0 = n1,a1,b1,m1,q1,P1),...<br />

consisting of consecutive n, a, b, m, q, P entities along the recursion. The<br />

primary feature of the certificate is that it can be published alongside, or<br />

otherwise associated with, the original n that is proven prime. This concise<br />

listing can then be used by anyone who wishes to verify that n is prime, using<br />

Theorem 7.6.1 at the various steps along the way. The reconstruction of the<br />

proof usually takes considerably less time than the initial run that finds the<br />

certificate. The certificate feature is nontrivial, since many primality proofs<br />

must be run again from scratch if they are to be checked.<br />

It should be noted that the elliptic arithmetic in Algorithm 7.6.2 can<br />

be sped up using Montgomery coordinates [X : Z] with“Y ”dropped,as<br />

discussed in Section 7.2.<br />

To aid in the reader’s testing of any implementations, we now report a<br />

detailed example. Let us take the prime p =10 20 + 39. On the first pass of<br />

Algorithm 7.6.2, we use n = p and obtain random parameters in Step [Choose<br />

a pseudocurve ...]as<br />

a = 69771859804340235254, b = 10558409492409151218,<br />

for which 4a 3 +27b 2 is coprime to n. The number that would be the order of<br />

Ea,b(Zn) ifn is indeed prime is found, via Algorithm 7.5.6 to be<br />

m =#E = 99999999985875882644 = 2 2 · 59 · 1182449 · q,<br />

where 2, 59, 1182449 are known primes (falling below the threshold 2 32<br />

suggested in the algorithm description), and q = 358348489871 is a probable<br />

prime. Then, in Step [Choose point ...] the random point obtained is<br />

P =[X : Z] = [31689859357184528586 : 1],<br />

where for practical simplicity we have adopted Montgomery parameterization,<br />

with a view to using Algorithm 7.2.7 for elliptic multiples. Accordingly, it was<br />

found that<br />

U =[m/q]P = [69046631243878263311 : 1] = O,<br />

V =[q]U = O.<br />

Therefore, p is prime if q is. So now we assign n = 358348489871 and run<br />

again through Algorithm 7.6.2. In so doing the relevant values encountered<br />

are<br />

a = 34328822753, b = 187921935449,<br />

m =#E = 358349377736 = 2 3 · 7 · 7949 · 805019,

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

Saved successfully!

Ooh no, something went wrong!