No description
Find a file
2026-05-13 07:52:08 +00:00
README.md Actualiser README.md 2026-05-13 07:52:08 +00:00

TD2 — AES en pratique

Exercices sur papier

Exercice 1 — Conversions

  • Reponses sous-partie A (decimal → hex et hex → decimal) : Décimal -> Hex: 65 -> 41, 200 -> C8, 255 -> FF, 16 -> 10. Hex -> Décimal: 4A -> 74, FF -> 255, 1F -> 31, B0 -> 176
  • Reponses sous-partie B (encodage ASCII de AES, Crypto, Hello!) : AES -> 41 45 53, Crypto -> 43 72 79 70 74 6F, Hello! -> 48 65 6C 6C 6F 21
  • Reponses sous-partie C (XOR octets) : FF XOR 0F -> F0, A5 XOR A5 -> 00, 41 XOR 20 -> 61 (XOR de 'A' avec espace donne 'a', car seul le bit 5 change), 42 XOR 0F -> 4D

Exercice 2 — Round AES

  • Matrice d'etat initiale : Ligne 1: 42 4F 4C 41, Ligne 2: 4F 55 45 4D, Ligne 3: 4E 52 53 49, Ligne 4: 4A 20 20 53
  • Apres AddRoundKey : Ligne 1: 4D 40 43 4E, Ligne 2: 40 5A 4A 42, Ligne 3: 41 5D 5C 46, Ligne 4: 45 2F 2F 5C
  • Apres SubBytes : Ligne 1: E3 09 1A 2F, Ligne 2: 09 BE D6 2C, Ligne 3: 83 4C 4A 5A, Ligne 4: 6E 15 15 4A
  • Apres ShiftRows : Ligne 1: E3 09 1A 2F, Ligne 2: BE D6 2C 09, Ligne 3: 4A 5A 83 4C, Ligne 4: 4A 6E 15 15
  • Reflexion sur les 10 rounds : L'opération MixColumns agit sur plusieurs valeurs simultanément. La modification d'un seul bit entraîne un changement sur au moins 4 bits après un round. En répétant cette opération 10 fois, le changement initial se propage à l'ensemble de la matrice, rendant le résultat final complètement différent.

Exercice 3 — Padding PKCS7

  • Tableau des paddings : TM : Taille du message, TP : Taille du padding, HX : Valeur des octets de padding en hex

TM TP HX 13 3 03 5 11 0B 1 15 0F 16 16 10 31 1 01

  • Messages originaux Q2: a) Hello b) Test!!!!!!!!
  • Pourquoi padder un message multiple de 16 ? : Pour garantir qu'un padding est toujours présent, afin que le message original ne soit pas altéré lors du dépadding.

Exercice 4 — ECB et salaire de Jane

  • Salaire de Jane = candidat n°4
  • Justification (proprietes ECB) : En ECB, deux blocs clairs identiques produisent toujours le même bloc chiffré. On retrouve dans le chiffré du candidat 4 des blocs communs avec celui de Jack, ce qui indique que leurs salaires partagent les mêmes caractères à ces positions et permet de déduire des informations sur le salaire de Jane.
  • Pourquoi ECB est deplorable pour les images : Les images contiennent souvent de larges zones de pixels uniformes. Ces blocs identiques étant chiffrés de façon identique par ECB, des motifs restent visibles dans l'image chiffrée.

Exercice 5 — CBC a la main

  • Chiffrement (C1 C2 C3 C4) : C7 2F B6 38
  • Dechiffrement : A1 B2 C3 D4
  • Reflexion IV : a) Deux IV différents produisent deux chiffrés distincts. b) Si le même IV est réutilisé, le premier bloc sera chiffré identiquement et peut révéler un pattern dans le chiffré. c) Comme chaque bloc dépend du bloc précédent, des blocs clairs identiques ne génèrent pas de pattern, contrairement à ECB.

Exercice 6 — Attaque XOR

  • Cle Q1 : 20 -> " " (espace)
  • Dechiffrement Q2 : WORLD
  • Cle Q3 et message dechiffre : Clé : 41 42 43 -> ABC, Message clair : Bonjour Alice
  • Discussion XOR vs OTP : a) Si une partie du message est connue, il est possible de tout décoder puisque XOR est symétrique : K = P XOR C. b) L'OTP est théoriquement incassable autrement que par force brute, mais il est difficile à utiliser en pratique car la clé doit être aussi longue que le message et ne jamais être réutilisée.

Exercices Python

Partie 7 — ECB et blocs identiques

  • Les deux blocs chiffres sont-ils identiques ? Oui
  • Qu'est-ce que cela implique pour la securite ? (2-3 phrases) Des patterns peuvent être observés dans le message chiffré, ce qui rend ce mode de chiffrement vulnérable. Un attaquant peut ainsi déduire des informations sur le contenu du message sans connaître la clé.

Partie 8 — Effet pingouin

Je n'ai pas trouvé d'image type donc j'en ai trouvé un pour moi

  • Decrire ce qu'on voit sur tux_ecb.bmp : La structure générale de l'image reste visible, on peut toujours distinguer les différentes zones (ciel, montagne...), ce qui illustre la présence de patterns.
  • Decrire ce qu'on voit sur tux_cbc.bmp : L'image apparaît comme un ensemble de pixels aléatoires, aucun pattern n'est discernable.
  • Expliquer pourquoi ECB revele des informations : Un même bloc clair étant toujours chiffré de façon identique, il est possible de retrouver des informations à partir du message chiffré, ce qui compromet la confidentialité.
  • Expliquer pourquoi CBC ne le fait pas : Chaque bloc est chiffré différemment selon le bloc précédent, ce qui rend toute déduction d'information à partir du chiffré quasiment impossible.

Partie 9 — CBC et blocs identiques

  • Les deux blocs chiffres sont-ils identiques en CBC ? Non
  • Comparaison avec ECB : Aucun pattern n'est détectable, ce qui confirme que le mode CBC est nettement plus robuste qu'ECB.

Difficultes rencontrees

(libre)