Bases et applications de la cryptographie

Un serveur qui reçoit des données chiffrées en mode CBC renvoyait des erreurs différentes selon que le remplissage était incorrect après déchiffrement ou que le remplissage était correct mais que la vérification du contenu échouait. Quelle affirmation décrit correctement cette situation ?

  1. AUn attaquant peut envoyer des textes chiffrés modifiés et, en se servant de la différence entre les erreurs comme indice, risque de retrouver le texte clair octet par octet sans connaître la clé
  2. BLa différence entre les erreurs ne révèle que la longueur du remplissage ; tant que la clé ne fuit pas, le contenu du texte clair lui-même ne peut pas fuiter
  3. CPasser d'une clé AES-128 à une clé AES-256 supprime le risque que le texte clair soit retrouvé à partir de la différence entre les erreurs
Afficher la réponse et l'explication

Réponse : A. Un attaquant peut envoyer des textes chiffrés modifiés et, en se servant de la différence entre les erreurs comme indice, risque de retrouver le texte clair octet par octet sans connaître la clé

Lors du déchiffrement en mode CBC, inverser un bit d'un bloc de texte chiffré inverse le bit de même position dans le résultat déchiffré du bloc suivant. En envoyant des variantes du dernier octet du bloc précédent et en cherchant une valeur jugée « remplissage correct », un attaquant trouve le dernier octet du texte clair, puis, en répétant l'opération, révèle le texte clair octet par octet. C'est l'attaque par oracle de remplissage (padding oracle), dans laquelle les différences de type d'erreur ou de temps de réponse servent d'indice (l'oracle). La contre-mesure de base consiste à utiliser un chiffrement authentifié comme GCM, ou à vérifier d'abord un MAC joint au texte chiffré et à rejeter uniformément, avant tout déchiffrement, les textes chiffrés falsifiés.

S'entraîner sur ce thème Retour au thème

Autres questions sur Bases et applications de la cryptographie

  1. Quelle affirmation décrit correctement une caractéristique du mode CTR (mode compteur) d'un chiffrement par blocs ?
  2. En mode CTR, deux messages ont été chiffrés par erreur avec la même clé et le même nonce. Pour l'octet situé à une certaine position, le premier texte clair P₁ vaut 01001000 (« H » en ASCII), son texte chiffré C₁ vaut 01110100 et le second texte chiffré C₂ vaut 01010101. Si l'attaquant connaît P₁, quel est le second texte clair P₂ à la même position ?
  3. Que fournit en une seule opération un chiffrement authentifié (AEAD) comme AES-GCM ?
  4. Quelle affirmation sur le nonce (IV) de 96 bits utilisé dans AES-GCM est correcte ?
  5. Sur une certaine machine, une attaque par force brute qui essaie toutes les clés de 56 bits prend environ 20 heures. Quelle durée est la plus proche du temps nécessaire à la même machine pour essayer toutes les clés de 64 bits ?