Write chiffrement affine
This commit is contained in:
parent
6c961b7572
commit
5466c4f9cf
1 changed files with 121 additions and 12 deletions
|
@ -5,6 +5,8 @@
|
|||
\date{Dernière compilation~: \today{} à \currenttime}
|
||||
|
||||
\usepackage{../cours}
|
||||
\usepackage{tikz}
|
||||
\usetikzlibrary{shapes.multipart}
|
||||
|
||||
\begin{document}
|
||||
|
||||
|
@ -353,20 +355,127 @@
|
|||
\right.
|
||||
\end{align*}
|
||||
|
||||
Exemple~:
|
||||
\begin{multicols}{2}
|
||||
|
||||
$\overline{7}$ est-il inversible dans $\frac{\mathbb{Z}}{15\mathbb{Z}}$~?
|
||||
\hfill
|
||||
\begin{tabularx}{0.5\linewidth}{YYY}
|
||||
\toprule
|
||||
r & u & q \\
|
||||
\midrule
|
||||
15 & 0 & \\
|
||||
7 & 1 & 2 \\
|
||||
1 & -2 & 7 \\
|
||||
0 & & \\
|
||||
Exemple~:
|
||||
$\overline{7}$ est-il inversible dans $\frac{\mathbb{Z}}{15\mathbb{Z}}$~?
|
||||
|
||||
$u=-2$, $u+n = 13$ donc l'inverse de $\overline{7}$ est $\overline{13}$.
|
||||
|
||||
\begin{tabularx}{\linewidth}{YYY}
|
||||
\toprule
|
||||
r & u & q \\
|
||||
\midrule
|
||||
15 & 0 & \\
|
||||
7 & 1 & 2 \\
|
||||
1 & -2 & 7 \\
|
||||
0 & & \\
|
||||
\end{tabularx}
|
||||
|
||||
\end{multicols}
|
||||
|
||||
\section{Éléments de cryptographie}
|
||||
|
||||
%\begin{center}
|
||||
%\begin{tikzpicture}
|
||||
% \node [rectangle,draw,thick] (chiff) at (0,0) {fonction de chiffrement};
|
||||
%\end{tikzpicture}
|
||||
%\end{center}
|
||||
|
||||
Les fonctions sont publiques.
|
||||
Cela leur permet notamment d'être bien testées.
|
||||
Il faut donc un élément qui peut rester privé~: les clés de chiffrement et de déchiffrement.
|
||||
|
||||
Pour déchiffrer un message, il suffit de connaître le message chiffré (public), la fonction de déchiffrement (public) et la clé de déchiffrement.
|
||||
Cette clé est donc l'unique élément privé, et c'est son partage qui va poser problème.
|
||||
|
||||
\subsection{Chiffrement de César}
|
||||
|
||||
Alphabet~:
|
||||
\begin{equation*}
|
||||
\begin{array}{lllll}
|
||||
a & b & c & \cdots & z \\
|
||||
0 & 1 & 2 & \cdots & 25 \\
|
||||
\end{array}
|
||||
\end{equation*}
|
||||
|
||||
Fonction de chiffrement~:
|
||||
\begin{equation*}
|
||||
c = (m + k)[26]
|
||||
\end{equation*}
|
||||
|
||||
Fonction de déchiffrement~:
|
||||
\begin{equation*}
|
||||
m = c - k
|
||||
\end{equation*}
|
||||
|
||||
\subsection{Chiffrement symmétrique}
|
||||
|
||||
Si l'on connaît la clé de chiffrement ($k_c$), on connaît la clé de déchiffrement ($k_d$).
|
||||
$k_d$ est donc la ressource critique.
|
||||
Les clés sont secrètes.
|
||||
|
||||
Enigma, utilisé par les Allemands pendant la Seconde Guerre Mondiale, est symmétrique.
|
||||
|
||||
\subsection{Chiffrement affine}
|
||||
|
||||
\begin{multicols}{2}
|
||||
|
||||
On a un alphabet de $n$ symboles. \\
|
||||
Par exemple ici $n=6$.
|
||||
|
||||
\begin{tabularx}{\linewidth}{YY}
|
||||
& $\frac{\mathbb{Z}}{6\mathbb{Z}}$ \\ \\
|
||||
a & $\overline{0}$ \\
|
||||
b & $\overline{1}$ \\
|
||||
c & $\overline{2}$ \\
|
||||
x & $\overline{3}$ \\
|
||||
! & $\overline{4}$ \\
|
||||
- & $\overline{5}$ \\
|
||||
\end{tabularx}
|
||||
|
||||
$u=-2$, $u+n = 13$ donc l'inverse de $\overline{7}$ est $\overline{13}$.
|
||||
\end{multicols}
|
||||
|
||||
Chiffrement~:
|
||||
\begin{equation*}
|
||||
c = (\overline{a} \otimes m) \oplus \overline{b}
|
||||
\end{equation*}
|
||||
|
||||
Clé~:
|
||||
\begin{equation*}
|
||||
k_c = (\overline{a}, \overline{b})
|
||||
\end{equation*}
|
||||
|
||||
Donc~:
|
||||
\begin{equation*}
|
||||
\text{xab!} \implies \bar{3} \bar{0} \bar{1} \bar{4}
|
||||
\end{equation*}
|
||||
|
||||
\begin{tabularx}{\linewidth}{YYYYY}
|
||||
xab! & $\overline{3}$ & $\overline{0}$ & $\overline{1}$ & $\overline{4}$ \\
|
||||
$(\overline{a}\otimes m) \oplus \overline{b}$ & $\downarrow$ & $\downarrow$ & $\downarrow$ & $\downarrow$ \\
|
||||
& $(\overline{5}\otimes \overline{3}) \oplus \overline{2}$ & $(\overline{5}\otimes \overline{0}) \oplus \overline{2}$ & $(\overline{5}\otimes \overline{1}) \oplus \overline{2}$ & $(\overline{5}\otimes \overline{4}) \oplus \overline{2}$ \\
|
||||
& $=\overline{5}$ & $=\overline{2}$ & $=\overline{1}$ & $=\overline{4}$ \\
|
||||
& $\downarrow$ & $\downarrow$ & $\downarrow$ & $\downarrow$ \\
|
||||
& - & c & b & $!$ \\
|
||||
\end{tabularx}
|
||||
|
||||
On a donc \texttt{xab!} $\rightarrow$ \texttt{-cb!}.
|
||||
|
||||
\begin{align*}
|
||||
&c = am + b &&c = \overline{a} \otimes m \oplus \overline{b} \\
|
||||
&c - b = am &&c \oplus (\overline{-b}) = \overline{a} \otimes m \\
|
||||
&\frac{c - b}{a} = m &&\overline{a}^{-1} \otimes (c \oplus (\overline{-b})) = m
|
||||
\end{align*}
|
||||
|
||||
\begin{equation*}
|
||||
m = \overline{a}^{-1} \otimes c \oplus (\overline{a}^{-1} \otimes (\overline{-b}))
|
||||
\end{equation*}
|
||||
\begin{equation*}
|
||||
k_c : (\overline{a}, \overline{b}), \overline{a} \text{ inversible}
|
||||
\end{equation*}
|
||||
\begin{equation*}
|
||||
k_d : (\overline{a}^{-1}, \overline{a}^{-1} \otimes (\overline{-b}))
|
||||
\end{equation*}
|
||||
|
||||
\end{document}
|
||||
|
|
Loading…
Reference in a new issue