Discrete logarithm

The discrete logarithm (DLOG) assumption is used throughout cryptography. It is a natural strengthening of the CDH assumption. In other words, an adversary which can solve the DLOG problem can also solve CDH in the same group.

Assumption

Informally, the DLOG assumption concerns a cyclic group generation algorithm which takes as input a security parameter and outputs a succinct description of a cyclic group where is the group set, is a generator for the group, and is the order of the group.

\begin{algorithm}
\algname{Game}
\caption{$\Game^{\text{dl}}_{\GrGen,\calA}(\secpar)$}
\begin{algorithmic}
\State $(\GG,g,p) \gets \GrGen(1^\secpar)$
\State $x \getsr [p]$
\State $X \gets g^x$
\State $\hat{x} \gets \calA(1^\secpar, \GG, g, p, X)$
\Return $[\hat{x} = x]$
\end{algorithmic}
\end{algorithm}

We say that DLOG is hard for a group generation algorithm if for all efficient

is negligible.

  • It is easy to see that if can compute for a random , then can compute both and from and and find easily. This establishes that DLOG is not easier than CDH.
  • In the Generic Group Model, , where is the number of queries that issues — Shoup97

Attacks

  • The Baby-step Giant-step is a generic attack which works in all groups and requires space and time with . Therefore, this is optimal in the GGMShoup97
  • Index calculus: sub-exponential attack on DLOG in (multiplicative group of a finite field) and in the Jacobians of hyperelliptic curves of high genus. Does not apply to generic elliptic curve groups, which is why ECDLP is believed harder than DLOG in .
  • Pohlig-Hellman: reduces DLOG in a group of composite order to DLOG in groups of prime order via the Chinese Remainder Theorem. Effective when is smooth; neutralized by using prime-order groups.
  • Number Field Sieve (NFS): sub-exponential algorithm for DLOG in ; best known algorithm with complexity .

Variations

One-more Discrete Logarithm

In some works, it is important to consider adversaries

\begin{algorithm}
% oracle-split: 40
\algname{Game}
\caption{$\Game^{\text{om-dl}}_{\GrGen,\calA, \ell}(\secpar)$}
\begin{algorithmic}
\State $(\GG,g,p) \gets \GrGen(1^\secpar)$ ; $q \gets 0$
\For{$i = 1,\ldots,\ell+1$}
\State $x_i \getsr [p]$
\State $X_i \gets g^{x_i}$
\EndFor
\State $(\hat{x}_i)_{i\in [\ell+1]} \gets \calA^{\calO_{\text{dl}}}(1^\secpar, \GG, g, p, (X_i)_{i\in [\ell+1]})$
\Return $\big[q \le \ell \land \forall_{i\in [\ell+1]}~~x_i = \hat{x}_i\big]$
\end{algorithmic}
\end{algorithm}
\begin{algorithm}
\algname{Oracle}
\caption{$\calO_{\text{dl}}(Z)$}
\begin{algorithmic}
\State $q \gets q + 1$
\State $z \gets \mathrm{dlog}_g(Z)$
\Return $z$
\end{algorithmic}
\end{algorithm}

We say that OM-DL is hard for a group generation algorithm if for all efficient ,

is negligible.