Cours de Cryptographie : Principes, Chiffrement et Protocoles
Introduction au document et cadre académique
Ce document de cours intitulé Cryptographie Paris 13, élaboré par Daniel Barsky pour la version 2008/2009, propose une introduction complète et structurée à la cryptographie moderne. Conçu pour aborder à la fois les fondements mathématiques, les algorithmes historiques et les protocoles contemporains, ce polycopié s'adresse aux étudiants en informatique, en mathématiques ou dans des filières scientifiques désireux de comprendre la sécurité des données et des transmissions.
Le cours met l'accent sur la rigueur mathématique — en mobilisant l'arithmétique, l'algèbre, la complexité algorithmique et la théorie de l'information — tout en décrivant les grands mécanismes de chiffrement symétrique et asymétrique, les fonctions de hachage et les protocoles cryptographiques essentiels.
Structure et grands chapitres du cours
Le document est divisé en plusieurs chapitres thématiques qui guident progressivement le lecteur des méthodes anciennes vers les systèmes modernes les plus sophistiqués :
- Introduction et terminologie : Définition des objectifs de la cryptographie, distinction entre chiffrement et cryptalyse, présentation des principes de Kerckhoffs et des qualités fondamentales d'un cryptosystème (confidentialité, intégrité, authentification et non-répudiation).
- Historique : Étude des premiers systèmes de chiffrement, incluant les codes à répertoire, les codes de transposition (comme la scytale spartiate), les codes de substitution (chiffre de César et codes affines), le chiffre de Vigenère et le chiffrement de Hill basé sur l'algèbre linéaire.
- Quelques méthodes de codage : Présentation des modes d'opération des chiffrement par blocs symétriques, tels que les modes ECB, CBC, CFB, OFB et CTR.
- Les codes modernes : Formalisation mathématique des cryptosystèmes, classification entre codes symétriques et asymétriques, et introduction aux protocoles d'échange de clés comme celui de Diffie-Hellman.
- Applications de la cryptographie : Panorama des utilisations pratiques, du commerce en ligne au tatouage numérique (watermarking) et à la gestion des droits numériques (DRM).
- Registres à décalage : Étude des suites récurrentes linéaires (LFSR) et de leur utilisation dans les systèmes de chiffrement par flux, avec des exemples appliqués comme le système A5/1 pour les liaisons GSM et le système Bluetooth/E0.
- Codes à clefs secrètes : Analyse des réseaux de substitution-permutation, de la cryptanalyse linéaire et différentielle, ainsi qu'une description détaillée des standards DES et AES.
- Codes à clefs publiques : Étude détaillée des fonctions à sens unique, du cryptosystème de Merkle-Hellman basé sur le problème du sac-à-dos, du système RSA et du système El Gamal, ainsi que des cryptosystèmes sur courbes elliptiques.
- Fonctions de hachage : Construction des fonctions de hachage, résistance aux collisions, attaque des anniversaires et présentation du standard SHA-1.
- Protocoles cryptographiques : Protocoles de signature, datation, gestion des mots de passe et introduction aux preuves sans transfert de connaissance (zero-knowledge proofs).
- La cryptographie et le droit : Présentation de l'encadrement juridique français à travers l'analyse de textes législatifs (lois de 1996, 2004 et 2006).
- Rappels mathématiques : Un formulaire et un cours de rappel complet couvrant la théorie de l'information, la théorie de la complexité, l'arithmétique (division euclidienne, PGCD, congruences, théorème de Bézout, petit théorème de Fermat), l'algèbre (groupes, anneaux, corps finis et polynômes) et les courbes elliptiques.
Méthodes et outils mathématiques abordés
L'une des forces de ce document réside dans l'articulation constante entre la théorie mathématique et sa mise en œuvre en cryptographie. Les étudiants y trouveront des développements rigoureux sur les structures algébriques fondamentales, indispensables pour maîtriser les corps finis $\mathbb{F}_q$ utilisés dans l'algorithme AES ou dans les courbes elliptiques. Les notions de complexité algorithmique permettent d'évaluer la sécurité calculatoire des différents systèmes, notamment en comparant les approches sous-exponentielles de factorisation avec la difficulté du calcul du logarithme discret.
Conseils d'utilisation pour l'apprentissage et la révision
Ce polycopié constitue une ressource d'auto-formation et de révision particulièrement riche. Pour en tirer le meilleur parti, il est recommandé de :
- Traiter les exercices proposés à la fin des chapitres historiques et modernes pour valider la compréhension des algorithmes de chiffrement et de déchiffrement.
- Consulter les rappels mathématiques en fin de document en cas de besoin sur l'arithmétique modulaire ou l'inversion de matrices.
- Étudier les schémas de flux et de réseaux de substitution-permutation pour bien visualiser la diffusion et la confusion prônées par Claude Shannon.
Questions fréquentes
À quel niveau d'études ce cours de cryptographie s'adresse-t-il ?
Ce cours est conçu pour des étudiants de niveau universitaire supérieur en informatique ou en mathématiques (licence avancée ou master), abordant à la fois les aspects théoriques et algorithmiques de la discipline.
Quels sont les principaux algorithmes symétriques et asymétriques étudiés ?
Le document détaille les structures des algorithmes symétriques historiques comme le DES, des standards modernes comme l'AES, ainsi que des cryptosystèmes asymétriques majeurs tels que RSA, El Gamal et les protocoles basés sur les courbes elliptiques.
Le cours aborde-t-il la sécurité juridique de la cryptographie ?
Oui, un chapitre complet est consacré au droit de la cryptographie, incluant l'analyse de textes juridiques français réglementant l'utilisation, l'importation et la fourniture de moyens de cryptologie.
Testez vos connaissances
Question 1
Quel principe fondamental de la cryptographie moderne stipule que la sécurité d'un cryptosystème ne doit pas reposer sur le secret de l'algorithme ?
- Le principe de Shannon
- Les principes de Kerckhoffs
- Le théorème de Bayes
- La conjecture de Diffie-Hellman
Réponse correcte : Les principes de Kerckhoffs
Explication : Énoncé par Auguste Kerckhoffs en 1883, ce principe dispose que la sécurité d'un système de chiffrement doit reposer uniquement sur le secret de la clé et non sur celui de l'algorithme.
Question 2
Quelle est la principale caractéristique d'un chiffrement par blocs tel que l'AES par rapport à un chiffrement par flux ?
- Il traite les données bit par bit en continu.
- Il fragmente le message en blocs de longueur fixe pour leur appliquer une transformation itérative.
- Il ne nécessite aucune clé secrète.
- Il utilise exclusivement des registres à décalage à rétroaction linéaire.
Réponse correcte : Il fragmente le message en blocs de longueur fixe pour leur appliquer une transformation itérative.
Explication : Les systèmes de chiffrement par blocs opèrent sur des blocs de taille fixe (par exemple 128 bits pour l'AES) en répétant des rondes successives de substitutions et de permutations.
Question 3
Sur quelle difficulté mathématique repose principalement la sécurité du système de chiffrement asymétrique RSA ?
- Le calcul du logarithme discret dans un corps fini
- Le problème du sac-à-dos
- La décomposition d'un grand nombre entier en produit de facteurs premiers
- L'accouplement de Weil sur les courbes elliptiques
Réponse correcte : La décomposition d'un grand nombre entier en produit de facteurs premiers
Explication : La fonction à sens unique sous-jacente au RSA est la multiplication de deux grands nombres premiers, dont l'inversion (la factorisation du module $n = pq$) est un problème calculatoirement difficile.
Question 4
Quel type de chiffrement garantit une confidentialité parfaite selon la théorie de l'information de Claude Shannon ?
- Le code de César
- Le code de Vigenère
- Le code de Vernam (masques jetables)
- Le chiffrement de Hill
Réponse correcte : Le code de Vernam (masques jetables)
Explication : Les codes de Vernam utilisent des clés aléatoires de la même longueur que le texte, ne servant qu'une seule fois, ce qui rend impossible toute déduction d'information sur le texte clair à partir du cryptogramme.
Télécharger Cours de Cryptographie : Principes, Chiffrement et Protocoles pdf