wiener.tex 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. \chapter{Wiener's Attack}
  2. Wiener's attack was first published in 1989 as a result of cryptanalysis on the
  3. use of short RSA secret keys ~\cite{wiener}. It exploited the fact that it is
  4. possible to find the private key in \emph{polynomial time} using continued fractions
  5. expansions whenever a good estimate of the fraction $\frac{e}{N}$ is known.
  6. More specifically, given $d < \frac{1}{3} ^{4}\sqrt{N}$ one can efficiently
  7. recover $d$ only knowing $\angular{N, e}$.
  8. \section{A small digression into continued fractions \label{sec:wiener:cf}}
  9. \section{The actual attack}
  10. As we saw in ~\ref{sec:preq:rsa}, by contruction the two exponents are such that
  11. $ed \equiv 1 \pmod{\varphi(N)}$. This implies that there exists a
  12. $k \in \naturalN \mid ed = k\varphi(N) + 1$. This can be formalized to be
  13. the same problem we saw in ~\ref{sec:wiener:cf}:
  14. \begin{align*}
  15. ed = k\varphi(N) + 1 \\
  16. \abs{\frac{ed - k\eulerphi{N}}{d\eulerphi{N}}} = \frac{1}{d\eulerphi{N}} \\
  17. \abs{\frac{e}{\eulerphi{N}} - \frac{k}{d}} = \frac{1}{d\eulerphi{N}} \\
  18. \end{align*}
  19. Now we proceed by substituting $\eulerphi{N}$ with $N$, since for large $N$, one
  20. approximates the other. We consider also the difference of the two, limited by
  21. $\abs{\cancel{N} + p + q - 1 - \cancel{N}} < 3\sqrt{N}$.
  22. For the last step, remember that $k < d < \rfrac{1}{3} {}^4\sqrt{N}$:
  23. \begin{align*}
  24. \abs{\frac{e}{N} - \frac{k}{d}} &= \abs{\frac{ed - kN}{Nd}} \\
  25. &= \abs{\frac{\cancel{ed} -kN - \cancel{k\eulerphi{N}} + k\eulerphi{N}}{Nd}} \\
  26. &= \abs{\frac{1-k(N-\eulerphi{N})}{Nd}} \\
  27. &\leq \abs{\frac{3k\sqrt{N}}{Nd}}
  28. = \frac{3k}{d\sqrt{N}}
  29. < \frac{3(\rfrac{1}{3} {}^4\sqrt{N})}{d\sqrt{N}}
  30. = \frac{1}{d{}^4\sqrt{N}}
  31. \end{align*}
  32. \section{Again on the engine™}
  33. %%% Local Variables:
  34. %%% mode: latex
  35. %%% TeX-master: "question_authority"
  36. %%% End: