Universit´e Gustave Eiffel Master Informatique 1 Cryptographie
Session de septembre 2020
Dur´ee: 2 heures
Exercice 1. — On consid`ere le sch´ema d’authentification suivant : Un client C et un serveur S partagent une clef secr`eteK (un entier denbits). Pour authentifier un client, le serveur g´en`ere un nombre al´eatoireN denbits et envoie au clientM =K⊕N (⊕est le ou exclusif bit `a bit). Le client calculeN =K⊕M et renvoieN pour prouver qu’il connaˆıtK. Que pensez-vous de ce protocole ? Exercice 2. — Le chiffrement de Hill (sur 26 lettres) repr´esente chaque bloc de m lettres par un vecteur colonne X `a coefficients dans Z/26Zet le chiffre par la formuleY =KX o`u la clefK est une matrice inversiblem×m. On prendm= 2 et
K =
12 5
3 1
a) Calculer le chiffrement du digramme LL.
b) Calculer la matrice de d´echiffrement et v´erifier le r´esultat pr´ec´edent.
Exercice 3. —Un chiffre par blocs tr`es simple utilise des blocsP de 64 bits et une clefK =K0||K1
de 128 bits. Le cryptogramme d’un bloc est
C = (P⊕K0) +K1
o`u⊕est le ou exclusif bit `a bit et + l’addition modulo 264. a) Comment d´echiffre-t’onC ?
b) Ecrire un code Python implantant ce syst`eme.
Exercice 4. —Soit un syst`eme RSA dont la clef publique este= 31 etn= 35. Vous interceptez le texte chiffr´eC= 11. Que vautM ?
Exercice 5 –Bob utilise le protocole RSA et publie sa clef publiquen= 187 ete= 3.
a) Chiffrer le messagem= 15 avec cette clef publique.
b) En utilisant le fait queϕ(N) = 160, retrouver la factorisation den, puis la clef priv´ee de Bob.
Exercice 6 – On consid`ere un syst`eme RSA avec le module n = 3×11 = 33, et l’exposant de chiffremente= 3. On va l’utiliser dans le cadre de la signature ´electronique d’un documentM. 1) Rappeler le principe g´en´eral de la signature RSA.
2) En pratique, on ne signe pas le message M directement mais plutˆot un r´esum´e de ce message obtenu `a l’aide d’une fonction de hachageh: on ne signe donc pasM mais plutˆoth(M). Expliquer pourquoi.
3) On suppose maintenant qu’Alice souhaite signer par RSA un document M. On suppose donc utiliser la clef publique (n,e) = (33,3) et la clef priv´ee (d,3,11) (on calculeradsi n´ecessaire). Elle utilise une fonction de hachageh et obtient h(M) = 2. Quelle est la valeurS de la signature ´electronique obtenue `a partir deh(M) ?
4) Bob recoit le documentM avec la signatureS calcul´ee pr´ec´edemment. En effectuant le hachage de ce document par la fonctionh, il obtienth(M) = 3. Que doit-il en conclure ?
Exercice 7. —A et B utilisent le protocole de Diffie-Hellman avecp= 71 etg= 7. Si A tire l’exposant a= 6 et B l’exposant b= 9, quelles sont les donn´ees ´echang´ees ? Quelle sera la clef de session ?