Misplaced Pages

Decisional Diffie–Hellman assumption

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
(Redirected from Decisional Diffie-Hellman assumption)

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 G {\displaystyle G} of order q {\displaystyle q} , and with generator g {\displaystyle g} . The DDH assumption states that, given g a {\displaystyle g^{a}} and g b {\displaystyle g^{b}} for uniformly and independently chosen a , b Z q {\displaystyle a,b\in \mathbb {Z} _{q}} , the value g a b {\displaystyle g^{ab}} "looks like" a random element in G {\displaystyle 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 ) {\displaystyle n=\log(q)} ):

  • ( g a , g b , g a b ) {\displaystyle (g^{a},g^{b},g^{ab})} , where a {\displaystyle a} and b {\displaystyle b} are randomly and independently chosen from Z q {\displaystyle \mathbb {Z} _{q}} .
  • ( g a , g b , g c ) {\displaystyle (g^{a},g^{b},g^{c})} , where a , b , c {\displaystyle a,b,c} are randomly and independently chosen from Z q {\displaystyle \mathbb {Z} _{q}} .

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 {\displaystyle G} , then the DDH assumption would not hold in G {\displaystyle G} . Given ( g a , g b , z ) {\displaystyle (g^{a},g^{b},z)} , one could efficiently decide whether z = g a b {\displaystyle z=g^{ab}} by first taking the discrete log g {\displaystyle \log _{g}} of g a {\displaystyle g^{a}} , and then comparing z {\displaystyle z} with ( g b ) a {\displaystyle (g^{b})^{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 g a b {\displaystyle g^{ab}} from ( g a , g b ) {\displaystyle (g^{a},g^{b})} , 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 g a b {\displaystyle g^{ab}} , 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 G q {\displaystyle \mathbb {G} _{q}} of k {\displaystyle k} -th residues modulo a prime p = k q + 1 {\displaystyle p=kq+1} , where q {\displaystyle q} is also a large prime (also called a Schnorr group). For the case of k = 2 {\displaystyle k=2} , this corresponds to the group of quadratic residues modulo a safe prime.
  • The quotient group Z p / { 1 , 1 } {\displaystyle \mathbb {Z} _{p}^{*}/\{1,-1\}} for a safe prime p = 2 q + 1 {\displaystyle p=2q+1} , which consists of the cosets { { 1 , 1 } , { q , q } } {\displaystyle \{\{1,-1\},\ldots \{q,-q\}\}} . These cosets { x , x } {\displaystyle \{x,-x\}} can be represented by x {\displaystyle x} , which implies Z p / { 1 , 1 } { 1 , , q } {\displaystyle \mathbb {Z} _{p}^{*}/\{1,-1\}\equiv \{1,\ldots ,q\}} . Since Z p / { 1 , 1 } {\displaystyle \mathbb {Z} _{p}^{*}/\{1,-1\}} and G q {\displaystyle \mathbb {G} _{q}} are isomorphic, and the isomorphism can be computed efficiently in both direction, DDH is equally hard in both groups.
  • A prime-order elliptic curve E {\displaystyle E} over the field G F ( p ) {\displaystyle GF(p)} , where p {\displaystyle p} is prime, provided E {\displaystyle E} has large embedding degree.
  • A Jacobian of a hyper-elliptic curve over the field G F ( p ) {\displaystyle GF(p)} with a prime number of reduced divisors, where p {\displaystyle p} is prime, provided the Jacobian has large embedding degree.

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

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

Public-key cryptography
Algorithms
Integer factorization
Discrete logarithm
Lattice/SVP/CVP/LWE/SIS
Others
Theory
Standardization
Topics
Cryptography
General
Mathematics
Computational hardness assumptions
Number theoretic
Group theoretic
Pairings
Lattices
Non-cryptographic
Categories: