Académique Documents
Professionnel Documents
Culture Documents
algorithmes de
chiffrement
Par Lucas Pesenti (Lucas-84)
www.siteduzero.com
2/13
Sommaire
Sommaire ........................................................................................................................................... 2
Les premiers algorithmes de chiffrement ........................................................................................... 3
Vocabulaire et premires notions ...................................................................................................................................... 3
Exemples d'algorithmes de chiffrement ............................................................................................................................ 4
Chiffre de Csar .......................................................................................................................................................................................................... 4
Chiffre de Vigenre ..................................................................................................................................................................................................... 5
Le masque jetable (ou chiffre de Vernam) .................................................................................................................................................................. 8
Q.C.M. ............................................................................................................................................................................. 11
Partager ..................................................................................................................................................................................................................... 12
www.siteduzero.com
Sommaire
3/13
Par
Aussi tonnant que cela puisse paratre premire vue, les algorithmes de chiffrement et de dchiffrement doivent toujours tre
publics. En effet, il ne sert rien de tenter de les garder secret : on n'obtiendrait qu'une fausse impression de scurit. Malgr de
nombreuses alertes, il arrive que de trs grosses entreprises, souvent mal informes, tentent de le faire : c'est la scurit par
l'obscurit, qui, je le rpte, n'a aucune utilit.
Mais alors, si les algorithmes sont publics, tout le monde peut dcrypter les textes chiffrs, non ?
www.siteduzero.com
4/13
Vous vous en doutez bien, cette affirmation est fausse. En ralit, le secret est conserv grce aux paramtres des algorithmes,
qu'on appelle les cls de chiffrement. Ce principe est appel principe de Kerckhoffs, nomm ainsi en hommage au cryptologue
nerlandais Auguste Kerckhoffs, qui a nonc ce concept dans un article en deux parties La cryptographie militaire, paru dans
le Journal des sciences militaires en janvier et fvrier 1883 (vous pouvez par ailleurs en retrouver l'intgralit ici et l).
De plus, cette notion s'tend au-del de la cryptographie. R-nonce par de grands noms de l'informatique comme Claude
Shannon dans son trs clbre L'adversaire connat le systme , elle est galement un des arguments voqus par les
dfenseurs des logiciels libres (source).
Autrement dit, on peut reprsenter l'algorithme (de chiffrement ou de dchiffrement) comme une fonction qui prend deux
paramtres : le texte clair (dans le cas d'un chiffrement) ou le texte chiffr (dans le cas d'un dchiffrement) et la cl de chiffrement
ou de dchiffrement. La fonction est connue, le texte aussi, mais la cl manque la personne lambda, qui ne peut ainsi pas
rsoudre le cryptogramme.
Chiffre de Csar
Le chiffre de Csar (ou chiffrement par dcalage) est un algorithme de chiffrement trs simple que Jules Csar utilisait pour
chiffrer certains messages qu'il envoyait (source).
Il s'agit d'une substitution mono-alphabtique car il remplace chaque lettre par une autre lettre de l'alphabet, toujours la mme.
Principe de chiffrement
Ce cryptosystme consiste remplacer chaque lettre du texte clair, par une lettre diffrente, situe lettres aprs dans l'alphabet,
o est la valeur de la cl passe en argument.
Si l'on considre que chaque lettre de l'alphabet est numrote de 0 25 (A = 0, B = 1, etc.), cela revient additionner la valeur de
la lettre du texte clair avec la valeur de la cl.
Ensuite, pour viter que la valeur dpasse le 'Z', on fait modulo 26 sur le rsultat prcdent.
Rappelons que le modulo est une opration mathmatique permettant d'obtenir le reste d'une division. Si vous n'avez peut-tre
eu que peu d'occasions d'tudier celle-ci, l'ordinateur quant lui la considre comme une opration de base, au mme titre que
l'addition, la soustraction, la multiplication et la division.
Notez que faire un modulo 26 revient soustraire le rsultat de 26 lorsqu'il dpasse cette dernire valeur.
www.siteduzero.com
5/13
Par exemple, pour coder la premire lettre de l'expression J'adore les maths ! (le 'J') avec une cl de 4, on fera :
Code : Autre
(J + 4) modulo 26 = (9 + 4) modulo 26 = 13 modulo 26 = 13
La valeur de 14 correspondant la lettre 'N', on peut d'ores et dj noter que la premire lettre du texte chiffr sera un 'N'.
Si l'on suit cette logique, la fin du chiffrement vous devriez obtenir sur votre feuille de papier ce qui suit.
Code : Autre
J'ADORE LES MATHS !
N'EHSVI PIW QEXLW !
Principe de dchiffrement
Le dchiffrement fonctionne sur le mme principe que le chiffrement, on prend la lettre situe quatre lettres avant dans notre
exemple.
Code : Autre
N'EHSVI PIW QEXLW !
J'ADORE LES MATHS !
Chiffre de Vigenre
Introduction
Le chiffre de Vigenre est un algorithme de chiffrement tabli par le cryptographe franais Blaise de Vigenre.
Ce cryptosystme est de type poly-alphabtique, en opposition au mono-alphabtique que avons dj vu, c'est--dire qu'il
consiste changer une lettre par une autre, mais cette dernire n'est pas toujours l mme. Cela permet une plus grande scurit.
Cet algorithme utilise une cl, ici sous la forme d'un mot ou d'une phrase, que vous choisirez. Plus l'expression sera longue, plus
le cryptogramme sera scuris.
Un autre outil indispensable pour chiffrer un message avec cette mthode est la table de Vigenre :
www.siteduzero.com
6/13
Table de Vigenre
Rassurez-vous, je ne vous demande pas de l'apprendre par cur ! On trouve beaucoup d'images de cette table grce un simple
moteur de recherche.
Principe de chiffrement
Le chiffrement se droule en deux tapes.
Dans un premier temps, on choisit un message, par exemple Bonjour les zros ! et une cl, par exemple Zozor . Bref,
commencez par crire votre message sur le papier.
Code : Autre
BONJOUR LES ZROS !
En-dessous de chaque lettre, crivez chaque lettre de la cl, et rptez le motif autant de fois que ncessaire. Ce qui donne, dans
notre exemple :
Code : Autre
BONJOUR LES ZROS !
ZOZORZO ZOR ZOZOR !
Dans un second temps, sachez que le message correspond aux colonnes de la table, et la cl aux lignes.
Pour chaque lettre du message, la lettre chiffre correspond au croisement entre la colonne correspondant la lettre du message
et la ligne correspondant la lettre de la cl.
Par exemple, la lettre qui est au croisement entre la colonne 'B' et la ligne 'Z' est 'A'. La premire lettre du message chiffre est
donc 'A'. Si l'on continue, cela donne au final :
Code : Autre
www.siteduzero.com
7/13
Le message chiffr est donc ACMXFTF KSJ YSQCJ ! . Bien qu' premire vue le message semble scuris, il est vident que
la cl ZOZOR est trop courte et, de manire gnrale, le chiffre de Vigenre n'est pas un algorithme trs scuris. Il est donc
facile de casser le cryptogramme, du moins pour les personnes un peu exprimentes dans ce domaine.
Principe de dchiffrement
Pour dchiffrer le texte chiffr, on prend de nouveau un bout de papier, et on note le message cod, suivi du motif de la cl rpt
autant de fois que ncessaire, ce qui donne :
Code : Autre
ACMXFTF KSJ YSQCJ !
ZOZORZO ZOR ZOZOR !
Ensuite, on fait l'inverse que lors du chiffrement. On va vers la ligne correspondant la lettre actuelle de la cl, et on cherche la
lettre actuelle du texte chiffr dans cette ligne. La lettre en clair correspond la colonne correspondante. Ce qui donne, dans
notre cas :
Code : Autre
ACMXFTF KSJ YSQCJ !
ZOZORZO ZOR ZOZOR !
BONJOUR LES ZEROS !
Bonus mathmatique
Je vous propose un petit supplment mathmatique.
En effet, il est possible de calculer la lettre chiffre correspondant une lettre claire grce la lettre de la cl.
Si l'on suppose que est la lettre de la cl, la lettre du texte chiffr et la lettre du texte clair, en voici la formule :
modulo
(source)
Par exemple, reprenons notre BONJOUR LES ZEROS et notre cl ZOZOR . Pour calculer la premire lettre chiffre :
modulo
modulo
modulo
Sinon :
www.siteduzero.com
est la lettre de la
8/13
(source)
Reprenons notre ACMXFTF KSJ YSQCJ ! et notre cl ZOZOR . La premire lettre est :
, donc :
Principe de chiffrement
Pour chiffrer un message, on doit prendre une cl, qui doit avoir les caractristiques suivantes :
la cl doit avoir un nombre de caractres suprieur ou gal celui du message ;
les caractres de la cl doivent avoir t choisis de manire alatoire ;
chaque cl ne doit tre utilise qu'une seule fois.
Toutes ces proprits dans le but final de garantir une scurit optimale. Si elles sont respectes la lettre, la scurit garantie
est absolue.
Bien, on passe un exemple concret. Pour ne pas mettre trop de temps chiffrer le message, nous allons en prendre un de quatre
lettres : ZERO . Nous tirons ensuite une chane de quatre lettres au hasard. Le rsultat : JRVG . Ceci est la cl.
On attribue ensuite une valeur diffrente chaque lettre de l'alphabet. Pour faire simple, nous choisissons le mme principe que
pour le chiffre de Csar : 'A' vaut 0, 'B' vaut 1, 'C' vaut 2, etc.
La suite est semblable au calcul du chiffre de Vigenre : on additionne la valeur de chaque lettre du message avec la valeur de la
lettre de la cl correspondante, puis on fait modulo 26. Armez-vous de votre papier et de votre crayon, pour obtenir,
normalement, ces rsultats :
Code : Autre
Z
E
R
O
+
+
+
+
J
R
V
G
=
=
=
=
25 + 9 = 34 - 26 = 8 = I
4 + 17 = 21 = V
17 + 21 = 38 - 26 = 12 = M
14 + 6 = 20 = U
Principe de dchiffrement
Le dchiffrement s'effectue peu prs de la mme manire, mis part que, cette fois-ci, on soustrait la valeur de la lettre de la cl
la valeur de la lettre du cryptogramme correspondante et que l'on ajoute 26 lorsque le rsultat est ngatif. Cela nous donne :
Code : Autre
I
V
M
U
J
R
V
G
=
=
=
=
8 - 9 = -1 + 26 = 25 = Z
21 - 17 = 4 = E
12 - 21 = -9 + 26 = 17 = R
20 - 6 = 14 = O
www.siteduzero.com
9/13
Dfauts
Chouette, alors ! Ce cryptosystme est parfait : simple et incassable ! Nous pouvons donc l'utiliser tout le temps ?
On ne peut nier qu'il a l'avantage d'tre simple, mais il n'est incassable qu'en thorie. En effet, il faut que le chiffrement ait t
ralis dans des circonstances parfaites :
D'une part, la cl choisie doit tre absolument alatoire. Si elle ne l'est pas, le cassage peut tre ralis beaucoup plus
facilement. Seulement, gnrer une cl de manire parfaitement alatoire est trs difficile mettre en uvre, c'est pourquoi
beaucoup d'utilisateurs de ce cryptosystme passent par des moyens moins scuriss (source).
D'autre part, pour que le chiffrement et le dchiffrement puissent tre raliss, il faut que les deux utilisateurs aient en leur
possession la mme cl, d'o la ncessit d'une communication ultra-scurise. Une des solutions peut tre d'organiser
un contact physique, mais cela n'est pas toujours possible (et, de plus, cela enlve l'utilit principale du chiffrement :
pourquoi chiffrer des messages si on peut les communiquer voix haute ?
). Par consquent, l'utilisateur est de
nouveau tent par l'utilisation d'un canal moins scuris.
www.siteduzero.com
10/13
11. d : 3,669%
12. c : 3,345%
13. p : 3,021%
14. m : 2,968%
15. v : 1,628%
16. q : 1,362%
17. f : 1,066%
18. b : 0,901%
19. g : 0,866%
20. h : 0,737%
21. j : 0,545%
22. x : 0,387%
23. y : 0,308%
24. z : 0,136%
25. w : 0,114%
26. k : 0,049%
Bien, prenons un exemple : un message que j'ai chiffr grce l'algorithme du chiffre de Csar :
Code : Autre
NG UKVG FW BGTQ GUV IGPKCN, N'CWVGWT FG EG VWVQTKGN CWUUK !
Toujours de faon conditionnelle, la cl pourrait tre gale 2. On fait donc un test, en dchiffrant l'aide du chiffre de Csar
avec une cl de 2.
Code : Autre
NG UKVG FW BGTQ GUV IGPKCN, N'CWVGWT FG EG VWVQTKGN CWUUK !
LE SITE DU ZRO EST GNIAL, L'AUTEUR DE CE TUTORIEL AUSSI !
La phrase dcrypte est donc : LE SITE DU ZRO EST GNIAL, L'AUTEUR DE CE TUTORIEL AUSSI ! , ce qui a un sens.
Flicitations ! Vous venez de casser votre premier algorithme. Je vous fais confiance pour ne pas communiquer nos mthodes aux
services secrets !
www.siteduzero.com
11/13
illgales. Je vous fais confiance pour ne pas utiliser ces techniques des fins illicites...
De manire plus concrte, voici quelques chiffres reprsentant le nombre maximum d'essais ncessaires pour trouver la cl en
fonction du nombre de caractres la constituant (source) :
Type
Cinq caractres
Minuscules
= 17 576
= 456 976
= 11 881 376
Minuscules et majuscules
= 140 608
= 7 311 616
= 238 328
= 14 776 336
Q.C.M.
Le premier QCM de ce cours vous est offert en libre accs.
Pour accder aux suivants
Connectez-vous Inscrivez-vous
Comment appelle-t-on, en cryptographie, le message de dpart ?
Le cryptogramme
Le texte chiffr
Le texte clair
www.siteduzero.com
12/13
Substitution poly-alphabtique
Quel algorithme utilisait Che Guevara pour communiquer avec Fidel Castro ?
Chiffre de Csar
Chiffre de Vernam
Chiffre de Vigenre
Grce aux mthodes que nous avons apprises, essayez de casser ce chiffrement que j'ai chiffr grce au chiffre de Vernam :
Code : Autre
FHEU OIERS KDIPFZ !
Correction !
Statistiques de rponses au Q CM
Eh bien voil, ce mini-tutoriel sur les premiers algorithmes de chiffrement s'arrte ici.
Je suis ouvert toute remarque ou critique constructive :
n'hsitez pas donner votre avis sur le sujet du forum consacr ce tutoriel (ici) ou dans ses commentaires ;
faites moi part de vos suggestions par MP en dbutant le titre de votre message par [CRYPTOGRAPHIE 1] ;
s'l y a une notion que vous ne comprenez pas bien, posez votre question sur le forum.
Partager
www.siteduzero.com