diff --git a/infotro/README.md b/infotro/README.md index 9c68185..59fb085 100644 --- a/infotro/README.md +++ b/infotro/README.md @@ -14,6 +14,7 @@ - [Protocol development](/infotro/SDi/protocol_development.md) - [Bluetooth](/infotro/SDi/bluetooth.md) - [Database](/infotro/SDi/database.md) +- [Information Security](/infotro/SDi/security.md) ## [Eln - Électronique](/infotro/Eln/) - [AD/DA](/infotro/Eln/ADDA) diff --git a/infotro/SDi/README.md b/infotro/SDi/README.md index e14763b..0fdf078 100644 --- a/infotro/SDi/README.md +++ b/infotro/SDi/README.md @@ -6,4 +6,5 @@ SDi - Système Distribué - [IOT Technologies](/infotro/SDi/iot_technologies.md) - [Protocol development](/infotro/SDi/protocol_development.md) - [Bluetooth](/infotro/SDi/bluetooth.md) -- [Database](/infotro/SDi/database.md) \ No newline at end of file +- [Database](/infotro/SDi/database.md) +- [Information Security](/infotro/SDi/security.md) \ No newline at end of file diff --git a/infotro/SDi/cipher_modes.png b/infotro/SDi/cipher_modes.png new file mode 100644 index 0000000..2881350 Binary files /dev/null and b/infotro/SDi/cipher_modes.png differ diff --git a/infotro/SDi/medias/TuxPenguinModes.jpeg b/infotro/SDi/medias/TuxPenguinModes.jpeg new file mode 100644 index 0000000..2fe1173 Binary files /dev/null and b/infotro/SDi/medias/TuxPenguinModes.jpeg differ diff --git a/infotro/SDi/medias/security-cbc.png b/infotro/SDi/medias/security-cbc.png new file mode 100644 index 0000000..73a524c Binary files /dev/null and b/infotro/SDi/medias/security-cbc.png differ diff --git a/infotro/SDi/medias/security-diffie_hellman.png b/infotro/SDi/medias/security-diffie_hellman.png new file mode 100644 index 0000000..9aa9d4b Binary files /dev/null and b/infotro/SDi/medias/security-diffie_hellman.png differ diff --git a/infotro/SDi/medias/security-diffie_hellman_color.png b/infotro/SDi/medias/security-diffie_hellman_color.png new file mode 100644 index 0000000..e956f57 Binary files /dev/null and b/infotro/SDi/medias/security-diffie_hellman_color.png differ diff --git a/infotro/SDi/medias/security-ecb.png b/infotro/SDi/medias/security-ecb.png new file mode 100644 index 0000000..b4a912c Binary files /dev/null and b/infotro/SDi/medias/security-ecb.png differ diff --git a/infotro/SDi/security.md b/infotro/SDi/security.md new file mode 100644 index 0000000..82d9409 --- /dev/null +++ b/infotro/SDi/security.md @@ -0,0 +1,49 @@ +

+Information Security +

+ +[Labs about information security](/infotro/SDi/labs/SSL/README.md) + +# Clé sysmétrique +Alice et Bob ont la même clé secrète pour chiffrer et déchiffrer les messages. +On peut encrypter par bloc ou par flux. +- Par bloc : on découpe le message en blocs de taille fixe et on chiffre chaque bloc. + On doit obligatoirement finir par un byte de padding. +- Par flux : on chiffre le message en continu. (Convolution) + +Un cryptage ECB (Electronic Code Book) encrypt un message par bloc indépendant. +Cela signifie que si deux blocs sont identiques, ils seront chiffrés de la même manière. +Cela peut être dangereux si un attaquant peut deviner le contenu du message. + +![ECB_Concatenation](medias/security-ecb.png) + +Un cryptage CBC (Cipher Block Chaining) utilise un vecteur d'initialisation pour chiffrer le premier bloc. +Le vecteur d'initialisation peut être public. +Ensuite, on utilise le bloc chiffré précédent pour chiffrer le bloc suivant. +Cela permet de ne pas avoir le même chiffrage pour deux blocs identiques. + +![CBC_chaine](medias/security-cbc.png) + +Sans utiliser de vecteur d'initialisation, un message bien qu'encrypté peut être deviné. +Cela permet de trouver la clé secrète. +Il vaut mieux utiliser un vecteur d'initialisation. + +![TuxPenguinModes.jpeg](medias%2FTuxPenguinModes.jpeg) + + +![Cipher modes of Operations](cipher_modes.png) + +# Échange de clé avec Diffie-Hellman +Diffie-Hellman permet d'échanger une clé secrète sans que les deux parties se soient jamais rencontrées. +- Alice et Bob se mettent d'accord sur un nombre premier p et un générateur g. +- Alice choisit un nombre $a$ et Bob choisit un nombre $b$. +- Alice envoie à Bob $g^a \mod p$ et Bob envoie à Alice $g^b \mod p$. +- Alice calcule $(g^b)^a \mod p$ et Bob calcule $(g^a)^b \mod p$. + +Les deux calculs donnent la même clé secrète. + +![Diffie-Hellman Colors](medias/security-diffie_hellman_color.png) +![Diffie-Hellman ](medias/security-diffie_hellman.png) + +# Clé asymétrique +#RTFM \ No newline at end of file diff --git a/infotro/_navbar.md b/infotro/_navbar.md index 7b9947e..3ca973c 100644 --- a/infotro/_navbar.md +++ b/infotro/_navbar.md @@ -10,6 +10,7 @@ * [Protocol development](/infotro/SDi/protocol_development.md) * [Bluetooth](/infotro/SDi/bluetooth.md) * [Database](/infotro/SDi/database.md) + * [Information Security](/infotro/SDi/security.md) * [Eln - Électronique](/infotro/Eln/) * [AD/DA](/infotro/Eln/ADDA) * [Signaux et échantillonnage](/infotro/Eln/SignauxEtEchantillonnage)