NSI Thursday 28 October y ———————————————————————————————————————— TP Sécurisat
NSI Thursday 28 October y ———————————————————————————————————————— TP Sécurisation des communications : Introduction au hachage et au cryptage L’objectif de ce TP est d’aborder les notions de hachage et de cryptage symétrique et asymétrique. Vous devrez rédiger un compte-rendu de TP dans le document Word de l’énoncé. I) Installation et lancement de la machine virtuelle Ubuntu : Voir le site : https://www.papergeek.fr/comment-installer-une-machine-virtuelle-linux-dans- windows-10-81428 Partie 1 : Le hachage Source : Tutorial Ubuntu « How to verify your Ubuntu download https://tutorials.ubuntu.com/tutorial/tutorial-how-to-verify-ubuntu#0 1) Vérifiez que les logiciels sha256sum, md5sum et gpg sont installés sur votre système 2) Vérification d’intégrité de l’image iso Ubuntu18.04 avec l’algorithme de hachage SHA 2.1) L’image iso peut être trouvée sur ce lien : http://releases.ubuntu.com/18.04/ 2.2) Constatez que le fichier SHA256SUMS contient des empreintes pour toutes les images disponibles. 2.3) Comment faire confiance à ces empreintes? Le fichier SHA256SUMS.gpg est la signature GnuPG pour ce fichier. L'empreinte gpg est vérifiée par rapport au serveur de clés publiques Ubuntu. Par conséquent, si la signature correspond, vous savez qu'elle est authentique, peu importe où et comment elle a été téléchargée! 2.4) Ces deux fichiers SHA256SUMS et SHA256SUMS.gpg seront utilisés pour vérifier l’intégrité de l’image ISO : il faut donc les télécharger dans un dossier nommé TPsecu par exemple ainsi que l’image ISO. 2.5) Pour prouver que les deux fichiers SHA256SUMS et SHA256SUMS.gpg ont bien été générés par Ubuntu, il faut vérifier leur signature électronique. La commande gpg qui permet de vérifier une signature électronique est : gpg --keyid-format long --verify SHA256SUMS.gpg SHA256SUMS 2.6) Que nous indique le message en retour? expliquez 2.7) Téléchargement de clés publiques depuis le serveur de clés Ubuntu : gpg --keyid-format long --keyserver hkp://keyserver.ubuntu.com --recv-keys 0x46181433FBB75451 0xD94AA3F0EFE21092 2.8) Que nous indique le message en retour? expliquez 2.9) Que faut-il faire à présent? Quel est le résultat ? Conclusion ? 2.10) Que reste-t-il à faire ? 2.11) Vérifiez que l’image ISO et les deux fichiers SHA256SUMS et SHA256SUMS.gpg sont dans le même répertoire. Puis exécutez la commande : sha256sum -c SHA256SUMS D.Déser Page 1 sur 3 T G NSI Thursday 28 October y 2.12) Que pouvez-vous en conclure? 3) Vérification d’intégrité de l’image iso Ubuntu18.04 avec l’algorithme de hachage MD5 3.1) Comment calculer l’empreinte MD5 de l’image iso ? md5sum <nom_du_fichier.iso> 3.2) Que faut-il faire ensuite pour vérifier l’intégrité de l’image iso ? Que concluez-vous ? Partie 2 : Le cryptage Source : TP OpenSSL de Olivier Ruatta http://www.unilim.fr/pages_perso/olivier.ruatta/CRYPTO/TP1openssl.pdf 4) Qu’est-ce-que SSL ? Le terme SSL est un acronyme pour Secure Socket Layer qui est un protocole (en fait un ensemble de protocoles) qui a été développé par la société Netscape Communication Corporation pour permettre la communication sécurisée en mode client/serveur pour des application réseaux utilisant TCP/IP. Le protocole TLS (Transport Layer Security) est une évolution de SSL réalisé par l’IETF et qui sert de base à HTTPS par exemple. Le protocole SSL est entre la couche TCP/IP et une application utilisant TCP. Le principe général d’un protocole de type SSL est qu’il se passe en deux temps :1. Une poignée de mains : c’est une étape durant laquelle le client et le serveur s’identifient, s’authentifient, se mettent d’accord sur le type du système de chiffrement et les clefs qui seront utilisées lors du reste de la communication. 2. La phase de communication : les données sont alors échangées en format chiffré et signé. 5) Qu’est-ce que OpenSSL ? La bibliothèque OpenSSL est une implantation libre des protocoles SSL et TSL qui donne accès à : Une bibliothèque de fonctionnalité écrite en C permettant de réaliser des applications client/serveur sécurisées s’appuyant sur SSL/TSL, Un ensemble d’exécutables en ligne de commande en ligne permettant en particulier: − la forge (création) de clefs RSA − la création de certificat X509 (identification) − le calcul d’empreintes (MD5, SHA, , ...) − le chiffrement et le déchiffrement (RSA, DES, AES, , ...) − la réalisation de tests de clients et serveurs SSL/TSL − la signature et le chiffrement de courriers La syntaxe générale pour l’utilisation en mode shell des fonctionnalités OpenSSL est la suivante : $ openssl <commande> <options> 6) Opérations de base avec OpenSSL Vous pouvez utiliser les fonctionnalités suivantes : D.Déser Page 2 sur 3 T G NSI Thursday 28 October y $ openssl genrsa -out fichier_rsa.priv size : génère la clé privée RSA de taille size. les valeurs possible pour size sont : 512, 1024, etc. $ openssl rsa -in fichier_rsa.priv -pubout -out fichier_rsa.pub> : stocke la clé publique dans un fichier fichier_rsa.pub (création de de la clé publique associée à la clef privée). $ openssl rsa -in fichier_rsa.priv -des3 -out fichier.pem : chiffre la clef privée RSA avec l’algorithme DES3. Vous pouvez utiliser DES, 3DES, IDEA, etc. $ openssl rand -out clé.key nombre_bits : pour générer un nombre aléatoire de taille nombre_bits (utiliser l’option -base 64 pour la lisibilité).(Permet de générer une clé pour les chiffrements symétriques). $ openssl aes-256-cbc -in clair.txt -out chiffre.enc -e -k cle.key: pour chiffrer un fichier avec l’AES. $ openssl rsautl –encrypt –pubin -inkey rsa.pub -in clair.txt -out chiffre.enc : pour chiffrer le fichier clair.txt avec la clé publique RSA rsa.pub $ openssl rsautl -decrypt -inkey rsa.priv -in chiffre.enc -out fichier.txt : pour déchiffrer le fichier chiffre.enc avec une clé privée rsa. $openssl rsautl -sign -inkey ras.priv -in fichier.txt -out fic.sig : pour générer une signature. $ openssl rsautl -verify -pubin -inkey rsa.pub -in fic fic.sig : pour vérifier une signature. 7) Quelques exercices de base avec OpenSSL/ Pour chaque exercice, vous indiquerez dans le compte rendu les commandes que vous avez effectués ainsi que les résultats obtenus 7.1) Vérifiez que OpenSSL est installé 7.2) Forgez vos clefs RSA 512 et affichez-les. (Remarque: Affichez vos clés en base64 pour plus de lisibilité) 7.3) Créez un petit fichier nommé clair.txt (par exemple avec la commande ls>clair.txt ) et cryptez le en RSA avec votre clé publique. Vérifiez que le fichier est bien chiffré. 7.4) Décryptez le fichier avec votre clé privée 7.5) Déposez sur MBN un fichier crypté à l’attention du prof en utilisant sa clé publique. 7.6) Générez une clef AES 256. Chiffrez le fichier énoncé du TP avec puis déchiffrez-le. 8) Rendu en fin de séance Lorsque vous aurez fini le TP, enregistrez votre compte-rendu sous le nom TPsecu_nom_prenom.docx. Déposer le fichier sur MBN D.Déser Page 3 sur 3 T G uploads/Industriel/ tp-securisation-des-communications-introduction-au-hachage-et-au-cryptage.pdf
Documents similaires










-
32
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Mai 22, 2021
- Catégorie Industry / Industr...
- Langue French
- Taille du fichier 0.0896MB