Académique Documents
Professionnel Documents
Culture Documents
Cryptographie
Message
(texte Encryption Texte chiffré Decryption Texte
en clair) (Chiffrement) (Cryptogramme) (Déchiffrement) en clair
Terminologie de base
▪ Texte en clair - le message d'origine
▪ Texte chiffré – le message codé ou brouillé
▪ Algorithme de chiffrement - algorithme pour transformer
du texte en clair en texte chiffré
▪ Clé secrète - information utilisée dans le chiffrement
connue uniquement de l'expéditeur / destinataire
▪ Chiffrement - conversion de texte brut en texte chiffré
▪ Déchiffrement - récupération du texte brut à partir du
texte chiffré
▪ Cryptographie - étude des principes / méthodes de
chiffrement /cryptage
▪ Cryptanalyse (rupture de code) - l'étude des principes /
méthodes de déchiffrement du texte chiffré sans
connaître la clé
▪ Cryptologie - le domaine de la cryptographie et de la
cryptanalyse
Principe de Kerckhoffs
▪ chiffrement de César
▪ utilisé par Jules César
▪ Le plus simple et le plus ancien connu
▪ technique de substitution
▪ remplace chaque lettre par celle avec 3 lettres (circulaire)
vers le bas dans l'alphabet
▪ a devient d, b devient e,…, y devient b, z devient c
▪ pas de clé
Cryptographie à clé secrète -
Historique
Chiffrement de César (suite)
▪ Exemple
texte en clair: meet me after the toga party
texte chiffré: PHHW PH DIWHU WKH WRJD SDUWB
▪ Peut définir la transformation comme :
a b c d e f g h i j k l m n o p q r s t u v w x y z
D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
▪ Donne mathématiquement à chaque lettre un chiffre
a b c d e f g h i j k l m n o p q r s t u v w x y z
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
▪ Exemples:
▪ le chiffre de Playfair (avec n= 2)
▪ le chiffre de Hill
▪ certains systèmes modernes comme le RSA
Cryptographie à clé secrète -
Historique
Chiffrement Playfair
▪ inventé par Charles Wheatstone en 1854, mais porte le nom de
son ami Baron Playfair
▪ largement utilisé pendant de nombreuses années
▪ par l'armée britannique pendant la Première Guerre
mondiale en tant que système standard
▪ également utilisé (entre autres systèmes) pendant la
Seconde Guerre mondiale par l'armée américaine et
d'autres forces alliées
▪ Améliore la sécurité en chiffrant les messages par blocs de n
lettres
▪ Exemple : blocs de 2 (appelées digrammes) hs chiffré en BP
▪ 26*26 = 676 digrammes
▪ la cryptanalyse doit être basée sur la fréquence des digrammes
qui est plus difficile que le chiffrement monoalphabétique
Cryptographie à clé secrète -
Historique
Chiffrements par substitutions polyalphabétiques
▪ différentes substitutions monoalphabétiques en passant par le
texte en clair
▪ la clé détermine la règle de substitution monoalphabétique à
appliquer à chaque lettre
Le chiffrement de Vigenère
▪ un exemple célèbre
clé: deceptivedeceptivedeceptive
Texte en clair: wearediscoveredsaveyourself
Texte chiffré: ZICVTWQNGRZGVTWAVZHCQYGLMGJ
Key: 4 3 1 2 5 6 7
Plaintext: a t t a c k p
o s t p o n e
d u n t i l t
w o a m x y z
Ciphertext: TTNAAPTMTSUOAODWCOIXKNLYPETZ
Vers la cryptographie moderne
Chiffre de Vernam
▪ inventé en 1918 par Gilbert Vernam d’AT&T
▪ traite les messages comme des données binaires
▪ XOR le texte brut avec la clé
▪ Réversible (c'est-à-dire que le déchiffrement est
possible)
▪ clé très longue dans les bandes
▪ répétitions possibles pour les messages longs
▪ la cryptanalyse est difficile mais possible avec une
quantité suffisante de texte chiffré
Vers la cryptographie moderne
One-time pad
La clé est aléatoire et est aussi longue que le texte en clair
La clé n'est pas réutilisée
Sécurisé inconditionnellement
le texte chiffré n'a aucune relation statistique avec le texte
en clair
pour un texte chiffré donné, il existe plusieurs décryptages
intelligibles utilisant des clés différentes
même l’attaque par force brute ne fonctionne pas, car il
n'est pas possible de comprendre quel décryptage est le
bon
généralement, les données et la clé sont représentées en
binaire puis les deux sont XORé au niveau du bit
Séquence E-D-E
l'utilisation du décryptage à la deuxième étape ne réduit /
n'augmente pas la sécurité
Pourquoi le décryptage au stade intermédiaire?
Triple-DES avec trois clés
▪ Pour ceux qui s'inquiètent des attaques contre le 3-DES avec
deux clés
▪ Séquence E-D-E
C = EK3[DK2[EK1[P]]]
▪ a été adopté par certaines applications Internet, par exemple
PGP, S / MIME
Blowfish
Développé par Bruce Schneier en 1993
Est rapidement devenu une alternative à DES très
appréciée
64 bits de taille de bloc
La taille de la clé est variable
un à quatorze blocs de 32 bits
32 à 448 bits
offre un bon compromis entre sécurité et performance
Rapide et compact
facilité de mise en œuvre et haute vitesse d’exécution
exécution possible avec moins de 5 Ko de mémoire
A été implémenté dans de nombreux produits
y compris GnuPG, SSH
voir http://www.schneier.com/blowfish-products.html
Ce n'est plus si recommandé en raison de la petite taille
des blocs et de certaines attaques cryptanalytiques
RC5
Code de Ron 5
développé en 1994 par Ron Rivest qui est
également co-inventeur du cryptosystème RSA
détenu et largement utilisé par RSA Inc.
hautement paramétrique
traitement orienté mot
rapidité
utilise seulement des opérations de base
généralement présentes dans presque tous
les microprocesseurs
Simplicité d’implémentation matérielle ou
logicielle
RC5-w/r/b
RC5 est en fait une famille d'algorithmes
Paramètres: w, r, b
w: taille du mot
16, 32 ou 64 bits
la taille du bloc est de 2 * w
Europe vs USA
commercial vs académique
Ceux basés aux États-Unis étaient tous
d'origine commerciale
Critères d'évaluation de AES
Critères finaux (utilisés pour sélectionner le gagnant)
sécurité générale
Le NIST s'est appuyé sur une évaluation effectuée par la communauté
cryptographique
implémentation matérielle
non seulement les délais, mais aussi le coût est important
en particulier pour les environnements à espace restreint (tels que les cartes à
puce)
Le mode
Output
FeedBack
- OFB IV
Le mode Counter - CTR
similaire à OFB mais crypte la valeur du
compteur plutôt que toute valeur de retour
Pour la même clé, la valeur du compteur ne
doit pas se répéter
même problème que dans OFB
efficace
peut faire des chiffrements parallèles
le processus de chiffrement/déchiffrement est
effectué avant le besoin
bon pour les liaisons haut débit
Le mode
Counter
- CTR
Générateurs de nombres
pseudo-aléatoires (PRNG)
utilisent souvent des techniques algorithmiques
déterministes pour créer des «nombres aléatoires»
bien que ne soient pas vraiment aléatoires
peut passer de nombreux tests de «caractère aléatoire»
appelés «nombres pseudo-aléatoires»
Utilisation des chiffrements par
blocs comme PRNG
les applications cryptographiques peuvent utiliser un
chiffrement par blocs pour générer des nombres aléatoires
souvent pour créer des clés de session à partir de la clé
principale
Méthodes standards
CTR
Xi = EK[V+i]
OFB
Xi = EK[Xi-1]
X0 = EK[V]
Chiffrements de flux
traiter le message bit par bit
Énonce simplement
une clé et un générateur de nombres pseudo aléatoires (PRNG) sont utilisés
pour créer un keystream (pseudo) aléatoire
le keystream et le texte brut sont XORé au niveau du bit pour créer le texte
chiffré
le texte chiffré est XORé avec le même keystream pour restaurer le texte en
clair
keystream keystream
Chiffrement de flux - Quelques
considérations de conception de