Vous êtes sur la page 1sur 25

Les approches classiques de chiffrement

La cryptanalyse
Introduction à l’arithmétique modulaire
CLASSIFICATION DES ALGORITHMES CLASSIQUES

Chiffrement classique

Substitution Transposition

Monoalphabétique Polyalphabétique Simple par colonnes


Complexe par colonnes

Vigenère
César
Playfair
Affine
Hill 2

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


CHIFFREMENT DE CÉSAR

¢  Jules César a dit : « DOHD MDFWD


HVW », 10 janvier 49
¢  Le chiffrement de César est un décalage
de l’alphabet de trois lettres :
—  A devient D
—  B devient E
—  C devient F
¢  « ALEA JACTA EST »
¢  « LES DÉS SONT JETÉS »

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


CHIFFREMENT DE CÉSAR

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

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

¢  Chiffrement → C=(L+K) mod 26


¢  Déchiffrement → L=(C−K) mod 26
¢  Exemple : C=(25+2) mod 26 = 1 ≡ « B »
¢  K est la clé de chiffrement (le pas de
décalage)
¢  Cryptanalyse par force brute (25 clés
possibles) 4

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


CRYPTANALYSE PAR FRÉQUENCE DES LETTRES

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


CRYPTANALYSE PAR FRÉQUENCE DES LETTRES

¢  ATRWXUUGTBTCIHNBTIGXFJTTHIJCBTRPCXHBTH
TADCATFJTAJCTBTBTRATJIXAXHTTEDJGATRWXU
UGTBTCITIATSTRWXUUGTBTCI !
¢  Nombre de lettres : 100

¢  Nombre d’occurrences de la lettre « T » : 25

¢  Fréquence d’apparition de la lettre « T » : 25 %

¢  « E » devient « T » → Le pas de décalage égale à 15

¢  LECHIFFREMENTSYMETRIQUEESTUNMECANISMES
ELONLEQUELUNEMEMECLEUTILISEEPOURLECHIF
FREMENTETLEDECHIFFREMENT!
6

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


LE CHIFFRE AFFINE
¢  Version améliorée du chiffrement de César
¢  Au lieu d’additionner un pas de décalage, on utilise une
fonction affine : F(X)=aX+b
¢  Clé → (a, b) tel que a, b ∈ [0 … 25] et PGCD(a, 26)=1

¢  Nombre de clés possibles : 12×26 = 312

¢  Chiffrement : C=(a×L+b) mod 26

¢  Déchiffrement : L=a−1×(C−b) mod 26

¢  Si a=1 → Chiffrement de César

¢  Exemple : Pour une clé (a, b)=(3, 11) : « NSA » ≡


(13,18,0) → (24,13,11) ≡ « YNL »
7

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


CRYPTANALYSE DU CHIFFRE D’AFFINE

¢  Etablir la fréquence relative à chaque lettre chiffrée


¢  Identifier les chiffrés des deux lettres les plus fréquentes

¢  Résoudre un système d’équations à deux inconnus :


—  F(L1)=C1=(a×L1+b) mod 26
—  F(L2)=C2=(a×L2+b) mod 26
¢  Exemple :
—  F(« E »)=F(4)=6≡« G » → (4a+b) mod 26=6
—  F(« T »)=F(19)=7≡« H » → (19a+b) mod 26=7
—  (a, b)=(7, 4)
8

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


CHIFFREMENT DE VIGENÈRE

¢  Amélioration du chiffrement de César


¢  L’utilisation non pas d’un, mais de 26
alphabets décalés pour le chiffrement
¢  Une clé sous forme d’un mot est utilisée
pour identifier le décalage adéquat
—  A → alphabet décalé de 0 pas
—  B → alphabet décalé de 1 pas
—  C → alphabet décalé de 2 pas

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


CARRÉ DE VIGENÈRE

10

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


EXEMPLE

¢  Message en clair : « CRYPTOGRAPHIE »


¢  Clé de chiffrement : « PASSE »

Claire C R Y P T O G R A P H I E
Clé P A S S E P A S S E P A S
Chiffré R R Q H X D G J S T W I W

¢  La force du chiffrement de Vigenère est que la même


lettre est chiffrée de différentes manières ce qui rend
inutilisable l’analyse de fréquence classique

11

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


CHIFFREMENT DE PLAYFAIR

¢  Wheatstone, 1856
¢  A partir d’un alphabet et d’un mot clé, on
construit une matrice de 5×5
¢  On remplit la matrice par les lettres du
mot clé
¢  On complète par les lettres restantes de
l’alphabet
¢  La lettre « W » est exclue (français)
¢  Les lettres I et J sont placées dans la même
case (anglais)

12

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


CHIFFREMENT DE PLAYFAIR
¢  Chaque groupe de deux lettres est codé par la lettre à
l’intersection de la ligne de la première et la colonne de la
deuxième puis à l’intersection de la ligne de la deuxième et
de la colonne de la première
¢  Si deux lettres sont sur la même ligne, on prend les deux
lettres qui les suivent immédiatement à leur droite
¢  Si deux lettres sont sur la même colonne, on prend les deux
lettres qui les suivent immédiatement en dessous
¢  Si la même lettre est répétée, on insère une nulle (la lettre
« X ») entre les deux pour éliminer le doublon
¢  S’il y a une seule lettre, on complète par la lettre « X »
13

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


EXERCICE (15 MNT)
¢  Chiffrer le message M=« CHIFFREMENT » avec :
—  Le chiffrement de César pour K=5
—  Le chiffrement d’affine pour a=5 et b=13
—  Le chiffrement de Vigenère pour un mot clé « OUI »
—  Le chiffrement de Playfair avec un mot clé « OUI »

