35 1 2MB
Université Ferhat Abbas – Sétif 1 Faculté de Technologie Département d'Electronique Filière de Télécommunications
1 ﺟﺎﻣﻌﺔ ﻓﺮﺣﺎت ﻋﺒﺎس – ﺳﻄﻴﻒ ﻠﻴﺔ اﻟﺘﻜﻨﻮﻟﻮﺟﻴﺎ ﻗﺴﻤﺎﻻﻛ وﻧﻴﻚ ﺷﻌﺒﺔ اﻻﺗﺼﺎﻻت اﻟﺴﻠﻜﻴﺔ واﻟﻼﺳﻠﻜﻴﺔ
Niveau : 2ième année Master
A. U. : 2022/2023
Spécialité : Réseaux et Télécommunications
Matière : Cryptographie et Sécurité Réseaux
TD No 2 : Cryptographie Symétrique 1 Questions générales : Répondre aux questions suivantes :
1) Un message chiffré avec un chiffrement par blocs et un mode opératoire quelconque garantitil l’authentification du message reçu? 2) Qu'apporte le chiffrement de vigénère en matière de sécurité par rapport à une simple substitution alphabétique ? 3) Citer quelques exemples d’algorithmes de chiffrement symétrique. 4) Proposer un algorithme de chiffrement symétrique. 5) Selon la cryptographie symétrique, proposer un protocole d’authentification entre deux entités A et B qui partagent une clé KAB
.
6) Pour quels usages utilise t’on la cryptographie symétrique ? 7) Décrivez les méthodes de chiffrement par bloc ECB et CBC (donnez le schéma de chiffrement et déchiffrement ainsi que les formules de chiffrement et déchiffrement); 8) Citez les forces et les faiblesses de la méthode ECB (performances, sécurité) . 9) Décrire un moyen pour distinguer un schéma de Feistel à un tour d’une permutation aléatoire (par une attaque à clairs connus).
Exercice 1 On définit un système de chiffrement de la manière suivante ; si on a un message de longueur k, M = mo m1 m2 . . . mk il est remplacé par le cryptogramme C = c0 c1 c2 . . . ck défini par : ∀i, 0 ≤ i ≤ k, ci = mi + i mod 26. 1. Quel est ce système de chiffrement ? 2. Déchiffrer le message CFUWPJIOQOPCQZSCJUWOCBAKCQE sachant qu’il a été obtenu à l’aide de ce chiffrement ?
Exercice 2
1. On représente l’alphabet latin par les entiers entre 0 et 25 avec la convention A = 0, B = 1, C = 2, . . .. Un chiffrement affine x 7→ ax + b mod 26 transforme le message ’CRYPTO’ en le cryptogramme ’ROXEYZ’. Trouver la clé (a, b) correspondante. 2. Le message clair ’CRYPTO’ a cette fois été chiffré deux fois de suite par un chiffre affine de clé (a′ , b′ ) (c’est-à-dire qu’on a chiffré le chiffré) pour donner en sortie ’NGBAMX’. (a) Montrer que ’NGBAMX’ est le chiffré de ’CRYPTO’ par un chiffre affine de clé (a′′ , b′′ ). Trouver (a′′ , b′′ ). (b) Trouver les deux valeurs possibles de la clé (a′ , b′ ).
Exercice 3 Le chiffrement de HILL correspond à un chiffrement affine à deux dimensions. On chiffre deux lettres à la fois. Les lettres Pk et Pk+1 du texte clair seront chiffrées respectivement Ck et Ck+1 , avec la formule ci-dessous: 𝑃𝑘 𝐶𝑘 𝑎 𝑏 (mod26) = 𝐶𝑘+1 𝑐 𝑑 𝑃𝑘+1 1. Chiffrer le message « DZ » en utilisant la matrice clé suivante : 𝑎 𝑐
3 2 𝑏 = 1 3 𝑑
2. Donner l’équation de déchiffrement
Exercice 4 On consid`ere un diagramme de Feistel sur des mots binaires de 4 bits ` a deux rondes o` u les fonctions f1 et f2 sont les suivantes : f1 00 7→ 11, 01 7→ 00, 10 7→ 11, 11 7→ 00 f2 00 → 7 10, 01 → 7 01, 10 → 7 00, 11 → 7 11
1. Crypter le mot 1111 en utilisant ce diagramme. 2. Trouver tous les mots de 4 bits qui sont invariants par ce diagramme de Feistel. 3. Encrypter le message binaire suivant par ce diagramme de Feistel en utilisant le mode CBC avec pour IV le mot 0000 : 1000 1101 0011 1110 Exercice 5
Soit M un message divisé en blocs {x1,x2,x3 ,…xp}chacun de taille n bits et soit K une clé de même taille que les blocs (n bits). Soit{c1,c2,c3,...cp} les cryptogrammes des blocs obtenus en appliquant la clé K aux blocs.
Le chiffrement des blocs se fait selon le schéma suivant : C0= IV (valeur initiale) ; pour i de 1 à p,
cj=EK(Cj-1⊕ xj)
1) La fonction E K est inversible et son inverse est DK . Montrer que l’opération de déchiffrement est : xj=Cj-1⊕DK (Cj) (rappel : A⊕A=0 ; A⊕0=A, A⊕B= B⊕A)
2) Peut-on chiffrer un bloc quelconque du message M sans chiffrer les blocs qui le précèdent ? Expliquer ?
3) Peut-on déchiffrer un bloc quelconque ci sans déchiffrer les blocs qui le précèdent ? Expliquer ? 4) Peut-on déchiffrer un bloc c j en l’absence des autres blocs chiffrés ? Expliquer ? 5) Prenons le cas où EK(x)=DK (x) =K⊕x. Supposons qu’un attaquant a pu récupérer deux blocs consécutifs (xj-1 ,xj ) ainsi que leurs cryptogrammes correspondants (c j-1,c j). Montrer que cet attaquant peut en déduire la clé de chiffrement K. Exercice 6 1. Quel est l’avantage et l’inconvénient d’un chiffrement symétrique ? 2. Combien de clés sont nécessaires pour que cinq personnes puissent communiquer via un chiffrement symétrique?
Soit Ek une fonction de chiffrement binaire par bloc de taille fixe (4 bits) tel que: A tout message en clair mi on associe un chiffré ci = Ek (mi) Le tableau suivant donne la correspondance entre les messages mi et leurs chiffrés ci : mi ci
0000 0001 0010 0011 0100 0101 0110 0111 0001 1001 0000 1000 0011 1011 0010 1010
mi ci
1000 1001 1010 1011 1100 1101 1110 1111 0101 1101 0100 1100 0111 1111 0110 1110
Donner le chiffré du message M suivant : M= 10110001, avec les modes d’opérations :
ECB CBC (valeur initiale IV= 1010) CFB (valeur initiale IV= 1010) OFB (valeur initiale IV= 1010)