\section{The Discrete Log Problem} \definition{} Let $g$ be a generator in $(\mathbb{Z}_p^\times, \ast)$ \par Let $n$ be a positive integer. \vspace{1mm} We now want a function \say{log} from $\mathbb{Z}_p^\times$ to $\mathbb{Z}^+$ so that $\log_g(g^n) = n$. \par In other words, we want an inverse of the \say{exponent} function. \vspace{1mm} This is the \textit{discrete logarithm problem}, often abbreviated \textit{DLP}. \problem{} Does the discrete log function even exist? \par Show that $\exp$ is a bijection, which will guarantee the existence of $\log$. \par \note[Note]{Why does this guarantee the existence of log? Recall our lesson on functions.} \vfill \problem{} What's the simplest (but not the most efficient) way to calculate $\log_g(a)$? \vfill \problem{} Find an efficient way to solve the discrete log problem. \par Then learn \LaTeX, write a paper, and enjoy free admission to the graduate program at any university. \par \vfill The discrete logarithm can be quickly computed in a few special cases, but there is no known way to efficiently compute it in general. Interestingly enough, we haven't been able to prove that an efficient solution \textit{doesn't} exist. The best we can offer is a \say{proof by effort:} many smart people have been trying for long time and haven't solved it yet. It probably doesn't exist. \vspace{2mm} In the next few pages, we'll see how the assumption \say{DLP is hard} can be used to construct various tools used to secure communications. \pagebreak