Department of Electrical Engineering, IIT Bombay
October 14, 2025
Definition: Let G be a finite group. For g \in G, the subgroup generated by g is given by \langle g \rangle = \{1, g, g^2, \ldots , g^{i-1}\}. where i is the smallest positive integer for which g^i = 1.
Definition: Let G be a finite group. We call G a cyclic group if there exists a g \in G such that G = \langle g \rangle. Such a g is called a generator of G.
Examples
Proposition: If G is a group of prime order p, then G is cyclic. Furthermore, all elements of G except the identity are generators of G.
Let \mathcal{G} denote a polynomial-time, cyclic group generation algorithm which outputs a group, its order, and a generator
The discrete-logarithm experiment \textsf{DLog}_{\mathcal{A},\mathcal{G}}(n)
Definition: We say the discrete-logarithm problem is hard relative to \mathcal{G} if for all PPT algorithms \mathcal{A} there exists a negligible function \textsf{negl} such that \Pr[\textsf{DLog}_{\mathcal{A}, \mathcal{G}}(n) = 1] \le \textsf{negl}(n).
The discrete-logarithm assumption states that there exists a \mathcal{G} relative to which the discrete-logarithm problem is hard
Related to the problem of computing discrete logarithms, but not known to be equivalent to it
Two important variants
Let \mathcal{G} denote a polynomial-time, cyclic group generation algorithm
The CDH experiment \textsf{CDH}_{\mathcal{A},\mathcal{G}}(n)
Definition: We say the CDH problem is hard relative to \mathcal{G} if for all PPT algorithms \mathcal{A} there exists a negligible function \textsf{negl} such that \Pr[\textsf{CDH}_{\mathcal{A}, \mathcal{G}}(n) = 1] \le \textsf{negl}(n).
The CDH assumption states that there exists a \mathcal{G} relative to which the CDH problem is hard
Let \mathcal{G} denote a polynomial-time, cyclic group generation algorithm
Definition: We say the DDH problem is hard relative to \mathcal{G} if for all PPT algorithms \mathcal{A} there exists a negligible function \textsf{negl} such that \begin{align*} &\bigg| \Pr[\mathcal{A}(G,q,g,g^x,g^y,g^z) = 1] \\ &\ \ - \Pr[\mathcal{A}(G,q,g,g^x,g^y,g^{xy}) = 1]\bigg| \le \textsf{negl}(n)\end{align*} where x,y,z\in \mathbb{Z}_q are uniformly chosen
The DDH assumption states that there exists a \mathcal{G} relative to which the DDH problem is hard
Cyclic groups of prime order are preferred because the DL problem is hardest in such groups
Finding generators in prime-order cyclic groups is trivial
Subgroups of \mathbb{Z}_p^* and elliptic curves are two sources of prime-order cyclic groups
Theorem: If p is a prime, then Z_p^* is a cyclic group of order p-1
Proof can be found in Prof. Forney’s notes
There exists an integer g \in \mathbb{Z}_p^* such that \mathbb{Z}_p^* = \left\{g^i \mid i \in \{0,1,2,\ldots,p-2\}\right\}
Theorem: Let p=rq+1 with p,q prime. Then G = \{ h^r \bmod p \mid h \in \mathbb{Z}_p^*\} is a subgroup of \mathbb{Z}_p^* of order q.
Proof
G = \{ h^r \bmod p \mid h \in \mathbb{Z}_p^*\}
A generator of the subgroup G can be found as follows
Let n = \| q \| and l = \|p\|
Two types of algorithms are known for computing discrete logarithms in order-q subgroups of \mathbb{Z}_p^*
For a fixed security level, say 2^{128} operations, n and l should be chosen as small as possible