Decisional Diffie–Hellman assumption explained

The decisional Diffie–Hellman (DDH) assumption is a computational hardness assumption about a certain problem involving discrete logarithms in cyclic groups. It is used as the basis to prove the security of many cryptographic protocols, most notably the ElGamal and Cramer–Shoup cryptosystems.

Definition

G

of order

q

, and with generator

g

. The DDH assumption states that, given

ga

and

gb

for uniformly and independently chosen

a,b\inZq

, the value

gab

"looks like" a random element in

G

.

This intuitive notion can be formally stated by saying that the following two probability distributions are computationally indistinguishable (in the security parameter,

n=log(q)

):

(ga,gb,gab)

, where

a

and

b

are randomly and independently chosen from

Zq

.

(ga,gb,gc)

, where

a,b,c

are randomly and independently chosen from

Zq

.

Triples of the first kind are often called DDH triplet or DDH tuples.

Relation to other assumptions

The DDH assumption is related to the discrete log assumption. If it were possible to efficiently compute discrete logs in

G

, then the DDH assumption would not hold in

G

. Given

(ga,gb,z)

, one could efficiently decide whether

z=gab

by first taking the discrete

logg

of

ga

, and then comparing

z

with

(gb)a

.

DDH is considered to be a stronger assumption than the discrete logarithm assumption, because there are groups for which computing discrete logs is believed to be hard (And thus the DL Assumption is believed to be true), but detecting DDH tuples is easy (And thus DDH is false). Because of this, requiring that the DDH assumption holds in a group is believed to be a more restrictive requirement than DL.

The DDH assumption is also related to the computational Diffie–Hellman assumption (CDH). If it were possible to efficiently compute

gab

from

(ga,gb)

, then one could easily distinguish the two probability distributions above. DDH is considered to be a stronger assumption than CDH because if CDH is solved, which means we can get

gab

, the answer to DDH will become obvious.

Other properties

The problem of detecting DDH tuples is random self-reducible, meaning, roughly, that if it is hard for even a small fraction of inputs, it is hard for almost all inputs; if it is easy for even a small fraction of inputs, it is easy for almost all inputs.

Groups for which DDH is assumed to hold

When using a cryptographic protocol whose security depends on the DDH assumption, it is important that the protocol is implemented using groups where DDH is believed to hold:

Gq

of

k

-th residues modulo a prime

p=kq+1

, where

q

is also a large prime (also called a Schnorr group). For the case of

k=2

, this corresponds to the group of quadratic residues modulo a safe prime.
*
Z
p/\{1,-1\}
for a safe prime

p=2q+1

, which consists of the cosets

\{\{1,-1\},\ldots\{q,-q\}\}

. These cosets

\{x,-x\}

can be represented by

x

, which implies
*
Z
p/\{1,-1\}\equiv\{1,\ldots,q\}
. Since
*
Z
p/\{1,-1\}
and

Gq

are isomorphic, and the isomorphism can be computed efficiently in both direction, DDH is equally hard in both groups.

E

over the field

GF(p)

, where

p

is prime, provided

E

has large embedding degree.

GF(p)

with a prime number of reduced divisors, where

p

is prime, provided the Jacobian has large embedding degree.

Importantly, the DDH assumption does not hold in the multiplicative group

*
Z
p
, where

p

is prime. This is because if

g

is a generator of
*
Z
p
, then the Legendre symbol of

ga

reveals if

a

is even or odd. Given

ga

,

gb

and

gab

, one can thus efficiently compute and compare the least significant bit of

a

,

b

and

ab

, respectively, which provides a probabilistic method to distinguish

gab

from a random group element.

The DDH assumption does not hold on elliptic curves over

GF(p)

with small embedding degree (say, less than

log2(p)

), a class which includes supersingular elliptic curves. This is because the Weil pairing or Tate pairing can be used to solve the problem directly as follows: given

P,aP,bP,cP

on such a curve, one can compute

e(P,cP)

and

e(aP,bP)

. By the bilinearity of the pairings, the two expressions are equal if and only if

ab=c

modulo the order of

P

. If the embedding degree is large (say around the size of

p

) then the DDH assumption will still hold because the pairing cannot be computed. Even if the embedding degree is small, there are some subgroups of the curve in which the DDH assumption is believed to hold.

See also

References

. Dan Boneh . The Decision Diffie-Hellman problem . Proceedings of the Third Algorithmic Number Theory Symposium . Lecture Notes in Computer Science . 1423 . 48–63 . 1998 . 10.1007/BFb0054851 . 978-3-540-64657-0 . 10.1.1.461.9971 .