Decisional Diffie–Hellman assumption

From HandWiki

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

Consider a (multiplicative) cyclic group [math]\displaystyle{ G }[/math] of order [math]\displaystyle{ q }[/math], and with generator [math]\displaystyle{ g }[/math]. The DDH assumption states that, given [math]\displaystyle{ g^a }[/math] and [math]\displaystyle{ g^b }[/math] for uniformly and independently chosen [math]\displaystyle{ a,b \in \mathbb{Z}_q }[/math], the value [math]\displaystyle{ g^{ab} }[/math] "looks like" a random element in [math]\displaystyle{ G }[/math].

This intuitive notion can be formally stated by saying that the following two probability distributions are computationally indistinguishable (in the security parameter, [math]\displaystyle{ n=\log(q) }[/math]):

  • [math]\displaystyle{ (g^a,g^b,g^{ab}) }[/math], where [math]\displaystyle{ a }[/math] and [math]\displaystyle{ b }[/math] are randomly and independently chosen from [math]\displaystyle{ \mathbb{Z}_q }[/math].
  • [math]\displaystyle{ (g^a,g^b,g^c) }[/math], where [math]\displaystyle{ a,b,c }[/math] are randomly and independently chosen from [math]\displaystyle{ \mathbb{Z}_q }[/math].

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 [math]\displaystyle{ G }[/math], then the DDH assumption would not hold in [math]\displaystyle{ G }[/math]. Given [math]\displaystyle{ (g^a,g^b,z) }[/math], one could efficiently decide whether [math]\displaystyle{ z=g^{ab} }[/math] by first taking the discrete [math]\displaystyle{ \log_g }[/math] of [math]\displaystyle{ g^a }[/math], and then comparing [math]\displaystyle{ z }[/math] with [math]\displaystyle{ (g^b)^a }[/math].

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 [math]\displaystyle{ g^{ab} }[/math] from [math]\displaystyle{ (g^a,g^b) }[/math], 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 [math]\displaystyle{ g^{ab} }[/math], 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:

  • The subgroup [math]\displaystyle{ \mathbb{G}_q }[/math] of [math]\displaystyle{ k }[/math]-th residues modulo a prime [math]\displaystyle{ p=kq+1 }[/math], where [math]\displaystyle{ q }[/math] is also a large prime (also called a Schnorr group). For the case of [math]\displaystyle{ k=2 }[/math], this corresponds to the group of quadratic residues modulo a safe prime.
  • The quotient group [math]\displaystyle{ \mathbb{Z}^*_p/\{1,-1\} }[/math] for a safe prime [math]\displaystyle{ p=2q+1 }[/math], which consists of the cosets [math]\displaystyle{ \{\{1,-1\},\ldots\{q,-q\}\} }[/math]. These cosets [math]\displaystyle{ \{x,-x\} }[/math] can be represented by [math]\displaystyle{ x }[/math], which implies [math]\displaystyle{ \mathbb{Z}^*_p/\{1,-1\}\equiv\{1,\ldots,q\} }[/math]. Since [math]\displaystyle{ \mathbb{Z}^*_p/\{1,-1\} }[/math] and [math]\displaystyle{ \mathbb{G}_q }[/math] are isomorphic, and the isomorphism can be computed efficiently in both direction, DDH is equally hard in both groups.
  • A prime-order elliptic curve [math]\displaystyle{ E }[/math] over the field [math]\displaystyle{ GF(p) }[/math], where [math]\displaystyle{ p }[/math] is prime, provided [math]\displaystyle{ E }[/math] has large embedding degree.
  • A Jacobian of a hyper-elliptic curve over the field [math]\displaystyle{ GF(p) }[/math] with a prime number of reduced divisors, where [math]\displaystyle{ p }[/math] is prime, provided the Jacobian has large embedding degree.

Importantly, the DDH assumption does not hold in the multiplicative group [math]\displaystyle{ \mathbb{Z}^*_p }[/math], where [math]\displaystyle{ p }[/math] is prime. This is because if [math]\displaystyle{ g }[/math] is a generator of [math]\displaystyle{ \mathbb{Z}^*_p }[/math], then the Legendre symbol of [math]\displaystyle{ g^a }[/math] reveals if [math]\displaystyle{ a }[/math] is even or odd. Given [math]\displaystyle{ g^a }[/math], [math]\displaystyle{ g^b }[/math] and [math]\displaystyle{ g^{ab} }[/math], one can thus efficiently compute and compare the least significant bit of [math]\displaystyle{ a }[/math], [math]\displaystyle{ b }[/math] and [math]\displaystyle{ ab }[/math], respectively, which provides a probabilistic method to distinguish [math]\displaystyle{ g^{ab} }[/math] from a random group element.

The DDH assumption does not hold on elliptic curves over [math]\displaystyle{ GF(p) }[/math] with small embedding degree (say, less than [math]\displaystyle{ \log^2(p) }[/math]), 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 [math]\displaystyle{ P,aP,bP,cP }[/math] on such a curve, one can compute [math]\displaystyle{ e(P,cP) }[/math] and [math]\displaystyle{ e(aP,bP) }[/math]. By the bilinearity of the pairings, the two expressions are equal if and only if [math]\displaystyle{ ab=c }[/math] modulo the order of [math]\displaystyle{ P }[/math]. If the embedding degree is large (say around the size of [math]\displaystyle{ p }[/math]) 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

  • Boneh, Dan (1998). "The Decision Diffie-Hellman problem". Proceedings of the Third Algorithmic Number Theory Symposium. Lecture Notes in Computer Science. 1423. pp. 48–63. doi:10.1007/BFb0054851. ISBN 978-3-540-64657-0.