Cryptography Reference
In-Depth Information
the simulator. We also do not choose the instance of the DLP until the end of the game.
The simulation will be perfect unless a certain bad event happens, and we will analyse the
probability of this event.
Let S
} t log( r ) . The simulator begins by uniformly choosing two distinct σ 1 2
in S and running A ( σ 1 2 ). Algorithm A assumes that σ 1 =
={
0 , 1
σ ( g ) and σ 2 =
σ ( h )forsome
g,h
G and some encoding function σ , but it is not necessary for the simulator to fix
values for g and h .
It is necessary to ensure that the encodings are consistent with the group operations.
This cannot be done perfectly without choosing g and h , but the following idea takes care
of “trivial” consistency. The simulator maintains a list of pairs ( σ i ,F i ) where σ i
S and
F i ∈ F r [ x ]. The initial values are ( σ 1 , 1) and ( σ 2 ,x ). Whenever A makes an oracle query
on ( σ i j ) the simulator computes F
F j .If F appears as F k in the list of pairs then
the simulator replies with σ k and does not change the list. Otherwise, a σ
=
F i
S distinct from
the previously used values is chosen uniformly at random, ( σ,F ) is added to the simulator's
list and σ is returned to A .
After making at most m oracle queries, A outputs b
∈ Z
/r
Z
. The simulator now chooses
a uniformly at random in
a .
Let the simulator's list contain precisely k polynomials
Z
/r
Z
. Algorithm A wins if b
=
{
F 1 ( x ) ,...,F k ( x )
}
for some
k
m
+
2. Let E be the event that F i ( a )
=
F j ( a ) for some pair 1
i<j
k .The
probability that A wins is
Pr( A wins
| E )Pr( E )
+
Pr( A wins
E )Pr(
¬ E ) .
(13.3)
For each pair 1
i<j
k the probability that ( F i
F j )( a )
=
0is1 /r by Lemma 13.4.4 .
O ( m 2 /r ). On the other hand,
if event E does not occur then all A “knows” about a is that it lies in the set
Hence, the probability of event E is at most k ( k
1) / 2 r
=
X
of possible
m 2 / 2.
values for a for which F i ( a )
=
F j ( a ) for all 1
i<j
k .Let N
=
#
X
r
¬
=
=
Then Pr(
1 /N .
Putting it all together, the probability that A wins is O ( m 2 /r ).
E )
N/r and Pr( A wins
E )
Exercise 13.4.6 Prove Theorem 13.4.5 using Maurer's model for generic algorithms. [Hint:
The basic method of proof is exactly the same. The difference is in formulation and analysis
of the success probability.]
Corollary 13.4.7 Let A be a generic algorithm for the DLP. If A succeeds with noticeable
probability 1 / log( r ) c for some c> 0 then A must make ( r/ log( r ) c ) oracle queries.
13.5 Generalised discrete logarithm problems
A number of generalisations of the discrete logarithm problem have been proposed over
the years. The motivation for such problems varies: sometimes the aim is to enable new
Search WWH ::




Custom Search