Home / Teaching / Initiation à la cryptologie: les messages chiffrés à travers les âges
Détails
Difficulté: ★ ☆ ☆ ☆ ☆
Durée estimée: 8h
Language(s) utilisé(s): Python
Logiciel(s) utilisé(s): Bibliothèques Python (re
, random
, math
,
matplotlib
)
Objectifs
L'objectif de ces séances est de se familiariser avec les primitives cryptographiques simples et de découvrir les différentes classes d'attaques utilisées pour les mettre en défaut.
Les algorithmes choisis sont des algorithmes simples, ne nécessitant souvent pas l'usage d'un ordinateur pour être mis en défaut: ici nous nous sensibilisons aux propriétés de sécurité couvertes par la cryptographie.
Différents algorithmes de chiffrement vulnérables (utilisés à travers les âges) sont énumérés ; une implémentation est réalisée puis accompagnée d'une attaque permettant de la mettre en défaut.
Attention! Ce TP n'est pas un cours de cryptographie! Il s'agit seulement d'une introduction aux principes de base des attaques sur les systèmes cryptographiques.
Plan du cours
- Ensemble des possibles
- Chiffrement par décalage (ou Chiffre de César)
- Attaque par force brute
- Chiffrement par substitution monoalphabétique
- Attaque par analyse de fréquences
- Chiffrement par substitution polyalphabétique (ou Chiffre de Vigenère)
- Attaques Monte-Carlo par chaînes de Markov
- Les Chaînes de Markov
- La méthode Monte-Carlo
- Attaque MCMC sur le Chiffre de Vigenère
- Cryptanalyse des systèmes de chiffrement
- Test de Kasiski
- Attaques à clair connu
- Attaques à clair choisi / chiffré choisi
- Attaques par canaux auxiliaires
Sujet
Le sujet du cours est disponible ici.