Cryptography Reference
In-Depth Information
g x 1
1
g x 2
2
g y 1
1
g y 2
2
=
=
logarithms in the equations c
, d
, the following information is
obtained:
log g c
=
x 1 +
xx 2
(8.4)
log g d
=
y 1 +
xy 2
It is not difficult to see that this is all the information available to
A
on the values
x 1 , x 2 , y 1 , y 2 , even assuming that
A
can compute discrete logarithms, which is hard
in general. Thus the point
(
x 1 ,
x 2 ,
y 1 ,
y 2 )
looks to
A
like a random point in the
q defined by Eqs. 8.4 which, since the linear system has rank 2,
linear variety of
Z
containing q 2 points. If
is a plane
P
A
submits a ciphertext
(
v 1 ,
v 2 ,
f
,
w
)
such that
r but Eq. 8.3 holds (and hence the ciphertext is not
r
=
log g 1 v 1
=
log g 2 v 2
=
rejected), then the point
lies in the linear variety defined by the three
Eqs. 8.3 , 8.4 . These equations define a linear system of rank 3 (it is easy to see that,
except when x
(
x 1 ,
x 2 ,
y 1 ,
y 2 )
0 which occurs with negligible probability, the three rows of the
coefficient matrix are linearly independent as vectors of
=
4
Z
q ) and hence define a line
P
(
x 1 ,
x 2 ,
y 1 ,
y 2 )
in
must belong. Since the line has q points, the probability
that the first invalid ciphertext submitted by
to which
q 2
A
/
=
/
is not rejected is q
1
q , which
is negligible as a function of k
=
len
(
q
)
. After each rejection,
A
can exclude one line
in
and so the probability that the i th invalid ciphertext submitted is not rejected is
at most 1
P
makes a polynomial number of queries, all invalid
ciphertexts are rejected except with negligible probability and in this phase
/(
q
i
+
1
)
. Since
A
A
's attack
in the simulation carried out by
B
proceeds in the same way as if
A
were interacting
with a legitimate decryption oracle.
After submitting its queries, at the end of this stage,
A
outputs two messages
m 0 ,
m 1
G .Next
B
chooses a random bit b
←{
0
,
1
}
and computes the challenge
g x
g y
g a
ciphertext. For this,
B
uses the DDH input 3-tuple
(
,
,
)
and sets:
g y
u 1 :=
,
g a
u 2 :=
,
u z 1 u z 2 m b ,
:=
e
α :=
H
(
u 1 ||
u 2 ||
e
),
u x 1 + α y 1
1
u x 2 + α y 2
2
v
:=
.
Next,
B
gives to
A
the challenge ciphertext:
(
u 1 ,
u 2 ,
e
,
v
)
and
may continue querying for decryptions of ciphertexts distinct from this one,
which are answered by
A
outputs a bit b
B
in the form indicated above. Finally,
A
which is its guess on the value of b .
Now, algorithm
b which, recalling Definition 7.4 means that
B
outputs b
B
b , i.e., if and only if
guesses that a
=
xy if and only b
=
A
succeeds in the CCA
b .
indistinguishability experiment. Therefore,
B
guesses that a is random in case b
=
The intuition behind this choice is based on the following facts:
 
Search WWH ::




Custom Search