DDH ⇒ PRF (Naor–Reingold)
Statement
If DDH is hard for , the Naor–Reingold function is a PRF: over with key , it maps to — NR97.
Sketch
Hybrid answers with for a random function on , so hybrid is the Naor–Reingold function and hybrid a random function. A distinguisher between hybrids and tells polynomially many DDH tuples sharing the exponent from random ones, and random self-reducibility derives such tuples from a single DDH instance with no further multiplicative loss.
\begin{algorithm}
\algname{Algorithm}
\caption{$\KeyGen(1^\secpar)$}
\begin{algorithmic}
\State $(\GG, g, p) \gets \GrGen(1^\secpar)$
\State $(a_0, a_1, \ldots, a_n) \getsr [p]^{n+1}$
\Return $k \gets (\GG, g, p, a_0, \ldots, a_n)$
\end{algorithmic}
\end{algorithm}
\begin{algorithm}
\algname{Algorithm}
\caption{$\Eval(k, x)$}
\begin{algorithmic}
\Return $g^{a_0 \prod_{i : x_i = 1} a_i}$
\Comment{$\calD = \bits^n$, $\calR = \GG$}
\end{algorithmic}
\end{algorithm}