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.

9.8 Research problems 535<br />

less than a power of two. But another is to change the Step [Check breakover<br />

threshold ...] to test just whether len(T )isodd. These kinds of approaches<br />

will ensure that halving of signals can proceed during recursion.<br />

9.8 Research problems<br />

9.77. As we have intimated, the enhancements to power ladders can be<br />

intricate, in many respects unresolved. In this exercise we tour some of the<br />

interesting problems attendant on such enhancements.<br />

When an inverse is in hand (alternatively, when point negations are<br />

available in elliptic algebra), the add/subtract ladder options make the<br />

situation more interesting. The add/subtract ladder Algorithm 7.2.4, for<br />

example, has an interesting “stochastic” interpretation, as follows. Let x<br />

denote a real number in (0, 1) and let y be the fractional part of 3x; i.e.,<br />

y =3x −⌊3x⌋. Then denote the exclusive-or of x, y by<br />

z = x ∧ y,<br />

meaning z is obtained by an exclusive-or of the bit streams of x and y<br />

together. Now investigate this conjecture: If x, y are chosen at random, then<br />

with probability 1, one-third of the binary bits of z are ones. If true, this<br />

conjecture means that if you have a squaring operation that takes time S,<br />

and a multiply operation that takes time M, then Algorithm 7.2.4 takes about<br />

time (S + M/3)b, when the relevant operands have b binary bits. How does<br />

this compare with the standard binary ladders of Algorithms 9.3.1, 9.3.2? How<br />

does it compare with a base-(B = 3) case of the general windowing ladder<br />

Algorithm 9.3.3? (In answering this you should be able to determine whether<br />

the add/subtract ladder is equivalent or not to some windowing ladder.)<br />

Next, work out a theory of precise squaring and addition counts for<br />

practical ladders. For example, a more precise complexity estimate for he<br />

left-right binary ladder is<br />

C ∼ (b(y) − 1)S +(o(y) − 1)M,<br />

where the exponent y has b(y) total bits, of which o(y) are 1’s. Such a theory<br />

should be extended to the windowing ladders, with precomputation overhead<br />

not ignored. In this way, describe quantitatively what sort of ladder would<br />

be best for a typical cryptography application; namely, x, y have say 192 bits<br />

each and x y is to be computed modulo some 192-bit prime.<br />

Next, implement an elliptic multiplication ladder in base B = 16, which<br />

means as in Algorithm 9.3.3 that four bits at a time of the exponent are<br />

processed. Note that, as explained in the text following the windowing ladder<br />

algorithm, you would need only the following point multiples: P, 3P, 5P, 7P .Of<br />

course, one should be precomputing these small multiples also in an efficient<br />

manner.<br />

Next, study yet other ladder options (and this kind of extension to the<br />

exercise reveals just how convoluted is this field of study) as described in

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

Saved successfully!

Ooh no, something went wrong!