Licence Professionnelle en Cyber et Cybercriminalité (CYB) › Licence 2 › CYB · S3 · UE1 — Cryptanalyse
Principes de la cryptographie et cryptanalyse
👤 Aminoulaye Mounkaila Midou — Master Informatique
Présentation
Ce cours d’introduction à la cryptologie (UE1 « Cryptanalyse », L2) présente les principes sur lesquels reposent toutes les protections modernes de l’information : messageries, paiement mobile, VPN des banques et des opérateurs, sauvegardes chiffrées des administrations. On part de l’histoire des chiffres secrets et de leur cryptanalyse élémentaire (César, Vigenère, analyse de fréquences), on acquiert les outils mathématiques indispensables (arithmétique modulaire, théorie de Shannon), puis on étudie la cryptographie symétrique (DES, AES, modes opératoires) et asymétrique (RSA, Diffie-Hellman, ElGamal, courbes elliptiques). La cryptanalyse est abordée dans une démarche défensive : comprendre pourquoi un système tombe pour savoir choisir et configurer des algorithmes sûrs. Les exercices se font sur de petits nombres, à la main puis avec Python (pow, hashlib) et OpenSSL dans le laboratoire personnel de l’étudiant. Ce cours est complété, au même semestre, par « Gestion de clés et algorithmes cryptographiques » (GAC2312) : hachage, MAC, signatures, gestion des clés et PKI.
Objectifs d’apprentissage
- Retracer les grandes étapes de l’histoire de la cryptographie et de la cryptanalyse et en tirer les principes de Kerckhoffs et de Shannon.
- Chiffrer et casser les chiffrements classiques (César, ROT13, substitution, Vigenère) par force brute, analyse de fréquences et méthode de Kasiski.
- Effectuer les calculs d’arithmétique modulaire utiles en cryptographie (PGCD, inverse, exponentiation rapide, Fermat-Euler) et évaluer une sécurité en bits.
- Décrire le fonctionnement des chiffrements symétriques (flot, blocs, DES, 3DES, AES) et choisir un mode opératoire adapté.
- Mettre en œuvre à la main RSA, Diffie-Hellman et ElGamal et expliquer le principe des courbes elliptiques.
- Identifier les grandes familles d’attaques et recommander des algorithmes et des tailles de clés conformes à l’état de l’art.
Prérequis
Mathématiques de base (division euclidienne, nombres premiers, puissances, logarithme en base 2), numération binaire et hexadécimale, notions de programmation Python et utilisation de la ligne de commande Linux.
Plan du cours
- Leçon 1 — Histoire de la cryptographie et cryptanalyse des chiffrements classiques
- Leçon 2 — Outils modernes : services de sécurité, arithmétique modulaire et théorie de Shannon
- Leçon 3 — Cryptographie symétrique : chiffrements par flot et par blocs, DES, AES et modes opératoires
- Leçon 4 — Cryptographie asymétrique : RSA, Diffie-Hellman, ElGamal, courbes elliptiques et cryptanalyse
Modalités d’évaluation
Volume horaire : 13 h de cours magistral, 7 h de travaux dirigés, 0 h de TP encadré, 20 h de travail personnel de l’étudiant (TPE), 2 crédits. Les manipulations OpenSSL/Python proposées sont réalisées en TPE sur les machines virtuelles de l’étudiant. Évaluation : contrôle continu (40 % : quiz en ligne, exercices de TD corrigés, compte rendu d’une manipulation) et examen terminal écrit (60 % : exercices de calcul et questions de cours, calculatrice autorisée).
Bibliographie
- A. Menezes, P. van Oorschot, S. Vanstone, Handbook of Applied Cryptography, CRC Press, 1996 (consultable en ligne sur le site de l’Université de Waterloo).
- B. Schneier, Cryptographie appliquée : protocoles, algorithmes et code source en C, Vuibert (traduction de Applied Cryptography, Wiley).
- S. Singh, Histoire des codes secrets : de l’Égypte des pharaons à l’ordinateur quantique, JC Lattès, 1999 (rééd. Le Livre de Poche).
- C. Paar, J. Pelzl, Understanding Cryptography, Springer, 2010.
- NIST, FIPS 197 Advanced Encryption Standard et SP 800-57 Recommendation for Key Management ; ANSSI, guide de sélection d’algorithmes cryptographiques.
Évaluation globale de la matière
Connectez-vous pour suivre votre progression.
Programme
- 🔒 Leçon 1 — Histoire de la cryptographie et cryptanalyse des chiffrements classiques · 90 min
- 🔒 Leçon 2 — Outils modernes : services de sécurité, arithmétique modulaire et théorie de Shannon · 90 min
- 🔒 Leçon 3 — Cryptographie symétrique : chiffrements par flot et par blocs, DES, AES et modes opératoires · 90 min
- 🔒 Leçon 4 — Cryptographie asymétrique : RSA, Diffie-Hellman, ElGamal, courbes elliptiques et cryptanalyse · 90 min
- 🔒 Quiz — Principes de la cryptographie et cryptanalyse · quiz
Évaluation globale de la matière
Connectez-vous pour suivre votre progression.
