diff options
| author | martial.simon <martial.simon@epita.fr> | 2025-04-13 19:54:19 +0200 |
|---|---|---|
| committer | martial.simon <martial.simon@epita.fr> | 2025-04-13 19:54:19 +0200 |
| commit | 66c3bbfa94d8a41e58adf154be25e6d86fee8e30 (patch) | |
| tree | 9c5e998f324f2f60c1717759144da3f996c5ae1a /CHIFR/TD/TD1.md | |
init: initial commit
Diffstat (limited to 'CHIFR/TD/TD1.md')
| -rwxr-xr-x | CHIFR/TD/TD1.md | 174 |
1 files changed, 174 insertions, 0 deletions
diff --git a/CHIFR/TD/TD1.md b/CHIFR/TD/TD1.md new file mode 100755 index 0000000..aa1e67b --- /dev/null +++ b/CHIFR/TD/TD1.md @@ -0,0 +1,174 @@ +# 1. Chiffrement historique +## 1-1/ César +### a. +25 +### b. +Non, trop simple à bruteforce +### c. +Non, sensible au bruteforce +## 1-2/ N'importe quelle lettre +### a. +26! +### b. +Suffisant contre bruteforce +### c. +Cassable par analyse fréquentielle +## 1-3/ Sur un octet +### a. +256! +### b. +Suffisant contre bruteforce +### c. +Analyse fréquentielle ne fonctionne plus + +# 2. Chiffrement par blocs +## 2.1 Modes opératoires +### 2-2 ECB +$$ +\begin{align} +Enc &: &\{0,1\}^k& &\times& &\{ 0,1 \}^n &&\longrightarrow& &\{ 0,1 \}^n \\ + && K& &,& &m & &\longmapsto & &Enc_{K}(m) +\end{align} +$$ +#### a. +$$ +\begin{align} +Dec &: &\{0,1\}^k& &\times& &\{ 0,1 \}^n &&\longrightarrow& &\{ 0,1 \}^n \\ + && K& &,& &c & &\longmapsto & &Dec_{K}(c) +\end{align} +$$ +#### b. +N'affecte pas, chiffrement indépendant +#### c. +Oui +### 2-3 OFB +$z_{0}=IV$, et $z_i=Enc_k(z_{i-1})$, $\forall i, 1 \leq i \leq t$ +$c_i=m_i \oplus z_i$, $\forall i, 1 \leq i \leq t$ +Avec $IV \in \{0,1\}^n$ un vecteur d'initialisation tiré aléatoirement +#### a. +$m_{i} = c_{i} \oplus z_{i}$ +### 2-4 CBC +$c_{0}=IV, c_{i}=Enc_{k}(m_{i} \oplus c_{i-1}), \forall i,\, 1 \leq i \leq t$ +#### a. +$m_{i} = Dec_{k}(c_{i}) \oplus c_{i-1}$ +#### b. +Impact sur $m_i$ et $m_{i+1}$ +#### c. +Non lol +### 2-5 PCBC +$c_{-1}=IV,\, c_{0} \oplus m_{o} = IV, c_{i} = Enc_{k}(m_{i} \oplus m_{i-1} \oplus c_{i-1}),\, 1 \leq i \leq t$ +#### a. +## 2.2 Schéma de Feistel +### 2-6 +Soient $f_1 : \{ 0,1 \}^4 \mapsto \{ 0,1 \}^4$ et $f_{2} : \{ 0,1 \}^4 \mapsto \{ 0,1 \}^4$ tels que $\forall a \in \{ 0,1 \}^4$ +$$ +f_{1}(a) := a \oplus 1011 \;et\; f_{2} := \overline{a} \oplus 0101 +$$ +#### a. +$$ +\begin{align} +&\begin{cases} +L_{1} = R_{0} \\ +R_{1} = L_{0} \oplus f_{1}(R_{0}) +\end{cases} \\ +&\begin{cases} +L_{1} = 0011 \\ +R_{1} = 1101 \oplus 1000 +\end{cases} \\ +&\begin{cases} +L_{1} = 0011 \\ +R_{1} = 0101 +\end{cases} \\ +&\begin{cases} +L_{2} = R_{1} = 0101 \\ +R_{2} = L_{1} \oplus f_{2}(R_{1}) +\end{cases} \\ +&\begin{cases} +L_{2} = 0101 \\ +R_{2} = 0011 \oplus 1010 \oplus 0101 +\end{cases} \\ +&\begin{cases} +L_{2} = 0101 \\ +R_{2} = 0011 \oplus 1111 +\end{cases} \\ +&\begin{cases} +L_{2} = 0101 \\ +R_{2} = 1100 +\end{cases} \\ +\end{align} +$$ +Résultat : $L_2R_2 = 01011100$ +#### b. +Soit $M = (L_0,R_0) \in \{ 0,1 \}^4 \times \{ 0,1 \}^4$, on a +$$ +C_{0} = \begin{cases} +L_{2} = L_{0} \oplus f_{1}(R_{0}) \\ +R_{2} = R_{0} \oplus f_{2}(L_{0} \oplus f_{1}(R_{0})) +\end{cases} = \begin{cases} +L_{2} = L_{0} \oplus f_{1}(R_{0}) \\ +R_{2} = R_{0} \oplus f_{2}(L_{2}) +\end{cases} +$$ +#### c. +$$ +C =\begin{cases} +L_{2} = L_{0} \\ +R_{2} = R_{0} +\end{cases} +$$ +Donc : +$$ +\begin{align} +&f_{1}(R_{0}) = 0 \\ +\implies& R_{0} \oplus 1011 = 0000 \\ +\implies& R_{0} = 1011 +\end{align} +$$ +Et +$$ +\begin{align} +&f_{2}(L_{0} \oplus f_{1}(R_{0})) = f_{2}(L_{0}) = 0 \\ +\implies& \overline{L_{0}} \oplus 0101 = 0000 \\ +\implies& \overline{L_{0}} = 0101 \\ +\implies& L_{0} = 1010 +\end{align} +$$ +Donc $C = (1010, 1011)$ + +### 2-7 +$$ +F: \{ 0,1 \}^t \times \{ 0,1 \}^t \longrightarrow \{ 0,1 \}^t +$$ +$$ +K \in \{ 0,1 \}^t, \, M = (L_{0},R_{0}) \in \{ 0,1 \}^t \times \{ 0,1 \}^t,\, C = (L_{2},R_{2}) \in \{ 0,1 \}^t \times \{ 0,1 \}^t +$$ + +#### a/ +$$ +\begin{cases} +L_{1} = R_{0} \\ +R_{1} = L_{0} \oplus F(K,R_{0}) +\end{cases} +$$ +#### b/ +$$ +\begin{cases} +L_{2} = L_{0} \oplus F(K,R_{0}) \\ +R_{2} = R_{0} \oplus F(K,L_{0} \oplus F(K,R_{0})) +\end{cases} +$$ +#### c/ +$$ +M' = (L_{0}',R_{0}) \in \{ 0,1 \}^t \times \{ 0,1 \}^t,\, C = (L_{2}',R_{2}') \in \{ 0,1 \}^t \times \{ 0,1 \}^t +$$ +On a : +$$ +\begin{cases} +L_{2}' = L_{0}' \oplus F(K, R_{0}) \\ +R_{2}' = R_{0} \oplus F(K, L_{0}' \oplus F(K,R_{0})) +\end{cases} +$$ +Donc : +$$ +L_{2} \oplus L_{2}' = L_{0}' \oplus F(K,R_{0}) \oplus L_{0} \oplus F(K,R_{0}) = L_{0} \oplus L_{0}' +$$ |
