Vous êtes sur la page 1sur 2

Université Ibn Zohr Filière SMI6

Faculté des Sciences d’Agadir Module : Sécurité des réseaux informatiques


Département d’Informatique Année Universitaire 2022/2023

Atelier 5
Objectif :
Partie I : Comprendre le principe de fonctionnement des fameux algorithmes
cryptographiques.
Partie II : Se familiariser avec le rôle des fonctions de Hachages.

Partie I : Cryptographie
A. Chiffrement par substitution
Exercice 1 : chiffrement de César
Soit le chiffrement de César, si on choisit la clé : k=4
1. Chiffrer le texte clair suivant : « SMI»
2. Décrypté le texte chiffré suivant « exxeuyi »
Soit le chiffrement de Vigenère, si on choisit la clé :
Kv= (Z, H, K)
3. Chiffrer le texte clair suivant : « Linux» (1pt)
4. Décrypter le texte chiffré suivant : « evbbl lqbdd »
5. Rappel :
A B C D E F G H I J K L M N O P O R S T U V W X Y Z
B. Cryptographie symétrique
Comparer le niveau de sécurité proposé par les deux algorithmes suivant : AES et DES

C. Cryptographie asymétrique
Exercice 2 : « RSA »
En utilisant l’algorithme de chiffrement RSA pour sécuriser sa communication avec Bob,
Alice choisis deux nombres premiers p et q et une clé secrète d tel que: p= 5, q= 31 et d=37.
1. Calculez la clé publique(e, n).
2. Chiffrer le message transmis par Bob tel que : m = 5
3. Déchiffrer le message reçus par Alice tel que : c=7
Partie II : Fonctions de Hachage
a) Créer un fichier vide « Hachage.py »
b) Copier le code suivant dans le fichier précédent.
import hashlib
Texte_Hache = hashlib.md5(b‘cours ‘) .hexdigest()
// hexdigest() retourne les données hachées en hexadécimale

print(Texte_Hache)
print (‘la taille de la fonction MD5 est :’, len(Texte_Hache))
c) Compiler le fichier précédant on utilisant la commande « python Hachage.py »
d) Remplacer le mot ‘cours’ par le mot ‘Cours’ et compiler à nouveau le fichier, qu'est-
ce que vous remarquez?
e) Remplacer le mot ‘cours ‘par la phrase ‘cours de securite’ et compiler à nouveau le
fichier, qu'est-ce que vous remarquez?
f) Ajouter les lignes suivantes au code précédent
Texte_Hache = hashlib.sha1(b‘cours ‘) .hexdigest()
print(Texte_Hache)
print (‘la taille de la fonction sha1 est :’, len(Texte_Hache))

g) Compiler à nouveau le fichier « Hachage.py », qu'est-ce que vous remarquez?


h) De la même façon utiliser les fonctions de hachage suivantes : sha224, sha256,
sha384 et sha512 pour condenser la phrase « cours de securite »
i) Citer la principale différence entre les fonctions de hachage précédentes.
j) Résumer les principaux points de différence entre le hachage et la cryptographie

Vous aimerez peut-être aussi