Examen Cryptographie Sujet 02

EXAMEN CRYPTOGRAPHIE | SUJET 02

Examen cryptographie

Examinateur : Mr JoëlYk

Exercice 1 : Chiffrement multiplicatif (5pts)

On consid`ere l’anneau Z30 = {0, 1, 2, . . . , 29} des entiers modulo 30. Rappelons qu’un el´ement a ∈ Z30 est inversible si, et seulement si, pgcd(a, 30) = 1

  1. Enumerer tous les elements de Z*30 (les elements de Z30 inversibles). 2pt
  2. Calculer l’inverse dans Z*30 des elements trouves a la question precedente. 3pt

Exercice 2 : cryptographique d’ElGamal (13 pts)

On s’intéresse à l’algorithme cryptographique d’ElGamal.
1. Peut-on avoir pour un même message clair plusieurs messages chiffrés ? justifier votre.
2. Afin d’utiliser l’algorithme ElGamal , Alice et Bob s’entendent sur les valeurs de p; g. Soit g=3 montrer que g est générateur de Z7 .
3. Soit a = 4 la clé secrète d’Alice, donner la clé publique d’Alice.
4. Supposons que Bob veut envoyer le message m=2 à Alice avec un aléa k=5; quel est le message chiffré correspondant à envoyer à Alice ?
5. Montrer comment Alice retrouve le message m à partir du message chiffré reçu.
6. Une mauvaise utilisation de la signature d’ElGamal consiste à utiliser la même valeur de k pour signer plusieurs messages. Montrer que si Bob signe deux différents messages m1,m2 avec la même valeur k et obtient les signatures (r,s1), (r,s2); Oscar pourra générer une signature pour tout message dans des conditions particulières.
7. Supposons que le générateur de nombres pseudo-aléatoires d’Alice tombe en panne. Elle décide d’utiliser sa clé privée a à la place. Comment Oscar qui intercepte (m,r,s) peut-il se rendre compte de cette panne ?
8. Considérons a variante de la signature d’ElGamal où p, g, a, A, k, r sont les mêmes pour la signature d’ElGamal mais s= (1 − ma)k-1r−1 mod (p-1). quelle est la vérification de cette signature ?
9. Montrer qu’Oscar peut casser cette signature.


Exercice 3  Chiffrement par decalage (Cesar) 2PTS

1. Chiffrer le message la rencontre est prevue  a la cafeteria a l’aide du chiffrement par d´ecalage et de la cle K = 5.
2. D´ecrypter le message “RGNEIDVGPEWXTRAPHHXFJT” sachant qu’il a ´et´e cr´e´e par un chiffrement par decalage

Correction :

EXERCICE 1 :

1) Solution: 30 = 2 × 15 = 2 × 3 × 5, donc tous les ´el´ements de Z30 non divisibles par 2, 3 et 5 sont premiers avec 30. Il s’agit donc de Z*30 = {1, 7, 11, 13, 17, 19, 23, 29}.

2)On appliquera l’algorithme d’Euclide ´etendu pour trouver U tel que aU + 30V = 1

Crypto correction

EXERICE 2 :

1. (1pt) Notons que ce calcul dépend du choix de k et donc que pour un message clair donné, il y aplusieurs messages chiffrés correspondants
2. (1.5pt) 31 = 3; 32 = 9 = 2; 33 = 2 * 3 = 6; 34 = 6 * 3 = 4; 35 = 4 * 3 = 5; 36 = 5 * 3 = 1, tous les calculs sont modulo 7, ainsi g = 3 génère tous les éléments de Z7, il est générateur de Z7.
3. (0.5pt) Soit a = 4 la clé secrete d’Alice, Alors A = ga (mod p) = 34 (mod 7) = 4. La clé publique est (p =7; g = 3;A = 4)


4. (1pt) Le message chiffré est un couple (c1; c2) il est obtenu comme suit :
c1 = gk (mod p) = 35 (mod 7) = 5
c2 = mAk (mod p) = 2 * 45 (mod 7) = 2 *2 = 4


5. (2pt) Soit le couple reçu par Alice (c1; c2) , elle déchiffre le message comme suit :
m = c1-a c2 (mod p)
= 5-44 (mod 7)
= (5-1)44 (mod 7)
= 344 (mod 7)
= 4 * 4 (mod 7)
= 2


6. (2pt) S1= k-1(m1-ar) mod p-1
S2= k-1(m1-ar) mod p-1
k=(s1-s2)(m1-m2)-1 mod p-1 si pgcd((m1-m2), p-1)=1, on trouvera k et conséquent on trouvera a la clé secrète, on pourra signer tout message.


7. (2pt) La clé publique est (p ; g; A = ga) si k=a, r=ga=A mod p et oscar remarque que r=A
8. (2pt) la vérification est g*r-rs= Am
9. (1pt) A partir de r,s choisis, on peut définir un message m

EXERCICE 3 :
1. QF WJSHTSYWJ JXY UWJAZJ F QF HFKJYJWNF
2. On obtient le message clair : ”cryptographie classique” par un d´ecalage de 15.

Si vous avez trouvé les examenscorrigés en Cryptographie de Mr JoëlYk intéressants et utiles, pourquoi ne pas les partager avec d'autres personnes qui pourraient également en bénéficier ? Partagez ce lien sur les réseaux sociaux ou envoyez-le à vos amis et collègues. Vous pourriez aider quelqu'un à améliorer ses compétences en programmation ou à trouver des solutions à des problèmes complexes. N'oubliez pas que la connaissance doit être partagée pour grandir. Merci pour votre soutien et votre partage !

Contact WhatsApp : +237 658395978 | Réaliser Par Joël_Yk

  • Aucune note. Soyez le premier à attribuer une note !

Ajouter un commentaire

Anti-spam