Cours pdf qu’est ce que la cryptographie?, tutoriel & guide de travaux pratiques en pdf.
1 Introduction
1.1 Qu’est ce que la cryptographie
1.2 Qualités d’un cryptosystème
2 Historique
2.1 Codes a répertoire
2.2 Codes de permutation ou de transposition
2.3 Codes de substitution
2.3.1 Cryptanalyse des codes de César
2.4 Le code de Vigénère
2.5 Chiffrement de Hill
2.6 Commentaires historiques
3 Quelques méthodes de codage
3.1 Chiffrement en chaıne
3.2 Codes a confidentialité parfaite
3.3 Registres a décalage
3.3.1 Régistres a décalages
3.4 Lutte contre le brouillage
4 Sécurité d’un cryptosystème
4.1 Différentes notions de sécurité
5 Les codes modernes
5.1 Objectifs des codes actuels
5.2 Les familles de codes modernes
5.3 Codes symétriques
5.4 Codes asymétriques
5.5 Les échanges de clefs
5.5.1 Protocole d’échange de clefs
6 Applications de la cryptographie
6.1 Quel cryptosystème choisir
6.2 Quelques utilisations de la cryptographie
6.3 Quelles mathématiques pour la cryptographie
7 Codes a clefs secrètes
7.1 Description de DES
7.1.1 Quelques apects techniques de DES
7.2 Description d’AES
7.2.1 Quelques apects techniques d’AES
7.3 Infrastructure des systèmes a clef secrète
8 Codes a clefs publiques
8.1 Principe des codes a clef publique
8.1.1 Fonctions a sens unique
8.2 Le système RSA
8.2.1 Description du cryptosystème RSA
8.2.2 Protocole d’envoi d’un message en RSA
8.2.3 Protocole de signature RSA
8.2.4 Exemple académique de codes RSA
8.2.5 Exemple de code RSA
8.2.6 Sécurité du système RSA
8.3 Le cryptosystème El Gamal
8.3.1 Description du cryptosystème El Gamal
8.3.2 Signature El Gamal
8.3.3 Sécurité du système EL Gamal
8.3.4 Exemple académique de code El Gamal
8.4 Infrastructure des systèmes a clef publique
9 Fonctions de Hachage
9.1 Construction des fonctions de hachage
9.1.1 Attaques des anniversaires
9.1.2 Exemple académique de fonction de hachage
9.1.3 Fonction de hachage standard
10 Quelques protocoles cryptographiques
10.1 Protocoles de signature
10.1.1 Protocole de signature a clef privée
10.1.2 Protocole de signature a clef publique
10.2 Protocoles de datation
10.2.1 Protocole de datation
10.3 Signature avec fonction de hachage
10.4 Fonction de hachage et mot de passe
10.5 Preuve sans transfert de connaissance
10.5.1 Preuve sans transfert de connaissances
10.5.2 Transfert inconscient
11 Rappels Mathématiques
11.1 Théorie de l’information
11.1.1 Rappels de probabilités discrètes
11.1.2 Confidentialité parfaite
11.1.3 Entropie
11.2 Théorie de la complexité
11.2.1 Décidabilité
11.2.2 Complexité algorithmique
11.2.3 Algorithmes polynomiaux
11.3 Rappels d’arithmétique
11.3.1 La division euclidienne
11.3.2 Plus Grand Commun Diviseur
11.3.3 Algorithme du PGCD
11.3.4 Les Congruences
11.4 Tests de primalité
11.5 Méthode de factorisation
11.6 Rappels d’algèbre
11.6.1 Anneau des polynômes
11.7 Courbes elliptiques
11.7.1 Courbes Elliptiques sur un corps fini
Bibliographie
Index
Introduction
Le but du cours est de donner une introduction a la cryptographie moderne utilisée dans la transmission et le stockage sécurisé de données. Après un rapide historique de la cryptographie on examinera les principaux systèmes cryptographiques actuellement utilisés.
• Les codes par flots
– les codes basés sur les registres `a décalages
• les codes par blocs
– Les systèmes a clef secrètes ou symétriques: AES avec un rappel sur DES et les systèmes dérivés
– Les systèmes a clefs publiques ou asymétriques: RSA et El Gamal L’accent sera mis sur les principes et les outils mathématiques utilisés (arithmétique, algèbre, algorithmique, complexité, probabilité, théorie de l’information,..).
Néanmoins des protocoles seront décrits et on a ajouté une sensibilisation aux Infrastructure pour les Systèmes a Clef Publique (Public Key Infrastructures) et au systèmes de Management des Clefs Secrètes (Symmetric Keys Management).
La mise en œuvre d’un cryptosystème a clef publique (public key infrastructure ou PKI) ainsi que celle d’un cryptosystème a clef secrète seront juste évoquées. Les problèmes de mise en œuvre informatique, les produits et les normes sont décrits dans des cours plus appliqués (réseaux, sécurité réseaux,…).
On emploiera indifféremment les mots cryptographie, chiffrement et même parfois codage.