Cryptography Reference
In-Depth Information
Se dgewi ck [ 188 ] and Exe rc ise 3.1.12 of Knuth [ 308 ]. The expected number of samples is
πN/ 2
O (1 / N ).
We remind the reader of the meaning of expected value. Suppose the experiment of
sampling elements of a set
+
2 / 3
+
of size N until a collision is found is repeated t times and
each time we cou nt the number l of elements sampled. Then the average of l over all trials
tends to πN/ 2as t goes to infinity.
S
Exercise 14.1.2 Show that the num ber of ele ments that nee d to be selected from
S
to get
1 . 177 N .
a collision with probability 1 / 2is 2log(2) N
Exercise 14.1.3 One may be interested in the number of samples required when one is
particularly unlucky. Determine the number of trials so that with probability 0.99 one has
a collision. Repeat the exercise for probability 0.999.
The name “birthday paradox” arises from the following application of the result.
Example 14.1.4 In a room containing 23 or more randomly chosen people, th e probability is
greater than 0 . 5 that tw o people have the same birthday. This follows from 2 log(2)365
22 . 49. Note also that π 365 / 2
=
23 . 944 ....
Finally, we mention that the expected num ber o f samples from a set of size N until
k> 1 collisions are found is approximately 2 kN . A detailed proof of this fact is given
by Kuhn and Struik as Theorem 1 of [ 320 ].
14.2 The Pollard rho method
Let g be a group element of prime order r and let G
=
g
. The discrete logarithm problem
g a . In this section we assume (as
is usually the case in applications) that one has already determined that h
(DLP) is: given h
G to find a , if it exists, such that h
=
.
The starting point of the rho algorithm is the observation that if one can find
a i ,b i ,a j ,b j ∈ Z
g
/r
Z
such that
g a i h b i
g a j h b j
=
(14.1)
and b i
b j (mod r ) then one can solve the DLP as
g ( a i a j )( b j b i ) 1
(mod r ) .
h
=
g a i h b i of elements in G by
The basic idea is to generate pseudorandom sequences x i =
iterating a suitable function f : G
G . In other words, one chooses a starting value x 1
and defines the sequence by x i + 1 =
f ( x i ). A sequence x 1 ,x 2 ,... is called a deterministic
pseudorandom walk . Since G is finite there is eventually a collision x i =
x j for some
1
i<j as in equation ( 14.1 ). This is presented as a collision between two elements in
the same walk, but it could also be a collision between two elements in different walks.
If the elements in the walks look like uniformly and independently chosen e lemen ts of G
then, by the birthday paradox (Theorem 14.1.1 ), the expected value of j is πr/ 2.
Search WWH ::




Custom Search