14

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


CHIFFREMENT DE HILL

¢  Lester Hill, 1929


¢  Chiffrement à base de l’algèbre matricielle

¢  La substitution se fait à l’aide de m


équations linéaires
¢  L’algorithme remplace m lettres successives
par m lettres chiffrées

15

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


CHIFFREMENT DE HILL (CHIFFREMENT)
¢  Les lettres sont remplacées par leur rang suivant l’alphabet
¢  On choisit une clé K sous forme d’une matrice de 2×2 telle
que PGCD(det(K), 26)=1
¢  Chaque paire de lettres Lk et Lk+1 du message en clair sont
remplacées par Ck et Ck+1 :

¢  S’il y a une seule lettre, on complète par la lettre « X »


¢  Exemple :
—  M = « LICENCEENINFORMATIQUEX »
16
—  C = « BHIMVBAWTRHWMHEIVVQMYZ »

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


CHIFFREMENT DE HILL (DÉCHIFFREMENT)
¢  Le déchiffrement se fait par la matrice inverse de la clé K

¢  det(K)−1est calculé tel que det(K)−1×det(K) mod 26 = 1


¢  Exemple :
—  C = « BHIMVBAWTRHWMHEIVVQMYZ »
—  M = « LICENCEENINFORMATIQUEX »
17

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


TRANSPOSITION SIMPLE PAR COLONNES
¢  Chaque lettre reste inchangée mais sa position est modifiée
¢  Chiffrement :
—  Disposer horizontalement les lettres du message sur une matrice de
longueur n
—  Collecter verticalement les lettres
¢  Déchiffrement :
—  Disposer verticalement les lettres du message chiffré
—  Collecter horizontalement les lettres
¢  Soit m la taille du message :
—  Si m mod n = 0 → Toutes les colonnes ont la même hauteur : m/n
—  Sinon, les premières m mod n colonnes ont pour hauteur [m/n]+1
et les autres colonnes ont pour hauteur [m/n]
¢  Exemple :
—  M = « CHIFFREMENTDECESAR » sur une matrice de longueur n=5
—  C = « CRTSHEDAIMERFECFNE » 18

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


TRANSPOSITION COMPLEXE PAR COLONNES
¢  Chiffrement :
—  Définir un mot clé
—  Disposer horizontalement les lettres du message sur une
matrice de longueur équivalente au mot clé
—  Collecter verticalement les lettres suivant l’ordre croissant des
lettres du mot clé par rapport à l’alphabet
¢  Déchiffrement :
—  Disposer verticalement les lettres du message chiffré suivant
l’ordre croissant des lettres du mot clé par rapport à l’alphabet
—  Collecter horizontalement les lettres
¢  Exemple :
—  M = « CHIFFREMENTDECESAR » avec le mot clé : « AVRIL »
—  C = « CRTSFECFNEIMERHEDA » 19

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


ALGORITHME D’EXPONENTIATION RAPIDE

¢  C = BA mod N
¢  A partir du triplet (P, J, R) / P=B, J=A, et R=1

¢  Si J est pair ⇒ (P2 mod N, J/2, R mod N)

¢  Si J est impair ⇒ (P2 mod N, ( J−1)/2, R×P mod N)

¢  Si J=1 ⇒ C=R×P mod N

20

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


EXEMPLE
¢  C = 150233 mod 437
¢  A partir de (P=150, J=233, R=1)

→ (1502 mod 437, (233−1)/2, 1×150 mod 437) = (213, 116, 150)
→ (2132 mod 437, 116/2, 150 mod 437) = (358, 58, 150)
→ (3582 mod 437, 58/2, 150 mod 437) = (123, 29, 150)
→ (1232 mod 437, (29−1)/2, 150×123 mod 437) = (271, 14, 96)
→ (2712 mod 437, 14/2, 96 mod 437) = (25, 7, 96)
→ (252 mod 437, (7−1)/2, 96×25 mod 437) = (188, 3, 215)
→ (1882 mod 437, (3−1)/2, 215×188 mod 437) = (384, 1, 216)
→ C=384×216 mod 437=351
21

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


EXEMPLE (SUITE)
¢  C = 150233 mod 437
¢  233 = 11101001(2)

1 150
0 1502 mod 437 = 213
0 2132 mod 437 = 358
1 3582 mod 437 = 123
0 1232 mod 437 = 271
1 2712 mod 437 = 25
1 252 mod 437 = 188
1 1882 mod 437 = 384

150 × 123 × 25 × 188 × 384 mod 437 = 351 22

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


ALGORITHME D’EUCLIDE ETENDU (LES ÉQUATIONS
DIOPHANTIENNES)
¢  396X+17Y=1 Condition : PGCD(396,17)=1
¢  396=23×17+5

17=3×5+2

5=2×2+1

¢  1 = 5–2×2
= 5–2×(17–3×5)
= 5–2×17+6×5
= 7×5–2×17
= 7×(396–23×17)–2×17
= 7×396–161×17–2×17
= 7×396–163×17
23
= 396×7+17×(–163) ð {X=7,Y=-163}

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


ALGORITHME D’EUCLIDE ETENDU (LES ÉQUATIONS
DIOPHANTIENNES)

396X+17Y=1

396 163
23 17 7
3 5 2
2 2 1
1 0

396 × 7 – 17 × 163 = 1 ð {X=7,Y=-163}

24

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia


EXERCICE (15 MNT)
¢  Enutilisant l’algorithme d’exponentiation rapide,
calculer :
—  4124721 mod 17
¢  Résoudre l’équation diophantienne suivante :
—  144x+625y=1

25

Dr. OMAR Mawloud © 2016/2017 – Université de Béjaia

Vous aimerez peut-être aussi