Continue theorie-information-cryptologie

This commit is contained in:
flyingscorpio@clevo 2022-10-08 17:24:54 +02:00
parent 7641298bf0
commit e95bb337dd

View file

@ -13,7 +13,7 @@
\clearpage
\section{Chiffrement symétrique}
\section{Introduction}
L'algorithme de chiffrement est \emph{connu publiquement}.
C'est le principe de Kirshoff.
@ -32,33 +32,72 @@
\item Enchère
\end{itemize}
\section{Une science rigoureuse}
\subsection{Une science rigoureuse}
\paragraph{Les trois étapes de la cryptographie}
\paragraph{Les trois étapes de la cryptographie}
\begin{itemize}
\item spécifier avec précision le \emph{modèle de menace}
\item proposer une construction
\item prouver que briser la construction résoudra un problème difficile sous-jacent
\end{itemize}
\begin{itemize}
\item spécifier avec précision le \emph{modèle de menace}
\item proposer une construction
\item prouver que briser la construction résoudra un problème difficile sous-jacent
\end{itemize}
\paragraph{Choses à retenir}
\paragraph{Choses à retenir}
La cryptographie est un outil formidable et à la base de nombreux mécanismes de sécurité.
Mais elle n'est \emph{pas}~:
La cryptographie est un outil formidable et à la base de nombreux mécanismes de sécurité.
Mais elle n'est \emph{pas}~:
\begin{itemize}
\item la solution à tous les problèmes
\item fiable à moins d'être implémentée et utilisée correctement
\item quelque chose à essayer d'inventer soi-même
\end{itemize}
\begin{itemize}
\item la solution à tous les problèmes
\item fiable à moins d'être implémentée et utilisée correctement
\item quelque chose à essayer d'inventer soi-même
\end{itemize}
\section{Chiffrement de César}
C'est un chiffrement simple par substitution.
On définit un décalage et on remplace chaque lettre de l'alphabet par la lettre résultant de ce décalage~:
\begin{align*}
C = E(k,p) = (p+k) \mod{26} \\
p = D(k,C) = (C-k) \mod{26}
\end{align*}
Ce chiffrement est vulnérable à une attaque par force brute pour trois raisons~:
\begin{enumerate}
\item Les algorithmes de chiffrement et déchiffrement sont connus.
\item Il n'y a que 25 clés à essayer.
\item La langue du texte brut est connue et facilement reconnaissable.
\end{enumerate}
De plus, une lettre donnant toujours la même lettre après chiffrement, il est facile de faire une analyse fréquentielle pour deviner le décalage à opérer.
\section{Chiffrement monoalphabétique}
Une \emph{permutation} d'un ensemble fini d'éléments $S$ est une suite ordonnée de tous les éléments de $S$, chaque élément apparaissant exactement une fois.
Par exemple~:
\begin{align*}
S = \{a,b,c\} \quad &\implies P = \{abc,acb,bac,bca,cab,cba\} \\
|S| = n \quad &\implies |P| = n!
\end{align*}
Comparativement au chiffrement de César, si la lettre chiffrée peut prendre n'importe quelle permutation, alors il y a aura $26!$ clés différentes, c'est à dire $\approx 4 \times 10^{26} \approx 2^{86}$.
Là encore, ce chiffrement est vulnérable aux analyses fréquentielles.
Comme solution au problème, on peut~:
\begin{itemize}
\item chiffrer plusieurs lettres à la fois
\item utiliser plusieurs alphabets
\end{itemize}
\section{Chiffres de substitution polygrammiques}
Dans les systèmes polygrammiques, un groupe de $n$ lettres est chiffré par un groupe de $m$ symboles.
Les lettres ne sont donc pas chiffrées séparément, mais par groupes.
On parle parfois de chiffrement \emph{par blocs}.
\section{Chiffrement polyalphabétique}
\section{Chiffrement de Vigénère}