Files
Yggdrasil/infotro/SDi/security.md
T
2024-05-04 15:15:01 +02:00

2.0 KiB

Information Security

Labs about information security

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

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

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

Cipher modes of Operations

É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 Diffie-Hellman

Clé asymétrique

#RTFM