Le mot cryptographie est un terme générique désignant l'ensemble des techniques permettant de chiffrer des messages, c'est-à-dire permettant de les rendre inintelligibles sans une action spécifique. Le verbe crypter est parfois utilisé mais on lui préférera le verbe chiffrer.
2. Introduction
Le mot cryptographie est un terme générique désignant
l'ensemble des techniques permettant de chiffrer des messages,
c'est-à-dire permettant de les rendre inintelligibles sans une
action spécifique. Le verbe crypter est parfois utilisé mais on
lui préfèrera le verbe chiffrer.
3. Chiffrement césar
Il s’agit d’un des plus simples et des chiffres classiques les
plus populaires. Son principe est un décalage
des lettres de l’alphabet (substitution mono-alphabétique)
Pour le chiffrement, on aura la formule
C = E(p) = (p + k) mod 26
4. Chiffrement césar
Sécurité :
Il n'existe que 26 décalages possibles (attaques
exhaustives),
Le chiffre de César est très vulnérable à l'analyse des
fréquences
Pour le déchiffrement, il viendra
p = D(C) = (C − k) mod 26
5. Chiffrement affine
Le chiffre affine est une méthode de cryptographie basée
sur un chiffrement par substitution mono-alphabétique,
Principe de fonctionnement
1. remplace chaque lettre par son rang dans l'alphabet
Définition
Chiffrement
6. Chiffrement affine
2. Deux entiers a et b sont choisis comme clef.
3. Chaque lettre claire remplacée par son équivalent
numérique x puis chiffrée par le calcul du reste de la division
euclidienne par 26 de l'expression affine y=ax + b
Exemple :
Fonction d’affine avec clef (17,3):
C O D E → 2 ; 14 ; 3 ; 4
2 ; 14 ; 3 ; 4 → 37 ; 241 ; 54 ; 71
prendre les restes dans la division par 26
37 ; 241 ; 54 ; 71 → 11 ; 7 ; 2 ; 19
11 ; 7 ; 2 ; 19 → L H C Tretranscrire en lettres :
7. Chiffrement affine
Déchiffrement
Pour déchiffrer le message, il faut d'abords calcule l’inverse de
a et b tel que :
aa' = 1 + k26 soit encore a'a - 26k = 1 ( théorème de bezout )
b’ = -a’.b mod 26
Rappel : théorème de Bézout
PGCD(a,26)=1
26.V+a.U=1 => U=a' mod 26
8. Chiffrement affine
On obtient alors la clef (23,9)
L H C T → 11 ; 7 ; 2 ; 19
11 ; 7 ; 2 ; 19 → 8 ; 4 ; -1 ; 16
8 ; 4 ; -1 ; 16 → 184 ; 92 ; -23 ; 368
184 ; 92 ; -23 ; 368 - > 2 ; 14 ; 3 ; 4
2 ; 14 ; 3 ; 4 - > C O D E
Alors la fonction de déchiffrement est :
X=a’.y +b’ mod 26
Déchiffrement
9. Implémentation ( matlab )
clear all;clc;close all
text=input('entrer un text :','s');
db=double(text);
N=input('entrer le nombre de decalage :');
type=input(':');
h=((text+N)-97);
cesar=mod(h,26);
f=(cesar+97);
crypt=char(f);
disp('votre text crypté est : ')
disp(crypt)
Chiffrement césar :
10. Implémentation ( matlab )
Déchiffrement césar :
h=((text-N)-97);
cesar=mod(h,26);
f=(cesar+97);
message=char(f);
disp('votre text decrypté est : ')
disp(message)
11. Implémentation ( matlab )
Chiffrement affine:
text=input('entrer un text :','s');
db=double(text);
a=input('entrer le coeficient de affine a : ');
N=input('entrer le coeficient b : ');
h=((a*text+N)-97);
affine=mod(h,26);
f=(affine+97);
crypt=char(f);
disp('votre text crypté est : ')
disp(crypt)
13. Conclusion
Le simple chiffrement par substitution est facile à
casser par analyse des fréquences des lettres du
texte chiffré, mais demeure cependant en tant que
composant élémentaire des chiffrements modernes