Cryptography Reference
In-Depth Information
is well-distributed), θ> log( r ) / r and when the
using a good hash function (and hence
D
function walk is chosen at random.
Heuristic 14.2.13
1. Walks reach a distinguished point in significantly fewer than r steps (in other words,
there are no cycles in the walks and walks are not excessively longer tha n 1 ). 6
2. The expected number of group elements sampled before a collision is πr/ 2.
Theorem 14.2.14 Let the notation be as above and assume Heuristic 14.2 .13 . Then t he
rho algorithm wi th distinguished points has expected running time of ( π/ 2
o (1)) r
+
o (1)) r group operations. The probability the algorithm fails is negligible.
(1 . 253
+
Proof Heuristic 14.2.13 states there are no cycles or “wasted” walks (in the sense that
their steps do not contribute to potential collisions). Hence, before the first collision, after
N steps of the algorithm we have visited N group elements. By Heuristic 1 4.2.13 ,the
expected number of group elements to be sampled before the first collision is πr/ 2. The
collision is not detected until walks hit a distinguished point, which adds a further 2 to
the number of steps . Hence, the total numb er of steps (calls t o the function walk )inthe
algorithm is πr/ 2
2 . Since 2 /θ < 2 r/ log( r )
o (1) r , the result follows.
+
=
g a j h b j be the collision. Since the starting values g a 0 h b 0 are chosen
uniformly and independently at random, the values b i and b j are uniformly and indepen-
dently random. It follows that b i
g a i h b i
Let x
=
=
b j (mod r ) with probability 1 /r , which is a negligible
quantity in the input size of the problem.
log( r ) / r then the expected storage of the rho algo-
rithm, assuming it takes O ( r ) steps, is O (log( r )) group elements (which is typically
O (log( r ) 2 ) bits).
Exercise 14.2.15 Show that if θ
=
Exercise 14.2.16 The algorithm requires storing a triple ( x n ,a n ,b n ) for each distinguished
point. Give some strategies to reduce the number of bits that need to be stored.
be a group of order r 2
Exercise 14.2.17 Let G
=
g 1 ,g 2
and exponent r .Designarho
g a 1 g a 2 . Determine the
algorithm which, on input h
G outputs ( a 1 ,a 2 ) such that h
=
complexity of this algorithm.
Exercise 14.2.18 Show that the Pollard rho algorithm with distinguished points has better
average-case running time than the BSGS algorithm (see Exercises 13.3.3 and 13.3.4 ).
Exercise 14.2.19 Explain why taking
G (i.e., all group elements distinguished) leads
to an algorithm that is much slower than the BSGS algorithm.
D =
Suppose one is given g,h 1 ,...,h L (where 1 <L<r 1 / 4 ) and is asked to find all a i for
g a i . Kuhn and Struik [ 320 ] propose and analyse a method to solve
1
i
L such that h i =
6
More realistically, one could assume that only a negligibly small proportion of the walks fall into a cycle before hitting a
distinguished point.
 
Search WWH ::




Custom Search