SlideShare une entreprise Scribd logo
1  sur  71
CRYPTOGRAPHIE
CRYPTOGRAPHY Κρυπτογραφία Criptografía Криптография
v3.0.1
AWOUZOUBA Esso-Essinam
Gr.nd D3sk H.cK3r
Gran Guru Computador
Magister Informatica
22890794666
cawouzouba@gmail.com
©~2017
hp
1
Présentation de l’unité d’enseignement, Pré-requis :
 Une connaissance de Mathématiques de l’ingénieur serait un atout
 Une maitrise de l’anglais serait un atout
 Une connaissance des concepts et protocoles du Web
Objectifgénéral de l’unité d’enseignement
 Comprendre comment la cryptographie intervient dans la communication au quotidien et
l’intérêt de cela dans la sécurité des transactions entre tiers (internet
télécommunication)
Objectifs spécifiques de l’unité d’enseignement
 Expliquer comment les chiffres clés symétriques et asymétriques travaillent;
 Enumérer et définir les objectifs de cryptographie;
 Lister et définir des chiffres classiques les plus courants;
 Expliquer le fonctionnement de chiffrement Enigma mécaniques et LORENZ;
 Décrire les principes des réseaux substitution-permutation;
 Décrire les algorithmes de cryptage des données et la norme de cryptage avancée;
 Décrire et utiliser les fonctions md5 et sha-1;
 Expliquer l'idée derrière la cryptographie à clé publique;
 Expliquer l'échange de clés Diffie-Hellmann;
 Utiliser le système de cryptographie RSA en l'appliquant à des problèmes pratiques;
 Définir la courbe elliptique et l'utiliser dans la cryptographie;
 Décrire la signature la plus commune et les régimes d'identité autokey; et
 Décrire le fonctionnement conceptuel de l'infrastructure à clé publique.
Schémadu Programme
 Unité 1: Introduction à la cryptographie
 Unité 2: Cryptographie classique
 Unité 3: Cryptographie moderne
 Unité 4: Chiffrements par bloc et à flots
 Unité 5: Fonctions de hachage
 Unité 6: Crypto système RSA et Factorisation des entiers
 Unité 7: Cryptographie à courbe elliptique
 Unité 8: Signature numérique et authentification Entité
 Unité 9: Cryptographie quantique
Evaluations
 : 40%(Devoirs surveillés) + 60%(Synthèse) et QCM
 0.20(DS1) + 0.20(DS2) + 0.60(Synthèse)
 Méthodes d’enseignement
 Cours magistral 30%+ Travaux Pratiques 50%+ Travaux de Maisons 20%
2
Bibliographie
1. http://www.cryptographyworld.com/
2. http://www.cryptool-
online.org/index.php?option=com_content&view=article&id=68&Itemid=78&lang=en
3. http://www.crypto-textbook.com/
4. http://www.emsec.rub.de/chair/_staff/christof-paar/
5. https://en.wikipedia.org/wiki/Cryptography
6. https://fr.wikipedia.org/wiki/St%C3%A9ganographie
7. https://www.aescrypt.com/
8. https://www.cryptool.org/en/
9. https://www.iacr.org/
10. https://www.cryptographersworld.com/a.php?a=255
https://www.cryptographersworld.com/
11. Adams, Will. 2009. The AlexanderCipher.NewYork, NY: GrandCentralPublishing.320p
12. Alfred J. Menezes Paul C. van OorschotScott A. Vanstone ,HANDBOOK of APPLIED
CRYPTOGRAPHY
13. Bud Johnson, Break the Code: Cryptography for Beginners, April 24, 2013
14. Christof Paar andJan Pelzl, UnderstandingCryptography:A Textbookfor Studentsand Practitioners1st
ed. 2010
15. DanBoneh &Victor Shoup,A GraduateCourseinAppliedCryptography
16. Dany-Jack Mercier, Mathématiques etcodes secrets Broché – 30 mars 2014
17. David Ignatius, TheQuantumSpy, November2017,ISBN 978-0-393-25415-0
18. GillesBailly-Maître,Arithmétique etcryptologie,,Editeur(s) Ellipses,:25/09/2012
19. Ivan Ristić, Understanding and deploying SSL/TLS and PKI to secure
servers and web applications ISBN: 978-1907117046
20. Libertésindividuellesetcodessecrets PierreVigoureux,Editeur(s): Ellipses 22/03/2016
21. Martin Untersinger,Anonymatsur InternetProtégersavie privée Editeur(s), Eyrolles 18/09/2014
22. MaxHernandez- ThievesEmporium(2013)
23. Univers secretdelacryptographie,GillesDubertretEditeur(s),Vuibert 20/11/2015
3
Résultats de l’apprentissage Séances Contenus Méthodes
d’enseignement
Revue de la littérature
Unité 1: Introduction à la
cryptographie
4h
César
ROT13
Carré de Polybe
Vigénère
EnigmaVernam (OTP)
Cours magistral
Unité 2: la cryptographie classique
4h
Cryptographie
Cryptanalyse
Stéganographie
Social engineering
Cours magistral
Travaux pratiques
/labo
Unité 3: Cryptographie moderne
3h
Algorithme étendu
d’Euclide
Euler’s Totient function
théorème des restes chinois
Fermat’s little theorem
Chiffrements (Bloc / A
Flot)
Elliptique /quantique
Cours magistral
Laboratoires
3h
Unité 4: Chiffrements par bloc età
flots
4h
Block cipher(available
resources)
Taille (32- 512bits) PC,
LED
Stream(scarcity of
ressources) smartphone
Cours magistral
Travaux de maisons
Unité 5: Fonctions de hachage
Unité 6: Le Crypto système RSA
et Factorisation des entiers 6h
Diffie HellmanDSA RSA
ElGamal ECC
Fonction de Hachage
Signature numérique
MAC CRC PGP
OPenPGP /GnuPGP
Cours magistral
Travaux pratiques
/labo
Travaux de maisons
Unité 7: Cryptographie à courbe
elliptique
Unité 8: Signature numérique et
authentification Entité
Unité 9: Cryptographie quantique
6h
Infrastructure à clé publique
(PKI)
Certificats
Certificate Authority
Clé publique /Clé privée
Quantum cryptography
Cours magistral
Travaux pratiques
/labo
Travaux de maisons
4
A. REVUE de la LITERATURE
«La science restera toujours la satisfaction
du plus haut désir de notre nature, la
curiosité ; elle fournira à l'homme le seul
moyen qu'il ait d'améliorer son sort »,
Ernest Renan
La cryptographie trouve son application dans beaucoup de domaines ;
 Téléphonie cellulaire ( smartphone, ipod, ipad, telephone blackerry android))
 Ecommerce ( kindle ebook reader, credit cards)
 Banque ( ebanking, e-currency bitcoin)
 Internet( navigaterurs (RSA), kproxy.com, TOR)
 Vie privée (epasseport) passeport biométrique),
A travers l’histoire des illustrations y sont faites avec des romans et des codex ;
Comme ici
The Bible Code is a best-selling book by Michael Drosnin, first published in 1997. A sequel, The
Bible Code II, a best-seller was published in 2002. Drosnin describes an alleged "Bible code", in
which messages are encoded in the Hebrew bible. The messages are purported to be hidden in
the Torah, and can be deciphered by placing the letters of various Torah passages at equal
intervals in a text that has been formatted to fit inside a graph.
Les clés du fort Boyard un jeu de pistes et d’énigmes qui dure entre 60 minutes et 120 minutes
depuis son démarrage dans les années 1990
Michel de Nostredame, dit Nostradamus, né le 14 décembre 1503à Saint-Rémy-de-Provence et
mort le2 juillet 1566 à Salon-de-Provence, était un apothicaire1
français. Les centuries
Quatrain 997 YHWH HWHY
Digital Fortress (publié en 1998 par St. Martin's Press) is a techno-thriller of Dan Brown The
book explores the theme of government surveillance of electronically stored information on the
private lives of citizens, and the possible civil liberties and ethical implications of using such
technology.
Il a suscité une grande polémique avec la publication de ses romans Robert Langdon : Anges et
Démons(2000)., le Da Vinci Code, Le Symbole perdu et Inferno.
The Name of the Rose (Italian: Il nome della rosa is the 1980 debut
novel by Italian author Umberto Eco. It is ahistorical murder mystery set in an Italian monastery,
in the year 1327, an intellectual mystery combining semiotics in fiction, biblical analysis, medieval
studies and literary theory. It was translated into English by William Weaver in 1983.
The Godfather is a crime novel written by Mario Puzo, an Italian American
Le Club des cinq (titre original : The Famous Five, )est une série de romans policiers pour
enfants et jeunes adolescents écrite par Enid Blyton et publiée en Angleterre de 1942 à 1963
Le Clan des sept (The Secret Seven) est une série de quinze romans policiers pour la jeunesse
écrits par Enid Blyton, publiée de 1949 à 1963 au Royaume-Uni, et de 1958 à 1974 en France
par les éditions Hachette dans la collection Bibliothèque rose.
Hackers est un film américain réalisé parIain Softley, sorti en 1995. Connu aussi sous les titres
francophones de Hackers : Les Pirates du cyberespace (titre DVD et Universal Media Disc)
et Pirates (titre télévisé).
5
NUMB3RS is an American crime drama television series that ran on CBS from January 23, 2005,
to March 12, 2010.
6
I. Concepts clés
 cryptographie vient des mots en grec ancien kruptos (κρυπτός) « caché » et graphein (γράφειν)
« écrire ». étymologiquement « écriture secrète », devenue par extension l'étude de cet art (donc
aujourd'hui la science visant à créer des cryptogrammes, c'est-à-dire à chiffrer)
 chiffrement : transformation à l'aide d'une clé d'un message en clair (dittexte clair) en un message
incompréhensible (dit texte chiffré) pour celui qui ne dispose pas de la clé de déchiffrement (en
anglais encryption key ou private key pour la cryptographie asymétrique) ;
 chiffre : utilisation de la substitution au niveau des lettres pour coder ;
 code : utilisation de la substitution au niveau des mots ou des phrases pour coder ;
 coder : action réalisée sur un texte lorsqu'on remplace un mot ou une phrase par un autre mot, un
nombre ou un symbole ;
 cryptogramme : message chiffré ;
 cryptosystème : algorithme de chiffrement (algorithme de chiffrement cleartext cyphertext ,
encryption, decryption);
 décrypter : retrouver le message clair correspondantà un message chiffré sans posséder la clé de
déchiffrement (terme que ne possèdent pas les anglophones, qui eux « cassent » des codes
secrets);
 cryptanalyse : science analysant les cryptogrammes en vue de les décrypter ;
 cryptologie : science regroupant la cryptographie et la cryptanalyse.
 cryptolecte : jargon réservé à un groupe restreint de personnes désirant dissimuler leur
communication.
7
A. La théorie de l'informationde Shannon
C’estune théorie probabiliste permettantde quantifier le contenu moyen en information d'un ensemble
de messages, dont le codage informatique satisfait une distribution statistique précise. Ce domaine
trouve son origine scientifique avec Claude Shannon qui en est le père fondateur avec son article A
Mathematical Theory of Communications (1948)
En théorie de l’information, Shannon définitdeux notions que tout bon cryptosystème doitposséder : la
confusion et la diffusion
.Confusion. C’estle fait que la méthode de calcul du message crypté à partir du message clair doitêtre
suffisamment complexe. C’est-`a-dire qu’il ne doit pas exister de relation simples entre les bits du
message clair et les bits du message crypté.
Diffusion. C’est le fait qu’une différence, même minime, entre deux messages clairs doit entraîner une
très grande différence entre les messages cryptés. Ainsi, chaque bitdu message clair doitcontribuer au
calcul de chaque bit du message crypte.
Parmi les branches importantes de la théorie de l'information de Shannon, on peut citer :
 le codage de l'information,
 la mesure quantitative de redondance d'un texte,
 la compression de données,
 la cryptographie.
B. Le principe de Kerckhoffs
Il a été énoncé par Auguste Kerckhoffs à la fin du XIXe siècle dans un article en deux parties "La
cryptographie militaire" du Journal des sciences militaires (vol. IX, pp. 5–38, Janvier 1883, pp. 161–191,
Février 1883). Ce principe exprime que la sécurité d'un cryptosystème ne doitreposer que sur le secret
de la clef. Autrement dit, tous les autres paramètres doivent être supposés publiquement connus. Il a
été reformulé, peut-être indépendamment, par Claude Shannon : « l'adversaire connaît le système ».
Cette formulation est connue sous le nom de la maxime de Shannon. Il est considéré aujourd'hui
comme un principe fondamental par les cryptologues, et s'oppose à la sécurité par l'obscurité.
Ce principe apparaît parmi les 6 « desiderata de la cryptographie militaire » énoncés par Kerckhoffs
dans son traité, qui sont :
i. Le système doit être matériellement, sinon mathématiquement indéchiffrable ;
ii. Il faut qu’il n’exige pas le secret, et qu’il puisse sans inconvénient tomber entre les mains de
l’ennemi ;
iii. La clefdoitpouvoir en être communiquée et retenue sans le secours de notes écrites, et être
changée ou modifiée au gré des correspondants ;
iv. Il faut qu’il soit applicable à la correspondance télégraphique ;
v. Il faut qu’il soit portatif, et que son maniement ou son fonctionnement n’exige pas le concours
de plusieurs personnes ;
vi. Enfin, il estnécessaire, vu les circonstances qui en commandent l’application, que le système
soitd’un usage facile, ne demandantni tension d’esprit, ni la connaissance d’une longue série
de règles à observer.
C. Une machine de Turing
C’est estun modèle abstraitdu fonctionnementdes appareils mécaniques de calcul, tel un ordinateur et
sa mémoire. Ce modèle a été imaginé par Alan Turing en 1936, en vue de donner une définition précise
au concept d’algorithme ou de « procédure mécanique ». Il est toujours largement utilisé
8
en informatique théorique, en particulier dans les domaines de la complexité algorithmique et de la
calculabilité.
D. Feistel cipher ou Réseau de Feistel
Un réseau de Feistel est une construction utilisée dans les algorithmes de chiffrement par bloc,
nommée d'après le cryptologue d'IBM, Horst Feistel. Elle a été utilisée pour la première fois
dans Lucifer et DES. Cette structure offre plusieurs avantages, le chiffrement et le déchiffrement ont
une architecture similaire voire identique dans certains cas. L'implémentation matérielle est aussi plus
facile avec un tel système même si les choses ontpassablementchangé depuis la fin des années 1970.
Un réseau de Feistel repose sur des principes simples dont des permutations, des substitutions, des
échanges de blocs de données etune fonction prenanten entrée une clé intermédiaire à chaque étage.
Il est vraisemblable que Feistel ne soit pas le seul inventeur de cette architecture. Durant une conférence, Don
Coppersmith a laissé entendre que Bill Notz etLynn Smith (de l'équipe d'IBM travaillant sur DES) avaient été en
grande partie à l'origine du réseau de Feistel tel que nous le connaissons.
Réseau de Feistel à n tours utilisant l'opérateurXOR
Un réseau de Feistel estsubdivisé en plusieurs tours ou étages. Dans sa version équilibrée, le réseau
traite les données en deux parties de taille identique. À chaque tour, les deux blocs sont échangés puis
un des blocs est combiné avec une version transformée de l'autre bloc. Pour simplifier, la moitié des
données sont encodées avec la clef, puis le résultat de cette opération est ajouté grâce à un xor (ou
exclusif) à l'autre moitié des données. Puis au tour suivant, on inverse : c'est au tour de la dernière
moitié d'être chiffrée puis d'être ajoutée avec un xor à la première moitié, saufqu'on utilise les données
chiffrées précédemment (sinon ça ne servirait à rien de faire plus de deux tours). Le schéma ci-contre
montre le cheminement des données (le ⊕ représente le xor). Chaque tour utilise une clé
intermédiaire, en général tirée de la clé principale via une génération appelée key schedule. Les
opérations effectuées pendant le chiffrement avec ces clefs intermédiaires sont spécifiques à chaque
algorithme.
Dans le cas de DES, le réseau de Feistel possède 16 tours, chacun avec une sous-clé. Ces différentes
clés permettent d'améliorer la robustesse d'un algorithme face à la cryptanalyse.
9
Une variante, le réseau de Feistel non-équilibré coupe les données en deux parties de tailles
différentes. Cette variante a été utilisée dans MacGuffin de Bruce Schneier, ou encore Skipjack,
candidat pour AES.
A. Définition formelle
Une définition formelle d'un réseau de Feistel peut être donnée sous plusieurs formes. Nous reprenons ici la notation
utilisée par Knudsen dans Partial and Higher Order Differentials and Applications to DES.
et
et
 l'exposant représente la sous-partie du bloc considérée (L à gauche, R à droite).
 correspond au bloc de texte clair, correspond au bloc de gauche à l'entrée du tour
 correspond au bloc de texte chiffré, correspond au bloc de droite à la sortie du tour
 est la clé du tour , elle est calculée grâce à un key schedule de la clé principale
 est le nombre de tours dans l'algorithme
 est une opération dans un groupe commutatif (souvent un XOR ou une addition)
Compositiondestours
Chaque tour applique plusieurs transformations sur les données provenant du tour
précédent :
 permutation des bits via des P-Boxes
 fonction non-linéaire (substitution) avec des S-Boxes
 mixage linéaire en utilisant la fonction XOR
 application de la clé du tour (intégrée dans une fonction ou via un XOR)
On utilise les termes de confusion et diffusion pour décrire la propagation des informations dans la
structure (termes utilisés par Claude Shannon). En effet, une modification d'un bit en entrée produira
des variations très importantes dans les stages intermédiaires et en sortie. Un terme plus récent pour
décrire ce phénomène est l'effet avalanche. L'utilisation des permutations permet d'améliorer la
diffusion alors que les substitutions ont pour effet d'augmenter la confusion.
E. Cryptographie symétrique
La cryptographie symétrique, également dite à clé secrète (par opposition à la cryptographie asymétrique), est la
plus ancienne forme de chiffrement. Elle permet à la fois de chiffrer et de déchiffrer des messages à l'aide d'un même
mot clé. On a des traces de son utilisation par les Égyptiens vers 2000 av. J.-C. Plus proche de nous, on peut citer le
chiffre de Jules César, dont le ROT13 est une variante.
1. Clé et sécurité
L'un des concepts fondamentaux de la cryptographie symétrique estla clé. Une clé est une donnée qui
(traitée par un algorithme) permet de chiffrer et de déchiffrer un message. Toutes les méthodes de
chiffrement n'utilisent pas de clé. Le ROT13, par exemple, n'a pas de clé. Quiconque découvre qu'un
message a été codé avec cet algorithme peut le déchiffrer sans autre information. Une fois l'algorithme
découvert, tous les messages chiffrés par lui deviennent lisibles.
Si l'on modifiait le ROT13 en rendant le décalage variable, alors la valeur de ce décalage deviendrait
une clé, car il ne serait plus possible de chiffrer et déchiffrer sans elle. L'ensemble des clés possibles
comporterait alors 25 décalages (26 décalages si l'on considère le décalage nul).
10
Cet exemple montre le rôle et l'importance de la clé dans un algorithme de chiffrement ; et les
restrictions qu'elle implique. Auguste Kerckhoffs (La cryptographie militaire, 1883) énonce leprincipe de
Kerckhoffs : pour être sûr, l'algorithme doitpouvoir être divulgué.En outre, il faut aussi que la clé puisse
prendre suffisamment de valeurs pour qu'une attaque exhaustive — essai systématique de toutes les
clés — soit beaucoup trop longue pour être menée à bien. Cela s'appelle la sécurité calculatoire.
Cette sécurité calculatoire s'altère avec le progrès technique,etla puissance croissante des moyens de
calcul la fait reculer constamment. Exemple : le DES, devenu obsolète à cause du trop petit nombre de
clés qu'il peut utiliser (pourtant 256). Actuellement, 280 est un strict minimum. À titre indicatif,
l'algorithme AES, dernier standard d'algorithme symétrique choisi par l'institut de standardisation
américain NIST en décembre 2001, utilise des clés dontla taille estau moins de 128 bits soit 16 octets,
autrement dit il y en a 2128. Pour donner un ordre de grandeur sur ce nombre, cela fait
environ 3,4×1038 clés possibles ; l'âge de l'univers étantde 1010 années, si on suppose qu'il est possible
de tester 1 000 milliards de clés par seconde (soit3,2×1019 clés par an), il faudra encore plus d'un
milliard de fois l'âge de l'univers. Dans un tel cas, on pourrait raisonnablement penser que notre
algorithme est sûr. Toutefois, l'utilisation en parallèle de très nombreux ordinateurs, synchronisés par
internet, fragilise la sécurité calculatoire.
Cette notion de sécurité calculatoire pose la question de la sécurité absolue. On sait depuis Claude
Shannon et son article Communication theory of secrecy system (1949) que le chiffrement de Gilbert
Vernam qui consiste à ajouter au message en clair une clé de la même longueur (voir XOR) est
parfaitement sûr. C'est le seul pour lequel nous soyons capables de prouver une telle chose.
L'inconvénient est que pour chiffrer un message de n bits, il faut au préalable avoir échangé une clé
de n bits avec le destinataire du message, et cela par une voie absolument sûre, sinon chiffrer devient
inutile. Très peu de cas nécessitent un tel système, mais c'était toutefois le système utilisé pour
le Téléphone rouge entre le Kremlin et la Maison-Blanche.
2. Petite taxinomie du chiffrement symétrique classique
Jusqu'aux communications numériques, les systèmes utilisaient l'alphabet et combinaient
substitutions — les symboles sont changés mais restent à leur place — et transpositions — les
symboles ne sont pas modifiés mais changent de place.
La substitution estdite monoalphabétique quand l'algorithme de codage n'utilise aucun autre paramètre
que la lettre à coder, de sorte qu'une lettre est toujours remplacée par la même lettre (relation 1→1).
C'estle cas d'un algorithme à décalage simple. Quand l'algorithme de codage utilise un (ou plusieurs)
autre(s) paramètre(s) (ex: sa position dans le message), chaque lettre à coder peut alors être
remplacée par plusieurs lettres différentes selon les cas (relation 1→n). On parle alors de
substitution polyalphabétique — e.g. le chiffre de Vigenère, Enigma.
La substitution peut utiliser la méthode du décalage, où chaque lettre est transformée en la lettre
n positions plus loin dans l'alphabet, en rebouclant, i.e. la lettre suivant 'z' est 'a'. On parle de décalage
simple — estégalementconnu sous le nom de chiffre de Jules César- quand le décalage est identique
pour toutes les lettres du message. Avec le chiffre de Blaise de Vigenère, on applique un nombre
quelconque n de décalages,le premier décalage est utilisé pour chiffrer la lettre numéro 1, puis la 1+n,
1+2n, … le second décalage pour la lettre numéro 2, 2+n, 2+2n, … Usuellement, la valeur de ces
décalages est donnée par un mot de longueur n dont la ie lettre donne la valeur du ie décalage.
Clarifions par un exemple.
Message clair : wikipedia
Mot clé : crypto
Message chiffre : yzixisfzy
11
Un 'a' dans le mot clé correspond à un décalage de 0, un 'b' à un décalage de 1, etc. Dans notre
exemple,la clé a 6 lettres, donc les lettres 1 ('w') et 7 ('d') sontchiffrées par le même décalage, à savoir
2.
La machine Enigma utilisée par les Allemands durant la Seconde Guerre mondiale est également
basée sur les substitutions, mais avec un mécanisme beaucoup plus sophistiqué.
Une autre forme de la substitution estle dictionnaire : au lieu de changer les symboles du message un
à un, ce sont des mots entiers que l'on remplace.
Pour les transpositions on modifie l'ordre des symboles du texte clair. Une technique consiste à se
donner un mot clé, à écrire le message sous ce mot clé et à lire le texte en colonne, par ordre
alphabétique.
Message : wikipediaestuneencyclopedielibre
Mot clé : crypto
on écrit sous wikipe
le mot clé diaest
uneenc
yclope
dielib
re****
lettre du mot clé
(ordre alphabétique) coprty
on ordonne les weiipk
colonnes dteisa
ucenne
yeocpl
dbliie
r**e**
Message chiffré : wduydr etceb* ieeol* iincie psnpi* kaele*
Les astérisques sont ajoutés pour le déchiffrement et les espaces dans le message chiffré uniquement pour la lisibilité.
Le message, s'il était par exemple envoyé à un destinataire qui connaît le mot clé, serait le suivant :
Message chiffré : wduydretceb*ieeol*iinciepsnpi*kaele*
3. Techniques modernes
Depuis l'avènement du numérique, les paradigmes du chiffrement symétrique ont bien changé. D'une
part, la discipline s'est formalisée, même si la conception de système de chiffrement garde
inévitablementun aspect artisanal. En effet dans ce domaine, la seule chose que l'on sache prouver est
la résistance face à des types d'attaques connues, pour les autres… D'autre part, la forme du texte
chiffré ayant changé, les méthodes ont suivi. Les algorithmes modernes chiffrent des suites de bits.
On distingue deux types d'algorithmes, les algorithmes en blocs, qui prennent bits en entrée et en
ressortent , et les algorithmes à flots, qui chiffrent bitpar bitsur le modèle du chiffre de Vernam. Dans
ce dernier cas, l'algorithme engendre une suite de bits qui est ajouté (cf. XOR) à la suite binaire à
chiffrer. Les techniques utilisées pour générer la suite que l'on ajoute -- appelée la suite chiffrante --
sontdiverses. Elles peuventutiliser des registres à décalage à rétroaction linéaire, composés de façon
non linéaire (par exemple A5/1 ou E0, mais pas RC4 qui est ou a été très répandu) ... ou utiliser un
chiffrement par bloc en mode avec un mode opératoire adapté.
La seconde famille d'algorithmes, ceux en blocs, est en général construite sur un modèle itératif. Ce
modèle utilise une fonction qui prend une clé et un message de bits. C'est cette
fonction qui est itérée un certain nombre de fois, on parle de nombre de tours. À chaque tour, la
clé utilisée est changée et le message que l'on chiffre est le résultat de l'itération précédente.
C1 = f(k1,M)
Cr = F(kr, Cr-1)
12
C2 = F(k2, C1)
Les clés utilisées sont déduites d'une clé maître qui est la quantité secrète que doivent partager émetteur et
destinataire. L'algorithme générant ces clés à partir de est appelé l'algorithme de cadencement de clés.
Pour qu'un tel système puisse fonctionner, la fonction utilisée doit être une permutation, c'est-à-dire qu'il faut pour
toute clé et message pouvoir recalculer à partir de , autrement le déchiffrement n'est pas
possible et par conséquent on ne dispose pas d'un algorithme utilisable. Formellement, cela signifie qu'il existe une
fonction vérifiant
.
La sécurité d'un tel système repose essentiellement sur deux points, l'algorithme de cadencement de clé et la
robustesse de la fonction . Si l'algorithme de cadencement est mal conçu, les peuvent être déductibles les unes
des autres, ou mal réparties, … Dire de la fonction qu'elle est robuste signifie qu'on la suppose difficile à inverser
sans connaître la clé ayant servi dans le calcul de . En d'autres termes, connaissant
seulement , et , on ne doit pas pouvoir retrouver le message , si ce n'est en effectuant une recherche
exhaustive de la clé , c'est-à-dire en calculant
1) ) ;
2) ;
et cela pour toutes les clés jusqu'à ce que l'on en trouve une pour laquelle est égal à . On est alors assuré
d'avoir le message qui n'est autre que . Le problème étant que si est constitué de bits, il faut en
moyenne essais. En prenant assez grand, on peut être sûr que cela n'est pas réalisable en
pratique : supposons que l'on puisse essayer 109(un milliard) clés par seconde, soit environ 230, il y
a 31 557 600 secondes par an, soit 225, en conséquence on peut tester 255 clés par an. Si on prend pour une valeur
de 80 bits, il faudrait 224 ans, plus de 16 millions d'années.
Une technique très répandue pour fabriquer des fonctions est celle du schéma de Feistel. Dans ce schéma, le
message à chiffrer est découpé en 2 blocs de n/2 bits, et le message chiffré est
où le '⊕'
est le XOR et est une fonction quelconque, on n'a plus à supposer que c'est une permutation. En effet, on peut
retrouver à partir de la clé
1) connaissant , on connaît qui est sa partie gauche,
2) on calcule ,
3) on ajoute le résultat du calcul précédent à la partie droite de , et on retrouve ,
cela sans restriction sur . Clairement, dans ce schéma, la robustesse de repose sur la fonction .
4. ROT13
Chiffré avec ROT13, le mot « HELLO » devient « URYYB » (et inversement).
Le ROT13 (rotate by 13 places) est un cas particulier du chiffre de César, un algorithme simpliste de
chiffrement de texte. Comme son nom l’indique, il s’agit d’un décalage de 13 caractères de chaque
lettre du texte à chiffrer. Son principal aspect pratique est que le codage et le décodage se font
exactement de la même manière.
13
a. Limitesd'un chiffredeCésar
Le défaut de ce chiffrement est qu’il s’occupe des lettres, il ne s’occupe pas des symboles et de la
ponctuation. C’est pourquoi on doitsupprimer toute accentuation du texte à chiffrer (ce défaut est moins
gênant pour l'anglais que pour le français ou l'allemand). Il ne s'occupe pas non plus des chiffres, ce qui
était sans importance puisque les romains écrivaient leurs chiffres avec des lettres (I, V, X, L, M, etc.).
Pour l'utiliser aujourd'hui, il suffit de convertir d'abord les chiffres en utilisant la notation romaine, ou en
lettres (UN pour 1, DEUX pour 2…).
Un caractère étant invariablement remplacé par un autre, cet algorithme est aussi qualifié de
substitution monoalphabétique.
b. L'algorithme
À l’aide de la définition de cetalgorithme, on peut alors définir la correspondance entre les caractères en clair et
chiffrés :
Caractère
non-chiffré 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
Caractère
chiffré 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
L’avantage de ROT13, c’est le fait que le décalage soit de 13. L’alphabet comporte 26 lettres, et si on
applique deux fois de suite le chiffrement, on obtient comme résultat le texte en clair. Pour cela on doit
considérer l’alphabetcomme circulaire, c’est-à-dire qu’après la lettre Z on a la lettre A, ce qui permet de
grandementsimplifier son usage etsa programmation puisque c’estla même procédure qui est utilisée
pour le chiffrement et le déchiffrement.
ROT13 va à l’encontre du principe de Kerckhoffs car si l’adversaire apprend ou devine que le message
a été chiffré en ROT13, il sera capable de le déchiffrer sans problème.
c. Utilité
Preuve par l’exemple est faite qu’il n’est pas évident de lire un texte une fois qu’il est chiffré avec ROT13 mais
évidemment, il ne faut pas utiliser ce chiffrement si vous souhaitez conserver des secrets en sécurité. Ce type de
chiffrement est plutôt utilisé dans les forums, news et groupes pour ne pas dévoiler à tous les solutions de jeux, les fins
de films ou ne pas casser l’intrigue d’une série…
d. Exemple d'utilisation
$ echo "Chiffre moi" | tr 'A-Za-z' 'N-ZA-Mn-za-m'
Puvsser zbv
Variante
ROT47 est une variante de ROT13 qui permet de chiffrer les lettres, les chiffres, et les autres caractères spéciaux.
ROT47 se base sur le code ASCII, qui assigne à chaque symbole un nombre. Il utilise les nombres dans l’intervalle 33
à 126, correspondant respectivement au point d’exclamation (« ! ») et au symbole tilde (« ~ »). Ensuite, selon le même
principe que le ROT13, il effectue une rotation de 47 lettres. Le fait d’utiliser un panel de symboles plus important que
le ROT13 permet un brouillage plus efficace, même si le code reste trivial à déchiffrer.
e. Outils
Outre quelques traducteurs en ligne, il existe aussi des extensions à des outils de messagerie ou à des navigateurs
internet. On peut également citer :
tr a-zA-Z n-za-mN-ZA-M
L'éditeur de texte Vim supporte également nativement ce chiffrement: voir commande g? .
En cryptographie, le chiffrement par décalage, aussi connu comme le chiffre de César ou le code de César(voir les
différents noms), est une méthode de chiffrementtrès simple utilisée par Jules César dans ses correspondances
secrètes (ce qui explique le nom « chiffre de César »).
14
Le texte chiffré s'obtienten remplaçantchaque lettre du texte clair original par une lettre à distance fixe,
toujours du même côté, dans l'ordre de l'alphabet. Pour les dernières lettres (dans le cas d'un décalage
à droite), on reprend au début. Par exemple avec un décalage de 3 vers la droite, A est remplacé
par D, B devient E, et ainsi jusqu'à W qui devient Z, puis X devient A etc. Il s'agit d'une permutation
circulaire de l'alphabet. La longueur du décalage, 3 dans l'exemple évoqué, constitue la clé du
chiffrement qu'il suffit de transmettre au destinataire — s'il sait déjà qu'il s'agitd'un chiffrement de César
— pour que celui-ci puisse déchiffrer le message.Dans le cas de l'alphabet latin, le chiffre de César n'a
que 26 clés possibles (y compris la clé nulle, qui ne modifie pas le texte).
Il s'agit d'un cas particulier de chiffrement par substitution monoalphabétique : ces substitutions
reposentsur un principe analogue, mais sont obtenues par des permutations quelconques des lettres
de l'alphabet. Dans le cas général, la clé estdonnée par la permutation, etle nombre de clés possibles
est alors sans commune mesure avec celui des chiffrements de César.
Le chiffrement de César a pu être utilisé comme élément d'une méthode plus complexe, comme
le chiffre de Vigenère. Seul, il n'offre aucune sécurité de communication, à cause du très faible nombre
de clés, ce qui permet d'essayer systématiquement celles-ci quand la méthode de chiffrement est
connue, mais aussi parce que, comme tout encodage par substitution monoalphabétique, il peut être
très rapidement « cassé » par analyse de fréquences (certaines lettres apparaissent beaucoup plus
souvent que les autres dans une langue naturelle).
Exemple
Le chiffrement peut être représenté par la superposition de deux alphabets, l'alphabet clair présenté dans l'ordre
normal et l'alphabet chiffré décalé, à gauche ou à droite, du nombre de lettres voulu. Nous avons ci-dessous l'exemple
d'un encodage de 3 lettres vers la droite. Le paramètre de décalage (ici 3) est la clé de chiffrement :
clair : ABCDEFGHIJKLMNOPQRSTUVWXYZ
chiffré : DEFGHIJKLMNOPQRSTUVWXYZABC
Pour encoder un message, il suffit de regarder chaque lettre du message clair, et d'écrire la lettre encodée
correspondante. Pour déchiffrer, on fait tout simplement l'inverse.
original : WIKIPEDIA L'ENCYCLOPEDIE LIBRE
encodé : ZLNLSHGLD O'HQFBFORSHGLH OLEUH
Le chiffrement peutaussi être représenté en utilisant les congruences sur les entiers. En commençant
par transformer chaque lettre en un nombre (A = 0, B = 1,..., Z = 25)1, pour encoder une lettre avec
une clé n il suffit d'appliquer la formule :
Le déchiffrement consiste à utiliser la clé opposée ( à la place de ) :
On peut s'arranger pour que le résultat soit toujours représenté par un entier de 0 à 25 : si x+n
(respectivement x-n) n'estpas dans l’intervalle [0,25], il suffit de soustraire (respectivement ajouter) 26.
Le décalage demeuranttoujours le même pour un même message, cette méthode est une substitution
monoalphabétique, contrairement au chiffre de Vigenère qui constitue une substitution
polyalphabétique.
Dénominations
Le chiffrement par décalage possède plusieurs synonymes :
 le chiffre de César. César utilisait pour ses correspondances un chiffrementpar décalage de 3 vers
la droite. Selon David Kahn, ce n'estque récemmentque l'expression « chiffre de César » désigne
les chiffrements par décalage ayant un décalage différent de 33 ;
 la substitution de César ;
15
le terme code de César est un abus de langage : en cryptologie, le chiffre est un procédé
systématique, alors qu'un code utilise le symbolisme des mots. À ce sujet, se reporter au
chapitre Différence entre chiffre et code de l'article « Chiffre ». En(x)= (x+n)[26] Dn(x)= (x-n)[26]
5. Chiffre affine
Le chiffre affine est une méthode de cryptographie basée sur un chiffrement par substitution mono-
alphabétique, c'est-à-dire que la lettre d'origine n'est remplacée que par une unique autre lettre,
contrairement au chiffre de Hill. Il s'agitd'un code simple à appréhender mais aussi un des plus faciles à
casser.
a. Principe
Chiffrement
On commence par remplacer chaque lettre par son rang dans l'alphabet en commençant au rang 0 (certaines
variantes commencent au rang 1) :
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
Deux entiers a et b sont choisis comme clef. Chaque lettre claire est d'abord 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 (soit ).
Ainsi pour chiffrer le mot CODE grâce au chiffre affine de clef (17,3), il faut d'abord le transcrire en série de nombres
C O D E → 2 ; 14 ; 3 ; 4
appliquer ensuite la fonction affine
2 ; 14 ; 3 ; 4 → 37 ; 241 ; 54 ; 71
prendre les restes dans la division par 26
37 ; 241 ; 54 ; 71 → 11 ; 7 ; 2 ; 19
puis retranscrire en lettres
11 ; 7 ; 2 ; 19 → L H C T
Si le coefficient a vaut 1, alors le codage affine correspond au chiffre de César.
De plus, le coefficient a doit toujours être premier avec le nombre total de lettres. Par exemple, pour
l'alphabetlatin de 26 lettres, les possibilités sont : 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 ou 25. Dans le cas
contraire, les autres coefficients donnent dans la table plusieurs fois la même lettre. (La fréquence
d'apparition de la lettre vaut alors le coefficient) Si celui-ci vaut 4, si la lettre "N" si elle est présente,
remplacera 4 lettres différentes à elle seule. Par ailleurs, si le coefficient a vaut le nombre de lettre
présent dans la table, la lettre dont le rang est égal à 0 remplacera toutes les autres. Les coefficients
supérieur au nombre de lettres compris dans la table ont la même valeur que ceux qui y sont compris.
Par exemple, si notre nombre de lettre est égal à 26, alors les clef (1 ; 0), (27 ; 0) et (52 ; 0) coderont
exactement les mêmes lettres.
b. Déchiffrement
Pour déchiffrer le message, il faut être capable de trouver l'antécédent de y par l'application qui, à un entier x compris
entre 0 et 25, associe le reste de ax + b dans la division par 26. Il est facile d'ôter b mais il n'est pas toujours réalisable
de simplifier par a. La simplification ne peut s'effectuer que s'il existe un entier a' tel que aa' a pour reste 1 dans la
division par 26. C'est-à-dire s'il existe un entier k tel que
soit encore
Le théorème de Bachet-Bézoutaffirme que l'on ne peut trouver k et a' que lorsque a est premier avec 26. La clef de
code doit donc être un couple d'entiers (a, b) dans lequel a est premier avec 26.
C'est le cas, dans l'exemple choisi, l'entier a' est 23. Pour déchiffrer le message, il faut donc ôter 3 à chaque nombre,
les multiplier par 23 puis en chercher les restes dans la division par 26
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
16
2 ; 14 ; 3 ; 4 - > C O D E
c. Cryptanalyse
Il n'existe que 12 entiers compris entre 0 et 26 et premiers avec 26 (1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23
et 25). Il n'existe donc que12 x26 =36 clés de chiffrement possible. Si l'on sait qu'un code affine a été
utilisé, on peut casser le code par force brute en essayant les 312 clés.
À la lumière du principe de Kerckhoffs, ce manque de variété rend ce système très peu sécurisé. Si le
message estplus long, on peut tenter d'identifier les lettres selon leur fréquence d'apparition dans les
messages.En effetune lettre est, par cette méthode, toujours remplacée par la même lettre. La lettre E,
par exemple, étanten français très fréquente, si, dans le message chiffré, la lettre T est très fréquente,
on peutsupposer que E estremplacé par T et ne rechercher que les codages affines permettant cette
substitution.
Variantes
Le système de codage précédemment décrit ne code que les 26 lettres de l'alphabet et aucun signe
typographique. On peut élargir le champ des caractères à coder en prenant leur code ASCII. Ce qui
fournit, si on exclut le 32 premiers nombres et 128e qui ne correspondent pas à des caractères
affichables, 95 caractères à coder. À chaque caractère, on associe donc son code ASCII diminuée de
32. Le chiffre affine utilise alors une clé (a, b) où a et b sontchoisis entre 0 et 94, l'entier a étant premier
avec 95. le nombre x est remplacé par le reste de ax+bmod95.
Cette variante offre l'avantage, d'une part d'offrir une plus grande variété dans les caractères utilisables
(95) d'autre part de rendre le cassage par force brute un peu plus long car il faut essayer 6840 clefs. Ce
système est en outre très facile à programmer. Mais le cassage par observation des fréquences de
chaque caractère reste encore possible.
L'autre système consiste à grouper les lettres par paire et d'effectuer une transformation affine sur
chaque paire de nombre. C'est le chiffre de Hill.
Utilisation
Le chiffre affine regroupe plusieurs systèmes de chiffrement simples comme le chiffrement par
décalage, de clé (1,n) dontles plus connus sontle code de César de clé (1,3) et le ROT13 de clé (1,13)
ou des chiffrements par symétrie comme le code Atbash de clé (-1;25).
Le chiffrement affine n'offre pas de sécurité suffisante pour chiffrer des messages. Il est en outre plus
difficile à mettre en place qu'un code de César. Il est donc dans les faits assez rarement utilisé sauf
dans le cadre d'énigme à résoudre.Il estprincipalementun exemple pédagogique montrant la place de
l'arithmétique dans la cryptologie
6. Chiffre de Vigenère
Blaise de Vigenère.
Le chiffre de Vigenère est un système de chiffrement polyalphabétique, c’est un chiffrement
par substitution, mais une même lettre du message clair peut, suivant sa position dans celui-
ci, être remplacée par des lettres différentes, contrairement à un système de chiffrement
monoalphabétique comme le chiffre de César. Cette méthode résiste ainsi à l‘analyse de
fréquences, ce qui est un avantage décisif sur les chiffrements monoalphabétiques.
Cependant le chiffre de Vigenère a été cassé par le major prussien Friedrich Kasiski qui a
publié sa méthode en 1863.Il est nommé ainsi au XIXe siècle en référence au diplomate
du XVIe siècle Blaise de Vigenère, qui le décrit (intégré à un chiffrement plus complexe) dans
son traité des chiffres paru en 1586 et du traité de Giovan Battista Bellaso ( 1533).
Principeduchiffrement
Ce chiffrement introduit la notion de clé. Une clé se présente généralement sous la forme d'un mot ou
d'une phrase. Pour pouvoir chiffrer notre texte, à chaque caractère nous utilisons une lettre de la clé
pour effectuer la substitution. Évidemment, plus la clé sera longue et variée et mieux le texte sera
chiffré.
17
La table de Vigenère
Pour chaque lettre en clair, on sélectionne la colonne correspondante et pour une lettre de la clé on sélectionne la
ligne adéquate, puis au croisement de la ligne et de la colonne on trouve la lettre chiffrée. La lettre de la clé est à
prendre dans l'ordre dans laquelle elle se présente et on répète la clé en boucle autant que nécessaire.
L'outil indispensable du chiffrement de Vigenère est la « table de Vigenère »
Lettre en clair
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
C
l
é
U
t
i
l
i
s
é
e
26 lettres chiffrées
A 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
B 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
C 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
D 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
E 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
F 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
G 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
H 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
I 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
J 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
K 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
L 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
M 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
N 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
O 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
P 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
Q 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
R 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
S 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
T 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
U 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
V 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
W 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
X 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
Y 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
Z 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
18
« EKKZHSH UA VOE KCQIVLSX »
Chiffrement
Clé : musique
Texte : J'adore écouter la radio toute la journée
Texte en clair : j'adore ecouterla radio toute la journee
Clé répétée : M USIQU EMUSIQUEM USIQU EMUSIQU EMUSIQU
^ ^^^
| ||Colonne O, ligne I : on obtientla lettre W.
| |Colonne D, ligne S : on obtientla lettre V.
| Colonne A, ligne U : on obtientla lettre U.
Colonne J, ligne M: on obtientla lettre V.
Le texte chiffré est alors :
V'UVWHY IOIMBUL PM LSLYI XAOLM BU NAOJVUY.
Si on veut déchiffrer ce texte, on regarde pour chaque lettre de la clé répétée la ligne correspondante et
on y cherche la lettre chiffrée. La première lettre de la colonne que l'on trouve ainsi est la lettre
déchiffrée.
Texte chiffré : V'UVWHY IOIMBULPM LSLYI XAOLMBUNAOJVUY
Clérépétée : M USIQUEMUSIQUEM USIQUEMUSI QUEMUSIQU
^ ^^^
| ||LigneI, on chercheW: on trouvelacolonneO.
| |LigneS, on chercheV: on trouvelacolonneD.
| LigneU,on chercheU: on trouvelacolonneA.
LigneM,on chercheV: on trouvelacolonneJ.
Principe mathématique
Mathématiquement, on identifie les lettres de l'alphabet aux nombres de 0 à 25 (A=0, B=1...). Les
opérations de chiffrement et de déchiffrement sont, pour chaque lettre, celles du chiffre de César. En
désignantla ie lettre du texte clair par Texte[i], la ie du chiffré par Chiffré[i], etla ielettre de la clé, répétée
suffisamment de fois, par Clés[i], elle se formalise par :
 Chiffré[i] = (Texte[i] + Clés[i]) modulo 26
 Texte[i] = (Chiffré[i] - Clés[i]) modulo 26
où x modulo 26 désigne le reste de la division entière de x par 26. Pour le chiffrement il suffit d'effectuer
l'addition des deux lettres puis de soustraire 26 si le résultat dépasse 26. Pour le déchiffrement il suffit
d'effectuer la soustraction et d'additionner 26 si le résultat est négatif. Le déchiffrement est aussi une
opération identique à celle du chiffrement pour la clé obtenue par Clé'[i] = 26 - Clé[i]. Un disque à
19
chiffrer qui utilise une représentation circulaire de l'alphabet (après Z on a A), permet de réaliser
directement cette opération.
Le chiffré d'un texte suffisamment long constitué uniquement de A donne la clé ( 0 + x = x, soit A +
Clés[i] = Clés[i] ).
Cryptanalyse
Si l'on connait le nombre de symboles que comporte la clé, il devient possible de procéder paranalyse
de fréquences sur chacun des sous-textes déterminés en sélectionnant des lettres du message clair à
intervalle la longueur de la clef (autant de sous-textes que la longueur de la clef). C'est l'attaque bien
connue sur les chiffrements mono-alphabétiques.
Friedrich Kasiski publie en 1863 une méthode efficace pour déterminer la taille de la clef, le test de
Kasiski, en repérant la répétition de certains motifs dans le message chiffré. Charles Babbage s'est
intéressé au chiffrement de Vigenère une dizaine d'années auparavant. Il avait décrypté dans des cas
particuliers des messages chiffrés par la méthode de Vigenère. Il n'a rien publié à ce sujet, mais on
dispose de ses notes. On ne sait pas quelle méthode il a utilisée, il a pu exploiter des faiblesses de
l'utilisation du chiffrement. Certains historiens pensent qu'il a pu découvrir la méthode de Kasiski, bien
qu'il n'en ait pas laissé de trace écrite1
Des techniques statistiques fondées sur l'indice de coïncidence, découvertes au XXe siècle, s'avèrent
encore plus efficaces pour casser le chiffre.
Une grille de permutations alphabétique indexée par des lettres, qui permet une variante du chiffre dit « de
Vigenère » oùcesont les 10 permutationsdelagrillequisont utiliséesplutôt que les26 décalagesalphabétiques
du chiffre de César.
Variantes
Le chiffre de Vigenère a été réinventé de nombreuses fois au cours des siècles et il a existé plusieurs
variantes. Il n'estpas indispensable d'utiliser un décalage comme substitution alphabétique, n'importe
quelle permutation des lettres de l'alphabet convient. L'avantage du chiffre de César est d'être
entièrement déterminé par la lettre qui donne le décalage. Mais, avant Vigenère, Giovan Battista
Bellaso avait proposé un tel système (repris par le physicien Giambattista della Porta qui s'en inspire
sans citer Beloso), où chacun des correspondants dispose d'une même grille qui donne une suite de
permutations de l'alphabet chacune associée à une ou plusieurs lettres. Chiffrement et déchiffrement
demandent la grille et un mot clef. Les lettres du mot clef sont utilisées de la même façon que pour le
chiffrement de Vigenère, mais indiquentl'une des permutations de la grille et non un décalage 2.A priori,
la connaissance de la grille ne permet pas à elle seule de déchiffrer le message, puisqu'il faut le mot
clef. Cependantle chiffrement estsusceptible des mêmes attaques que celui de Vigenère. Le système
a connu d'autres variantes comme le chiffre de Beaufort.
7. Le chiffre des Templiers
C’est un système de chiffrement par substitution basé sur une correspondance entre l'alphabet et une suite de figures
géométriques issues de la Croix de Malte.
L'Ordre du Temple était un ordre religieux et militaire créé en 1129 dont les membres étaient appelés
Templiers et dont la mission principale était d'assister les pèlerins se rendant en Terre sainte. Cette
activité poussa l'ordre à se développer rapidement et à constituer de l'Orient à l'Occident un réseau
de commanderies.
20
Pour transmettre de façon sûre des informations ou des lettres de change entre les différentes
commanderies, ils auraient adopté, sans que cela soit historiquement confirmé, un alphabet de
chiffrement dit « Chiffre des Templiers ». Plus tard, la franc-maçonnerie s'en inspirera pour créer
le Chiffre des Francs-maçons.
Code
Les figures géométriques sont basées sur un découpage de la Croix de Malte (ou Croix des huit
Béatitudes). À chaque symbole correspond une lettre de l'alphabet. Ce système de chiffrement, quoique
simpliste, étaitd'une efficacité redoutable car très facile à manier. Cependant, ce chiffre ne résiste pas à
une analyse fréquentielle2.
Remarque : L'alphabet latin antique ne comportait pas les lettres J, U et W, celles-ci n'apparaissant
dans l’alphabet français qu'au XVIe siècle3. La période et les conditions suivant lesquelles ce système
est créé ne sont pas connues, mais les U et le W apparaissent déjà dans certains manuscrits
du XIIIe siècle, etces caractères se retrouventégalement sur certains sceaux supposés Templiers des
débuts de l'ordre1.
Advanced Encryption1 Standard ou AES aussi connu sous le nom de Rijndael, est
un algorithme de chiffrement symétrique. Il remporta en octobre 2000 le concours AES, lancé en 1997
par le NIST et devintle nouveau standard de chiffrement pour les organisations du gouvernement des
USA. Il a été approuvé par la NSA2 dans sa suite B1des algorithmes cryptographiques. Il est
actuellement le plus utilisé et le plus sécuritaire.
Il est issu d'un appel à candidatures international lancé en janvier 1997 et ayant reçu 15 propositions.
Parmi ces 15 algorithmes, 5 furent choisis pour une évaluation plus poussée en
avril 1999 : MARS, RC6, Rijndael, Serpent, et Twofish. Au bout de cette évaluation, ce fut finalement le
candidat Rijndael, du nom de ses deux concepteurs Joan Daemen et Vincent Rijmen (tous les deux de
nationalité belge) qui a été choisi2. Ces deux experts en cryptographie étaient déjà les auteurs d'un
autre algorithme : Square. AES estun sous-ensemble de Rijndael : il ne travaille qu'avec des blocs de
128 bits alors que Rijndael offre des tailles de blocs et de clefs qui sont des multiples de 32 (compris
entre 128 et 256 bits).
Ce faisant, l'AES remplace le DES (standard des années 1970) aujourd’hui’ obsolète, car il utilisait des
clefs de 56 bits seulement. L'AES a été adopté par le NIST3 en 2001. De plus, son utilisation est très
pratique car il consomme peu de mémoire etn'étantpas basé sur un schéma de Feistel, sa complexité
est moindre et il est plus facile à mettre en œuvre.
Fonctionnement
L'algorithme prend en entrée un bloc de 128 bits (16 octets), la clé fait 128, 192 ou 256 bits.
Les16 octets en entrée sont permutés selon une table définie au préalable. Ces octets sont ensuite
placés dans une matrice de 4x4 éléments etses lignes subissentune rotation vers la droite. L'incrément
pour la rotation varie selon le numéro de la ligne. Une transformation linéaire est ensuite appliquée sur
la matrice, elle consiste en la multiplication binaire de chaque élément de la matrice avec
des polynômes issus d'une matrice auxiliaire, cette multiplication est soumise à des règles spéciales
selon GF(28) (groupe de Galois ou corps fini). La transformation linéaire garantit une
meilleure diffusion (propagation des bits dans la structure) sur plusieurs tours.
Finalement, un OU exclusif XOR entre la matrice et une autre matrice permet d'obtenir une
matrice intermédiaire. Ces différentes opérations sontrépétées plusieurs fois et définissent un « tour ».
Pour une clé de 128, 192 ou 256, AES nécessite respectivement 10, 12 ou 14 tours.
1 Chiffrement
2
National Security Agency
3 National Instituteof Standards and Technology
21
Attaques
L'AES n'a pour l'instant pas été cassé et la recherche exhaustive (« force brute ») demeure la seule
solution. Rijndael a été conçu de manière à rendre des méthodes classiques comme la cryptanalyse
linéaire ou différentielle très difficiles.
Attaques sur des versions simplifiées
Des attaques existentsur des versions simplifiées d'AES. Niels Ferguson etson équipe ontproposé en
2000 une attaque sur une version à 7 tours de l'AES 128 bits. Une attaque similaire casse un AES de
192 ou 256 bits contenant 8 tours. Un AES de 256 bits peut être cassé s'il est réduit à 9 tours avec une
contrainte supplémentaire. En effet, cette dernière attaque repose sur le principe des « related-keys »
(clés apparentées). Dans une telle attaque, la clé demeure secrète mais l'attaquant peut spécifier des
transformations sur la clé et chiffrer des textes à sa guise. Il peut donc légèrement modifier la clé et
regarder comment la sortie de l'AES se comporte.
Attaques sur la version complète
Certains groupes ont affirmé avoir cassé l'AES complet mais après vérification par la communauté
scientifique, il s'avéraitque toutes ces méthodes étaienterronées.Cependant, plusieurs chercheurs ont
mis en évidence des possibilités d'attaques algébriques, notamment l'attaque XL et une version
améliorée, la XSL. Ces attaques ont été le sujet de nombreuses controverses et leur efficacité n'a pas
encore été pleinementdémontrée, le XSL fait appel à une analyse heuristique dont la réussite n'est pas
systématique. De plus, elles sont impraticables car le XSL demande au moins 287 opérations voire
2100 dans certains cas. Le principe estd'établir les équations (quadratiques / booléennes) qui lient les
entrées aux sorties et de résoudre ce système qui ne comporte pas moins de 8 000 inconnues et
1 600 équations pour 128 bits. La solution de ce système reste pour l'instant impossible à déterminer.
En l'absence d'une preuve formelle sur l'efficacité d'attaques similaires au XSL, l'AES est donc
considéré comme sûr.
En 2011, des chercheurs de Microsoft publient une attaque sur la version complète d'AES3. Cette
attaque permet de trouver la clef d'AES-128 en seulement opérations (contre pour une
attaque par force brute). La même attaque s'applique à une version simplifiée (à 8 tours) d'AES-128,
réduisant la complexité de l'attaque à . Cependant, cette attaque se basant sur une amélioration
de l'attaque par rencontre au milieu est encore impraticable.
Recommandations de la NSA
La NSA a annoncé que tous les finalistes qui avaient participé au concours AES pouvaient être
considérés comme sûrs etqu'ils étaientsuffisamment robustes pour chiffrer les données non-classifiées
du gouvernement américain. Pour les données classifiées, le gouvernement américain a annoncé
en juin 2003 à propos de l'algorithme AES :
« L'architecture et la longueur de toutes les tailles de clés de l'algorithme AES (128, 192 et 256) sont
suffisantes pour protéger des documents classifiés jusqu'au niveau « SECRET ». Le niveau « TOP
SECRET » nécessite des clés de 192 ou 256 bits. L'implémentation de l'AES dans des produits
destinés à la protection des systèmes et/ou documents liés à la sécurité nationale doitfaire l'objet d'une
analyse et d'une certification par la NSA avant leur acquisition et leur utilisation »
— paragraphe (6) de la dépêche originale
Attaques par canal auxiliaire
Les attaques par canal auxiliaire exploitent les faiblesses du système implémentant l'algorithme de chiffrement et ne le
visent donc pas directement. Il existe plusieurs attaques connues de ce type pour l'AES.
En avril 2005, Daniel J. Bernstein a publié une attaque temporelle utilisée pour casser une clé AES sur un serveur
spécifique tournant avec OpenSSL.
22
En novembre 2010, Endre Bangerter, David Gullasch et Stephan Krenn ont publié un article décrivant la récupération
d'une clé secrète AES-128 quasiment en temps réel qui fonctionne pour tout type d'implémentation. Comme les
précédentes attaques de ce type, elle nécessite de lancer un programme sur la machine qui effectue le chiffrement.
F. Cryptanalyse
Les schémas de Feistel ont été largement analysés et examinés par les experts. Plusieurs attaques
sont possibles mais les deux principales sont :
 la cryptanalyse linéaire;
 la cryptanalyse différentielle.
Ces méthodes ont fait leur preuve sur DES et sur d'autres algorithmes similaires. Mais cela ne signifie
pas que l'utilisation d'un réseau de Feistel va obligatoirement entraîner des vulnérabilités significatives.
Grâce à l'ajout de différentes techniques etavec une conception bien menée,on peutconsidérablement
améliorer la résistance d'un algorithme basé sur Feistel. C'est le cas pour Blowfish qui est
cryptographiquement sûr à la date de décembre 2008.
En général, les cryptanalystes s'attaquenten premier à des versions amoindries des chiffrements, c’est-
à-dire comportant moins de tours.
Algorithmes
Un grand nombre d'algorithmes utilise des réseaux de Feistel, avec des variantes. Voici une liste non-exhaustive entre
autres, (DES, Blowfish Twofish Camellia , SEED RC5 OAEP TEA )
One advantage of the Feistel model compared to a substitution-permutation network is that the round function does
not have to be invertible.
G. La cryptanalysedifférentielle
C’est une méthode générique de cryptanalyse qui peut être appliquée aux algorithmes de chiffrement
itératif par blocs, mais égalementaux algorithmes de chiffrement par flots et aux fonctions de hachage.
Dans son sens le plus large, elle consiste en l'étude sur la manière dont les différences entre les
données en entrée affectent les différences de leurs sorties. Dans le cas d'un chiffrement itératif par
blocs, le terme se rapporte à l'ensemble des techniques permettantde retracer les différences à travers
le réseau des transformations, découvrant ainsi où l'algorithme montre un comportement prédictible et
exploitant ainsi ces propriétés afin de retrouver la clé secrète.
a. Origines de la cryptanalyse différentielle
La découverte de la cryptanalyse différentielle estgénéralementattribuée à Eli Biham etAdi Shamir à la
fin des années 1980. Ces derniers publièrent alors un grand nombre d'attaques contre divers
algorithmes de chiffrement itératif par blocs et diverses fonctions de hachage ; ces articles
comprenaient la présentation d'une faiblesse théorique dans l'algorithme DES.
Il a été alors noté que DES était particulièrement résistant à cette attaque et en particulier que de
petites modifications dans ses paramètres l'affaiblissaient. Ce constat a fait naître la rumeur que ses
concepteurs (travaillant pour IBM) connaissaient déjà cette méthode dans les années1970.
Effectivement, plusieurs personnes ayant participé à sa conception ont depuis admis que la défense
contre la cryptanalyse différentielle était bien un des buts recherchés alors (Don Coppersmith, 1994). Il
semblerait même que la NSA qui contribua également à la conception de DES, avait même
connaissance de cette technique avant sa redécouverte par IBM. La NSA exigea même que le
processus de la conception soit tenu secret afin d'éviter la propagation de cette méthode. À l'intérieur
d'IBM, la cryptanalyse différentielle était connue sous le nom de T-attack, abréviation de Tickling attack,
l'attaque par chatouillement car elle consistait à chatouiller les entrées pour voir l'effet sur les sorties.
23
Alors que DES avait été conçu pour résister à la cryptanalyse différentielle, d'autres algorithmes conçus
à la même époque se sontrévélés particulièrementvulnérables.Une des premières cibles fut FEAL, qui
illustra la puissance de la méthode. Sa version originale, constituée de quatre itérations (FEAL-4), peut
être compromise avec seulement huit messages en clair choisis avec soin.
b. Description de l'attaque
La cryptanalyse différentielle s'effectue en général dans un contexte de texte clair choisi, ce qui signifie
que l'attaquant est en mesure d'obtenir les résultats chiffrés de textes clairs de son choix. Il existe des
variantes qui fonctionnent dans d'autres modes d'attaque : à texte clair connu ou à texte chiffré
seulement. La cryptanalyse repose sur des paires de textes clairs qui ont une différence constante.
L'opération de différence peut être définie de diverses manières, la Fonction OU exclusif est la plus
courante. L'attaquant calcule ensuite les différences dans les textes chiffrés, afin d'en extraire des
motifs pouvant indiquer un biais. Les différences en sortie du chiffrement sont nommées
des différentielles. Leurs propriétés statistiques dépendentde la nature des boîtes-S de l'algorithme de
chiffrement. Pour chaque boîte de substitution , l'attaquant peut calculer une paire de
différentielles avec :
la différence en sortie (avec la différence appliquée au texte en
entrée).
Dans l'attaque classique, une différence particulière dans le texte chiffré permet de distinguer le texte
chiffré d'un flôt aléatoire (l'aléa en sortie est une propriété attendue dans tout chiffrement robuste). Des
techniques plus sophistiquées permettent de diminuer la complexité de l'attaque comme dans le cas de
DES. Le choix des différences appliquées en entrée est cruciale pour la réussite de l'attaque. Une
analyse des rouages de l'algorithme permetde déterminer les différences qui ontla plus grande chance
d'apparaître sur le cheminement des données et de déterminer une caractéristique différentielle.
B. Attaque boomerang
L'attaque boomerang est une version améliorée de la cryptanalyse différentielle, cette méthode a été inventée
par David Wagner en 1999. Elle consiste à attaquer les deux moitiés d'un algorithme de chiffrement par bloc et part du
principe que certaines propriétés, après perturbations des entrées, ne se propagent pas à travers toute la structure.
C. Cryptanalyse linéaire
La cryptanalyse linéaire est une technique inventée par Mitsuru Matsui, chercheur chez Mitsubishi
Electric. Elle date de 1993 et fut développée à l'origine pour casser l'algorithme de chiffrement
symétrique DES. Ce type de cryptanalyse se base sur un conceptantérieur à la découverte de Matsui :
les expressions linéaires probabilistes. Ces dernières ont été étudiées par Henri Gilbert et Anne Tardy-
Corfdir dans le cadre d'une attaque sur FEAL.
La cryptanalyse linéaire estplus efficace que la cryptanalyse différentielle, mais moins pratique pour la
simple et bonne raison que l'on part du principe que l'attaquant ne dispose pas de la boîte noire
symbolisantl'algorithme de chiffrement, etqu'il ne peut pas soumettre ses propres textes. Dans le cas
de DES, cette attaque nécessitaità l'origine 247couples (tous chiffrés avec la même clé) que l'attaquant
a pu récupérer par un moyen ou un autre. Par la suite, Matsui améliore son algorithme en 1994 et
propose une solution avec 243 couples. La complexité avec une bonne implémentation est toutefois
inférieure et de l'ordre de 239 opérations DES.
La cryptanalyse linéaire consiste à faire une approximation linéaire de l'algorithme de chiffrement en le
simplifiant. En augmentant le nombre de couples disponibles, on améliore la précision de
l'approximation et on peut en extraire la clé. Tous les nouveaux algorithmes de chiffrement doivent
veiller à être résistants à ce type d'attaque. DES n'était pas conçu pour empêcher ce genre de méthode,
les tables de substitution (S-Boxes) présentent en effet certaines propriétés linéaires, alors qu'elles
étaient justement prévues pour ajouter une non-linéarité à DES.
24
Elle a par la suite été appliquée avec succès sur plusieurs algorithmes comme LOKI, FEAL ou une
version simplifiée de Serpent. Les algorithmes plus récents comme AES (Rijndael), IDEA, et bien
d'autres encore, sont insensibles à une attaque linéaire. La complexité de l'attaque est largement est
supérieure à celle d'une recherche exhaustive.
D. Cryptanalyse χ²
Méthode de cryptanalyse statistique inventée par Serge Vaudenay et basée sur le test du χ². Elle est
plus efficace que la cryptanalyse différentielle pour le même nombre de paires de messages en clair et
chiffré. Elle permet de s'affranchir de certaines contraintes présentes dans la cryptanalyse linéaire et
différentielle. Grâce à cette analyse statistique, l'algorithme de chiffrement peut être réellement
considéré comme une boîte noire par le cryptanalyste.
25
H. Certificat électronique ou certificat de clé publique
Un certificat électronique (aussi appelé certificat numérique) peut être vu comme une carte d'identité numérique. Il
est utilisé principalement pour identifier et authentifier une personne physique ou morale, mais aussi pour chiffrer des
échanges. Il estsigné par un tiers de confiance qui atteste du lien entre l'identité physique et l'entité numérique
(Virtuel). Le standard le plus utilisé pour la création des certificats numériques est le X.509.
1. Familles
Usuellement, on distingue deux familles de certificats numériques :
 les certificats de signature, utilisés pour signer des documents ou s'authentifier sur un site web, et
 les certificats de chiffrement (les gens qui vous envoient des courriels utilisent la partie publique de votre certificat
pour chiffrer le contenu que vous serez seul à pouvoir déchiffrer)
Mais cette typologie n'est pas exhaustive ; un découpage plus orienté applicatif pourrait être envisagé. L'intérêt de la
séparation des usages découle notamment des problématiques de séquestre de clés et de recouvrement. En effet,
lorsqu'il y a chiffrement, il peut y avoir nécessité de recouvrer les informations chiffrées. Alors que lorsqu'il y a
signature, il est indispensable de s'assurer que la clé privée n'est possédée que par une seule partie.
2. Nature et composition
Un certificat électronique est une donnée publique. Suivant la technique des clés asymétriques, à
chaque certificat électronique correspond une clé privée, qui doit être soigneusement protégée.
Un certificat numérique porte les caractéristiques de son titulaire : si le porteur est un être humain, cela
peutêtre son nom et son prénom, le nom de sa structure (par exemple, son entreprise ou son... État !)
et de son entité d'appartenance. Si c'est un équipement informatique (comme une passerelle d'accès
ou un serveur d'application sécurisé), le nom est remplacé par l'URI du service. À ces informations
d'identification s'ajoute la partie publique de la bi-clé.
L'ensemble de ces informations (comprenant la clé publique) est signé par l'autorité de certification de
l'organisation émettrice. Cette autorité a la charge de :
 s'assurer que les informations portées par le certificat numérique sont correctes ;
 s'assurer qu'il n'existe, pour une personne etpour une même fonction, qu'un etun seul certificat
valide à un moment donné.
Le certificat numérique est donc, à l'échelle d'une organisation, un outil pour témoigner, de façon
électroniquement sûre, d'une identité.
L'usage conjointdes clés cryptographiques publiques (contenue dans le certificat) et privée (protégée
par l'utilisateur, par exemple au sein d'une carte à puce), permet de disposer de fonctions de sécurité
importante (cf. infra).
3. Une clé privée inviolable ?
Un chiffrement symétrique au moyen d'une clé de 128 bits propose 2128 ( ~ 3,4 1038 ) façons de chiffrer
un message. Un pirate qui essaieraitde déchiffrer le message par la force brute devraitles essayer une
par une.
Pour les systèmes à clé publique, il en va autrement. Tout d'abord les clés sont plus longues (par
exemple 1 024 bits minimum pour RSA) ; en effet, elles possèdent une structure mathématique très
particulière (on ne peutpas choisir une suite de bits aléatoire comme clé secrète, par exemple dans le
cas du RSA, seuls les nombres premiers sont utilisés). Certains algorithmes exploitant cette structure
sont plus efficaces qu'une recherche exhaustive sur, par exemple, 1 024 bits. Ainsi, dans le cas de
RSA, le crible général des corps de nombres est une méthode plus efficace que la recherche
exhaustive pour la factorisation.
Il faut noter le développementactuel de la cryptographie utilisantles courbes elliptiques, qui permettent
(au prix d'une théorie et d'implémentations plus complexes) l'utilisation de clés nettement plus petites
que celles des algorithmes classiques (une taille de 160 bits étant considérée comme très sûre
actuellement), pour un niveau de sécurité équivalent.
26
Le journal The Guardian (6 septembre 2013) affirmait que la NSA était capable de déchiffrer la plupart
des données chiffrées circulantsur Internet. De nombreuses sources ontcependantindiqué que la NSA
n'avait pas mathématiquement cassé les chiffrements mais s'appuierait sur des faiblesses
d'implémentation des protocoles de sécurité.
Rappelssurlechiffrement
Le principe de fonctionnement des certificats électroniques est basé sur le chiffrement d'informations et sur la
confiance. Pour cela, il existe deux méthodes de chiffrement :
Cléssymétriques
Cette méthode est la plus simple à comprendre : si Anne (A) veut envoyer un message chiffré à Bob (B) elle doit lui
communiquer un mot de passe (Clé). Comme l'algorithme de chiffrement est symétrique, on a la relation suivante :
TexteChiffré = Chiffrement (clé, texte)
Ainsi, Anne peut aussi déchiffrer un message en provenance de Bob avec la même clé. Mais il faut au préalable
trouver un moyen sûr de transmettre la clé à l'abri des regards. La situation peut cependant devenir complexe, si Anne
doit envoyer un message chiffré à Bob et à Charlie mais qu'elle ne souhaite pas donner la même clé à Charlie. Plus le
nombre de personnes est grand, plus il est difficile de gérer les clés symétriques. D'autant qu'il faut au préalable
trouver un moyen sûr de transmettre la clé à l'abri des regards.
Clésasymétriques
La propriété des algorithmes asymétriques est qu'un message chiffré par une clé publique n'est lisible que par le
propriétaire de la clé privée correspondante. À l'inverse, un message chiffré par la clé privée sera lisible par tous
ceux qui possèdent la clé publique.
Ainsi avec sa clé privée, Anne :
 signe ses messages
 lit (déchiffre) les messages qui lui sont adressés.
La problématique des clés publiques
En se référant au précédent paragraphe nous voyons rapidement que, lorsqu'une entité (entreprise, association,
individu, service public...) veut sécuriser ses communications (entrantes et sortantes) auprès d'un large public, le
chiffrement le plus simple est l'asymétrique à clé publique : l'entité n'a qu'à diffuser sa clé publique à l'ensemble de son
audience.
27
Le problème vient de la transmission de la clé publique. Si celle-ci n'est pas sécurisée, un attaquant
peutse positionner entre l'entité et son public en diffusant de fausses clés publiques (par le b iais d'un
faux site web par exemple) puis intercepter toutes les communications,lui permettantd'usurper l'identité
du diffuseur de clés publique et de créer une attaque de l'homme du milieu.
Dans un cadre fermé et relativement restreint (entreprise, service public…) la diffusion de clés
sécurisées est relativement simple et peut prendre de nombreuses formes, mais quand le diffuseur
souhaite s'adresser à un public plus large avec lequel il n'a pas eu de contact préalable (grand public,
public international) elle nécessite un cadre normalisé. Les certificats résolvent le problème du canal
sécurisé grâce à la signature de tiers de confiance.
Présentation du principe
Définition
Un certificat électronique est un ensemble de données contenant :
 au moins une clé publique ;
 des informations d'identification, par exemple : noms, localisation, E-mails ;
 au moins une signature ; de fait quand il n'y en a qu'une, l'entité signataire est la seule autorité permettant de
prêter confiance (ou non) à l'exactitude des informations du certificat.
Les certificats électroniques et leurs cycles de vie (cf. Certificate Revocation List, Protocole de vérification en ligne de
certificat) peuvent être gérés au sein d'infrastructures à clés publiques.
Certificat utilisateur de contenu
Différents types
Les certificats électroniques respectent des standards spécifiant leur contenu de façon rigoureuse. Les
deux formats les plus utilisés aujourd'hui sont :
 X.509 dont plusieurs RFC définissent les propriétés et usages
 OpenPGP, défini dans la RFC 48802.
La différence notable entre ces deux formats est qu'un certificat X509 ne peut contenir qu'un seul identifiant, que cet
identifiant doit contenir de nombreux champs prédéfinis, et ne peut être signé que par une seule autorité de
certification. Un certificat OpenPGP peut contenir plusieurs identifiants, lesquels autorisent une certaine souplesse sur
leur contenu, et peuvent être signés par une multitude d'autres certificats OpenPGP. Ce qui permet alors de construire
des toiles de confiance.
Utilité
Les certificats électroniques sont utilisés dans différentes applications informatiques dans le cadre de la sécurité des
systèmes d'information pour garantir :
 la non-répudiation et l'intégrité des données avec la signature numérique. ;
 la confidentialité des données grâce au chiffrement des données ;
 l'authentification ou l'authentification forte d'un individu ou d'une identité non-physique.

Exemple d'utilisation
 Serveur Web, cf. TLS, X.509.
 E-mail, cf. OpenPGP.
 Poste de travail, cf. 802.1x.
 VPN, cf. IPSEC.
 SSH, TLS.
 Code Mobile
 documents électroniques.
28
Les autorités de certification
Les autorités de certification sont des organismes enregistrés et certifiés auprès d'autorités publiques
ou de gouvernance de l'internet qui établissent leur viabilité comme intermédiaire fiable. Ces
organismes diffusentleurs propres clés publiques. Étant certifiées fiables ces autorités sont en contact
direct avec les principaux producteurs de système d'exploitation et de navigateurs internet (tels
que Mozilla Firefox, Internet Explorer, Google Chrome...) qui incluent nativement les listes de clés des
autorités de certification3. C'estcette relation qui està la base de la chaine de confiance. Ces clés sont
appelées clés publiques racines ou clé root, elles sont utilisées pour identifier les clés publiques
d'autres organismes.
Serveur de clés
Les certificats peuvent être stockés par desserveurs de clés, qui peuvent aussi faire office d'autorité d'enregistrement
et de certification (repère A).
Ils recensent et contrôlent les certificats. Ils possèdent souvent une liste (repère B) des certificats révoqués.
L'interopérabilité
Dans certains cas, le certificat peut être associé à l'élément« identifiant» des registres de métadonnées (10e élément
dans le Dublin Core) pour l'interopérabilité 4.
Certificats et navigation Internet
Les certificats sont très largement utilisés sur les sites de e-commerce, webmails ou autres sites sensibles (banques,
impôts, etc.) Plusieurs niveaux de chiffrement existent et plusieurs fonctionnalités associées rendent la compréhension
des certificats complexe.
Certificats X.509 standards
Ce sont les certificats classiques, qui existent depuis plusieurs années. Le chiffrement varie entre 40 bits et 256 bits.
Cela est dû en partie à la capacité des navigateurs et à la législation en vigueur. Généralement, les sociétés éditrices
de certificats proposent 40 bits ou 128 bits garantis.
Certificats X.509 étendus
Ce sont les certificats qui sont pris en charge dans les navigateurs récents et qui permettent l'affichage d'un fond vert
(indiquant ainsi un site de confiance garantie). L'abréviation EV signifie Extended Validation .
Certificats X.509 omnidomaines[
Un certificat omnidomaine ou "wildcard" permet de rendre générique une partie du nom de domaine certifié :
*.societe.fr → www.societe.fr, toto.societe.fr, titi.societe.fr (mais ni "societe.fr", ni "www.toto.societe.fr".
Cf RFC 28185)
Certificats X.509 multisites
Ces certificats contiennent une liste de noms. Cette solution se base sur le champ subjectAltName.
Dans le cas des serveurs web, ces certificats sontutiles pour fournir plusieurs sites HTTPS sur une
seule adresse IP. En effet, en HTTPS, l'échange du certificat se fait avant que le navigateur client
n'ait transmis le nom de domaine qui l'intéresse.Or, si le certificatfourni par le serveur ne contenait
pas le nom requis par le client, celui-ci déclencherait une alerte de sécurité.
29
Certificats OpenPGP
Alors que les premiers sites web "sécurisés" ne pouvaient utiliser que des certificats X.509, l'exploitation de
la RFC 60916 permet désormais d'utiliser des certificats OpenPGP afin de faire du HTTPS.
Certificats et courriels
L'utilisation des certificats pour chiffrer, ou signer des courriels se fait en utilisant le standard S/MIME qui permet
l'encapsulation des données cryptographiques dans le format MIME des courriels.
Lorsqu'un utilisateur est certifié, une icône permet généralement de le savoir :
Leur utilisation est controversée, car la signature est ajoutée comme élément supplémentaire au
contenu du courriel. Par conséquent, l'utilisation de certificats sur des listes de diffusions peut résulter
en l'invalidation de la signature, du fait des modifications effectuées par le moteur traitant la liste.
De plus, de nombreuses messageries en ligne (ou « webmails ») et clients de messagerie ne gèrent
pas le format S/MIME, ce qui perturbe parfois les utilisateurs voyant une pièce jointe « smime.p7m »
apparaître dans leurs messages.
Dans le cadre des messageries en ligne, une problématique supplémentaire est en cause, celle de la
confiance dans l'opérateur. En effet, utiliser son certificat sur un webmail implique obligatoirement que
le fournisseur de ce service partage les éléments secrets du certificat(clé privée etmotde passe), sans
quoi il ne peutréaliser la signature, ou le chiffrement. Et cela implique qu'il doive aussi fournir un moteur
de cryptographie.
Fonctionnement type pour un certificat X.509
Créationd'uncertificat
Lorsqu'un diffuseur d'information veut diffuser une clé publique, il contacte une autorité de certification. Celle-ci va
recevoir la clé publique et l'identité du diffuseur. Après avoir vérifié l'identité du demandeur par des moyens
conventionnels, l'autorité de certification place l'identité et la clé publique fournie dans un conteneur qu'elle signe
en utilisant sa clé privée. Le fichier résultant est le certificat. Il est rendu au diffuseur.
Utilisationducertificat
Le diffuseur utilise le certificat pour ses communications (par exemple sur son site internet): un
utilisateur reçoitle certificat, il le vérifie avec la clé racine publique de l'organisme de certification
incluse dans son navigateur. Le déchiffrement authentifie le contenu du certificat et prouve que la
clé publique et l’identité contenus dans le certificat sont certifiés liés par l'autorité de certification.
L'utilisateur sait donc qu'il pourra récupérer les informations envoyées en utilisantla clé publique et
qu'elles ne seront pas interceptées par un tiers.
Chaînedeconfiance
En pratique, la certification peut s'effectuer en cascade : un certificat peut permettre d'authentifier d'autres
certificats jusqu'au certificat qui sera utilisé pour la communication.
Vulnérabilités
Le système de certificats ne présente pas de vulnérabilité technique théorique sous réserve que
toutes ses étapes soient correctement implémentées.
Le principal risque peutprovenir de la compromission des gestionnaires du système (autorités de
certification et gestionnaire de clés).
30
 Le contrôle des demandeurs de certification peut être insuffisant ou compromis, permettant à
des attaquants de faire certifier des clés publiques frauduleuses.
 Des clés privées peuvent être volées chez le diffuseur final ou chez les autorités de
certification.
Les attaques des diffuseurs ou autorités de certification peuvent être électroniques ou
conventionnelles (intrusion physique, corruption...).
Des experts de la sécurité informatique ontmis en garde contre l'insuffisance de la sécurité et des
contrôles de nombreuses autorités de certifications7. Le virus Stuxnet utilisé contre le programme
nucléaire iranien exploitait plusieurs certificats volés.
31
I. Infrastructure à clés publiques (PKI)
Une infrastructure à clés publiques (ICP) ou IGC4 ou encore PKI5, est un ensemble de composants physiques (des
ordinateurs, des équipements cryptographiques logiciels ou matériel type HSM ou encore des cartes à puces), de
procédures humaines (vérifications, validation) et de logiciels (système et application) en vue de gérer le cycle de vie
des certificats numériques ou certificats électroniques. Une PKI fournit des garanties permettant de faire a
priori confiance à un certificat signé par une autorité de certification grâce à un ensemble de services.
Ces services sont les suivants :
 enregistrement des utilisateurs (ou équipement informatique) ;
 génération de certificats ;
 renouvellement de certificats ;
 révocation de certificats ;
 publication de certificats ;
 publication des listes de révocation (comprenant la liste des certificats révoqués) ;
 identification et authentification des utilisateurs (administrateurs ou utilisateurs qui accèdent à l'ICP) ;
 archivage, séquestre et recouvrement des certificats (option).
1. Rôled'uneinfrastructureàcléspubliques
Une ICP délivre des certificats numériques. Ces certificats permettent d'effectuer des opérations
cryptographiques, comme le chiffrement et la signature numérique qui offrent les garanties suivantes
lors des transactions électroniques :
 confidentialité : elle garantit que seul le destinataire (ou le possesseur) légitime d'un bloc de
données ou d'un message peut en avoir une vision intelligible ;
 authentification : elle garantit à tout destinataire d'un bloc de données ou d'un message ou à tout
système auquel tente de se connecter un utilisateur l'identité de l'expéditeur ou de l'utilisateur en
question ;
 intégrité : elle garantit qu'un bloc de données ou qu'un message n'a pas été altéré,
accidentellement ou intentionnellement ;
 non-répudiation : elle garantit à quiconque que l'auteur d'un bloc de données ou d'un message ne
peut renier son œuvre, c'est-à-dire prétendre ne pas en être l'auteur.
Les ICP permettent l'obtention de ces garanties par l'application de processus de vérification d'identité
rigoureux et par la mise en œuvre de solutions cryptographiques fiables (éventuellement évaluées),
conditions indispensables à la production et à la gestion des certificats électroniques.
2. Composantsdel'infrastructureàcléspubliques
L'IETF distingue 4 catégories d'ICP :
 l'autorité de certification (AC ou CA) qui signe les demandes de certificat (CSR : Certificate Signing
Request) et les listes de révocation (CRL : Certificate Revocation List). Cette autorité est la plus
critique ;
 l'autorité d'enregistrement (AE ou RA) qui crée les certificats, et effectue les vérifications d'usage
sur l'identité de l'utilisateur final (les certificats numériques sont nominatifs et uniques pour
l'ensemble de l'ICP) ;
 l'autorité de dépôt (Repository) qui stocke les certificats numériques ainsi que les listes de
révocation (CRL) ;
 l'entité finale (EE : End Entity) qui utilise le certificat (en général, le terme « entité d’extrémité » (EE)
est préféré au terme « sujet » afin d’éviter la confusion avec le champ Subject).
En complément, on pourra ajouter une cinquième catégorie, non définie par l'IETF :
 l'autorité de séquestre (Key Escrow) qui stocke de façon sécurisée les clés de chiffrement créées
par les autorités d'enregistrement, pour pouvoir, le cas échéant, les restaurer. Les raisons à cela en
sont multiples. La perte de la clef privée par son détenteur ne doit pas être définitive. Enfin, dans
4 Infrastructure de gestionde clés
5
Public Key Infrastructure
32
certains pays, en France en particulier, la loi exige que les données chiffrées puissent
être déchiffrées à la demande des autorités nationales. La mise en œuvre d'un séquestre répond à
cette exigence.
33
J. La cryptographie asymétrique,
C’est une méthode de chiffrement qui s'oppose à la cryptographie symétrique. Elle repose sur
l'utilisation d'une clé publique (qui estdiffusée) etd'une clé privée (gardée secrète), l'une permettant de
coder le message etl'autre de le décoder. Ainsi, l'expéditeur peututiliser la clé publique du destinataire
pour coder un message que seul le destinataire (en possession de la clé privée) peut décoder,
garantissant la confidentialité du contenu. Inversement, l'expéditeur peut utiliser sa propre clé privée
pour coder un message que le destinataire peut décoder avec la clé publique ; c'est le mécanisme
utilisé par la signature numérique pour authentifier l'auteur d'un message.
La cryptographie asymétrique, ou cryptographie à clé publique est fondée sur l'existence des
fonctions à sens unique et à brèche secrète.
Les fonctions à sens unique sont des fonctions mathématiques telles qu'une fois appliquées à un
message, il est extrêmement difficile de retrouver le message original.
L'existence d'une brèche secrète permetcependantà la personne qui a conçu la fonction à sens unique
de décoder facilementle message grâce à un élémentd'information qu'elle possède, appelé clé privée.
Supposons qu'Alice souhaite recevoir un message secretde Bob sur un canal susceptible d'être écouté
par un attaquant passif Eve.
 Alice transmet à Bob une fonction à sens unique pour laquelle elle seule connaitla brèche secrète;
 Bob utilise la fonction transmise par Alice pour chiffrer son message secret;
 Alice réceptionne le message chiffré puis le décode grâce à la brèche secrète;
 Si Eve réceptionne également le message alors qu'il circule sur le canal public, elle ne peut le
décoder, même si elle a égalementintercepté l'envoi de la fonction à sens unique, car elle n'a pas
connaissance de la brèche secrète.
La terminologie classiquement retenue est :
 pour la fonction à sens unique : « clé publique »;
 pour la brèche secrète : « clé privée ».
En pratique, sontutilisées des fonctions de chiffrement classiques, les termes « clé publique » et « clé
privée » correspondant alors à des paramètres employés pour ces fonctions.
1. Fonctionnement pratique
Alice souhaite pouvoir recevoir des messages chiffrés de n'importe qui.
Diffusion des clés publiques
Elle génère alors une valeur à partir d'une fonction à sens unique et à brèche secrète à l'aide d'un algorithme de
chiffrement asymétrique (liste ici), par exemple RSA10.
Alice diffuse à tout le monde la fonction pour coder les messages (notée clé publique) mais garde secrète la fonction
de décodage (notée clé privée).
1re étape : Alice génère deux clés. La clé publique (verte) qu'elle envoie à Bob et la clé privée (rouge) qu'elle conserve
précieusement sans la divulguer à quiconque.
34
2e et 3e étapes : Bob chiffre le message avec la clé publique d'Alice et envoie le texte chiffré. Alice déchiffre le message grâce à sa
clé privée.
2. Chiffrement
L'un des rôles de la clé publique est de permettre le chiffrement; c'est donc cette clé qu'utilisera Bob pour envoyer des
messages chiffrés à Alice. L'autre clé — l'information secrète — sert à déchiffrer. Ainsi, Alice, et elle seule, peut
prendre connaissance des messages de Bob. La connaissance d'une clé ne permet pas de déduire l'autre.
Authentification de l'origine
D'autre part, l'utilisation par Alice de sa clé privée sur le condensatd'un message, permettra à Bob de vérifier que le
message provient bien d'Alice : il appliquera la clé publique d'Alice au condensat fourni (condensat chiffré avec la clé
privée d'Alice) et retrouve donc le condensat original du message. Il lui suffira de comparer le condensat ainsi obtenu
et le condensat réel du message pour savoir si Alice est bien l'expéditeur. C'est donc ainsi que Bob sera rassuré sur
l'origine du message reçu : il appartient bien à Alice. C'est sur ce mécanisme notamment que fonctionne la signature
numérique.
3. Analyse fonctionnelle
Analogies
Le coffre-fort
Le chiffrement: Alice a choisi un coffre-fort. Elle l'envoie ouvert à Bob, et en garde la clé. Lorsque Bob veut écrire à
Alice, il y dépose son message, ferme le coffre, il n'a pas besoin de la clé pour cela, et le renvoie à Alice. À sa
réception, seule Alice peut ouvrir le coffre, puisqu'elle seule en possède la clé, à supposer le coffre inviolable, et que
personne ne puisse refaire la clé.
L'authentification ou la signature : Alice place un message dans le coffre-fort qu'elle ferme avec sa clé privée avant de
l'envoyer à Bob. Si Bob parvient, à l'aide de la clé publique d'Alice (dont il dispose), à lire la lettre c'est que c'est bien
celui d'Alice et donc que c'est bien elle qui y a placé le message.
4. La boîte à deux serrures
Une autre analogie envisageable serait d'imaginer une boîte avec deux serrures différentes. Lorsque
l'on ferme la boîte d'un côté, seule la clé correspondantà l'autre serrure permetl'ouverture de la boîte et
vice-versa. Une des clés est privée et conservée secrète, l'autre est dite publique et un exemplaire
peut-être obtenu par quiconque souhaite utiliser la boîte.
Pour chiffrer un message Bob prend la boîte, y place son message, et la ferme à l'aide de la clé
publique. Seul le détenteur de la clé privée permettantd'accéder à l'autre serrure, Alice en l'occurrence,
sera en mesure de rouvrir la boîte. Pour signer un message, Alice le place dans la boîte et ferme celle-
ci à l'aide de sa clé privée. Ainsi n'importe qui ayantrécupéré la clé publique pourra ouvrir la boîte. Mais
comme la boîte a été fermée par la clé privée, cette personne sera assurée que c'est bien Alice, seule
détentrice de cette clé, qui aura placé le message dans la boîte et fermé ladite boîte.
5. Inconvénients/limites
En contrepartie de leurs propriétés spécifiques, les chiffrements asymétriques sont globalement moins performants
que leurs équivalents symétriques : les temps de traitement sont plus longs et, pour un niveau de sécurité équivalent,
les clés doivent être beaucoup plus longues.
Si le chiffrement asymétrique permet de se prémunir des écoutes passives (eavesdrop), la transmission initiale de la
clé publique sur un canal non sécurisé expose à des attaques de l'homme du milieu. Pour se prémunir contre ce risque
on fait généralement appel à une infrastructure à clés publiques.
6. Articulation avec le chiffrement symétrique
La cryptographie asymétrique répond à un besoin majeur de la cryptographie symétrique : le
partage sécurisé d'une clé entre deux correspondants, afin de prévenir l'interception de cette clé par
une personne tierce non autorisée, et donc la lecture des données chiffrées sans autorisation.
Les mécanismes de chiffrement symétrique étant moins coûteux en temps de calcul, ceux-ci sont
préférés aux mécanismes de chiffrementasymétrique. Cependanttoute utilisation de clé de chiffrement
symétrique nécessite que les deux correspondants se partagent cette clé, c'est-à-dire la connaissent
avant l'échange. Ceci peut être un problème si la communication de cette clé s'effectue par
35
l'intermédiaire d'un medium non sécurisé, « en clair ». Afin de pallier cet inconvénient, on utilise un
mécanisme de chiffrement asymétrique pour la seule phase d'échange de la clé symétrique, et l'on
utilise cette dernière pour tout le reste de l'échange.
7. Mécanismes d'authentification
Un inconvénient majeur de l'utilisation des mécanismes de chiffrement asymétriques est le fait que la
clé publique estdistribuée à toutes les personnes : Bob, Carole, … souhaitant échanger des données
de façon confidentielle. De ce fait, lorsque la personne possédant la clé privée, Alice, déchiffre les
données chiffrées, elle n'a aucun moyen de vérifier avec certitude la provenance de ces données (Bob,
ou Carole …) : on parle de problèmes d'authentification. Afin de résoudre ce problème, on utilise
des mécanismes d'authentification permettant de garantir la provenance des informations chiffrées. Ces
mécanismes sont eux aussi fondés sur le chiffrement asymétrique.
Principe d'authentification par chiffrement asymétrique:
Objectif : Bob souhaite envoyer des données chiffrées à Alice en lui garantissant qu'il en est
l'expéditeur.
1. Bob crée une paire de clés asymétriques: il conserve la clé privée et diffuse librement la clé
publique (notamment à Alice)
2. Alice crée une paire de clés asymétriques : clé privée (qu'elle conserve), clé publique (qu'elle
diffuse librement, notamment à Bob)
3. Bob effectue un condensat de son message « en clair » puis chiffre ce condensat avecsa
propre clé privée
4. Bob chiffre son message avec la clé publique d'Alice.
5. Bob envoie le message chiffré accompagné du condensat chiffré.
6. Alice reçoit le message chiffré de Bob, accompagné du condensat.
7. Alice déchiffre le message avec sa propre clé privée. À ce stade le message estlisible mais elle
ne peut pas être sûre que Bob en soit l'expéditeur.
8. Alice déchiffre le condensat avec la clé publique de Bob. Alice utilise la même fonction de
hachage sur le texte en clair et compare avec le condensat déchiffré de Bob. Si les deux
condensats correspondent, alors Alice peutavoir la certitude que Bob estl'expéditeur. Dans le
cas contraire, on peutprésumer qu'une personne malveillante a tenté d'envoyer un message à
Alice en se faisant passer pour Bob !
Cette méthode d'authentification utilise la spécificité des paires de clés asymétriques : si l'on chiffre un
message en utilisant la clé publique, alors on peut déchiffrer le message en utilisant la clé privée ;
l'inverse estaussi possible : si l'on chiffre en utilisant la clé privée alors on peut déchiffrer en utilisant la
clé publique.
E. Chiffrement Diffie-Hellman6
C’est la méthode que deux agents nommés conventionnellement Alice et Bob peuvent utiliser . Ils
se mettre d'accord sur un nombre (qu'ils peuvent utiliser comme clé pour chiffrer la conversation
suivante) sans qu'un troisième agent appelé Ève puisse découvrir le nombre, même en ayant
écouté tous leurs échanges.
Principe
 Alice et Bob ont choisi un groupe fini et un générateur g de ce groupe (ils peuvent aussi,
comme montré sur la figure, ne décider de ce choix qu'au moment de l'échange, et se le
communiquer en clair, ce qui n'améliore pas les chances d'Ève)
 Alice choisit un nombre au hasard a, élève g à la puissance a, et dit à Bob ga(calculé dans le
groupe ; si par exemple ils travaillent dans le corps fini Z/pZ, ils échangeront les nombres
modulo p, comme montré dans l'exemple ci-dessous) ;
 Bob fait de même avec le nombre b ;
 Alice, en élevant le nombre reçu de Bob à la puissance a, obtient gba
6 Des auteurs Whitfield Diffie et Martin Hellman
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie
Cours cryptographie

Contenu connexe

Tendances

La sécurité informatique
La sécurité informatiqueLa sécurité informatique
La sécurité informatiqueSaber Ferjani
 
Technique de Cryptographie AES, DES et RSA
Technique de Cryptographie AES, DES et RSATechnique de Cryptographie AES, DES et RSA
Technique de Cryptographie AES, DES et RSAHouda Elmoutaoukil
 
Sécurité des systèmes d'informations
Sécurité des systèmes d'informations Sécurité des systèmes d'informations
Sécurité des systèmes d'informations Emna Tfifha
 
SSL - Secure Sockets Layer - Présentation
SSL - Secure Sockets Layer  - PrésentationSSL - Secure Sockets Layer  - Présentation
SSL - Secure Sockets Layer - PrésentationIkram Benabdelouahab
 
Sécurité informatique
Sécurité informatiqueSécurité informatique
Sécurité informatiqueoussama Hafid
 
Présentation blockchain v2
Présentation blockchain v2Présentation blockchain v2
Présentation blockchain v2Amine HAMOUDA
 
Sécurité de l'IoT | Internet des objets - Formation d'une journée
Sécurité de l'IoT | Internet des objets - Formation d'une journéeSécurité de l'IoT | Internet des objets - Formation d'une journée
Sécurité de l'IoT | Internet des objets - Formation d'une journéeTactika inc.
 
Securite informatique
Securite informatiqueSecurite informatique
Securite informatiqueSouhaib El
 
Mission d'audit des Systéme d'information
Mission d'audit des Systéme d'informationMission d'audit des Systéme d'information
Mission d'audit des Systéme d'informationAymen Foudhaili
 
Algorithme de chiffrement RC4, A5/1 & A5/2
Algorithme de chiffrement RC4, A5/1 & A5/2Algorithme de chiffrement RC4, A5/1 & A5/2
Algorithme de chiffrement RC4, A5/1 & A5/2Max Benana
 
Référentiels et Normes pour l'Audit de la Sécurité des SI
Référentiels et Normes pour l'Audit de la Sécurité des SIRéférentiels et Normes pour l'Audit de la Sécurité des SI
Référentiels et Normes pour l'Audit de la Sécurité des SIAlghajati
 
Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )
Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )
Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )Saadaoui Marwen
 
IDS,SNORT ET SÉCURITÉ RESEAU
IDS,SNORT ET SÉCURITÉ RESEAUIDS,SNORT ET SÉCURITÉ RESEAU
IDS,SNORT ET SÉCURITÉ RESEAUCHAOUACHI marwen
 
Cybersécurité - Directives Régionales et Lois Nationales
Cybersécurité - Directives Régionales et Lois NationalesCybersécurité - Directives Régionales et Lois Nationales
Cybersécurité - Directives Régionales et Lois Nationalesssuser586df7
 
WIlfried K. AGBO- Exposé sur la Cryptographie
WIlfried K. AGBO- Exposé sur la CryptographieWIlfried K. AGBO- Exposé sur la Cryptographie
WIlfried K. AGBO- Exposé sur la CryptographieWilfreid AGBO
 
Système de détection d'intrusion (Intrusion Detection System)
Système de détection d'intrusion (Intrusion Detection System)Système de détection d'intrusion (Intrusion Detection System)
Système de détection d'intrusion (Intrusion Detection System)YousraChahinez
 

Tendances (20)

La sécurité informatique
La sécurité informatiqueLa sécurité informatique
La sécurité informatique
 
Technique de Cryptographie AES, DES et RSA
Technique de Cryptographie AES, DES et RSATechnique de Cryptographie AES, DES et RSA
Technique de Cryptographie AES, DES et RSA
 
La Sécurité informatiques
La Sécurité informatiquesLa Sécurité informatiques
La Sécurité informatiques
 
Sécurité des systèmes d'informations
Sécurité des systèmes d'informations Sécurité des systèmes d'informations
Sécurité des systèmes d'informations
 
SSL - Secure Sockets Layer - Présentation
SSL - Secure Sockets Layer  - PrésentationSSL - Secure Sockets Layer  - Présentation
SSL - Secure Sockets Layer - Présentation
 
Sécurité informatique
Sécurité informatiqueSécurité informatique
Sécurité informatique
 
Présentation blockchain v2
Présentation blockchain v2Présentation blockchain v2
Présentation blockchain v2
 
La sécurité informatique
La sécurité informatiqueLa sécurité informatique
La sécurité informatique
 
Sécurité de l'IoT | Internet des objets - Formation d'une journée
Sécurité de l'IoT | Internet des objets - Formation d'une journéeSécurité de l'IoT | Internet des objets - Formation d'une journée
Sécurité de l'IoT | Internet des objets - Formation d'une journée
 
Securite informatique
Securite informatiqueSecurite informatique
Securite informatique
 
Mission d'audit des Systéme d'information
Mission d'audit des Systéme d'informationMission d'audit des Systéme d'information
Mission d'audit des Systéme d'information
 
Crypto graphy
Crypto graphyCrypto graphy
Crypto graphy
 
Algorithme de chiffrement RC4, A5/1 & A5/2
Algorithme de chiffrement RC4, A5/1 & A5/2Algorithme de chiffrement RC4, A5/1 & A5/2
Algorithme de chiffrement RC4, A5/1 & A5/2
 
Piratage informatique
Piratage informatiquePiratage informatique
Piratage informatique
 
Référentiels et Normes pour l'Audit de la Sécurité des SI
Référentiels et Normes pour l'Audit de la Sécurité des SIRéférentiels et Normes pour l'Audit de la Sécurité des SI
Référentiels et Normes pour l'Audit de la Sécurité des SI
 
Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )
Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )
Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )
 
IDS,SNORT ET SÉCURITÉ RESEAU
IDS,SNORT ET SÉCURITÉ RESEAUIDS,SNORT ET SÉCURITÉ RESEAU
IDS,SNORT ET SÉCURITÉ RESEAU
 
Cybersécurité - Directives Régionales et Lois Nationales
Cybersécurité - Directives Régionales et Lois NationalesCybersécurité - Directives Régionales et Lois Nationales
Cybersécurité - Directives Régionales et Lois Nationales
 
WIlfried K. AGBO- Exposé sur la Cryptographie
WIlfried K. AGBO- Exposé sur la CryptographieWIlfried K. AGBO- Exposé sur la Cryptographie
WIlfried K. AGBO- Exposé sur la Cryptographie
 
Système de détection d'intrusion (Intrusion Detection System)
Système de détection d'intrusion (Intrusion Detection System)Système de détection d'intrusion (Intrusion Detection System)
Système de détection d'intrusion (Intrusion Detection System)
 

Similaire à Cours cryptographie

Etude et implémentation de quelque algorithme de chiffrement et de signature
Etude et implémentation de quelque algorithme de chiffrement et de signatureEtude et implémentation de quelque algorithme de chiffrement et de signature
Etude et implémentation de quelque algorithme de chiffrement et de signatureYassine Nasser
 
Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)
Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)
Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)Noël Bardelot
 
CryptoChapitre1-2-3.ppt
CryptoChapitre1-2-3.pptCryptoChapitre1-2-3.ppt
CryptoChapitre1-2-3.pptSaraNamane
 
Hacking securite handbook
Hacking securite handbookHacking securite handbook
Hacking securite handbookDICKO Yacouba
 
Internet : Comprendre les opportunités et les dangers des réseaux cachés
Internet : Comprendre les opportunités et les dangers des réseaux cachésInternet : Comprendre les opportunités et les dangers des réseaux cachés
Internet : Comprendre les opportunités et les dangers des réseaux cachésMaxime ALAY-EDDINE
 
Etude et implémentation de quelle que
Etude et implémentation de quelle que Etude et implémentation de quelle que
Etude et implémentation de quelle que Yassine Nasser
 
Hack apprendre-le-hacking-2020-hackers 3
Hack apprendre-le-hacking-2020-hackers 3Hack apprendre-le-hacking-2020-hackers 3
Hack apprendre-le-hacking-2020-hackers 3DICKO Yacouba
 
Web3 Culture
Web3 CultureWeb3 Culture
Web3 Cultureheaven
 
COURS : Introduction aux codes et chiffrements
COURS : Introduction aux codes et chiffrementsCOURS : Introduction aux codes et chiffrements
COURS : Introduction aux codes et chiffrementsMarylinePerenet2
 
Ebook fr 2020 hackers - 214 pages pour apprendre le hacking en francais - c...
Ebook fr   2020 hackers - 214 pages pour apprendre le hacking en francais - c...Ebook fr   2020 hackers - 214 pages pour apprendre le hacking en francais - c...
Ebook fr 2020 hackers - 214 pages pour apprendre le hacking en francais - c...usthbsido
 
Mathématiques et codes secrets - Des mathématiques pour protéger les communic...
Mathématiques et codes secrets - Des mathématiques pour protéger les communic...Mathématiques et codes secrets - Des mathématiques pour protéger les communic...
Mathématiques et codes secrets - Des mathématiques pour protéger les communic...Dany-Jack Mercier
 
La blockchain, quand l'individu sert au collectif... malgré lui
La blockchain, quand l'individu sert au collectif... malgré luiLa blockchain, quand l'individu sert au collectif... malgré lui
La blockchain, quand l'individu sert au collectif... malgré luiFrancois Zaninotto
 
Le projet LectAuRep - Lecture automatique de répertoires - La reconnaissance ...
Le projet LectAuRep - Lecture automatique de répertoires - La reconnaissance ...Le projet LectAuRep - Lecture automatique de répertoires - La reconnaissance ...
Le projet LectAuRep - Lecture automatique de répertoires - La reconnaissance ...Aurélia Rostaing
 
Crypto camer
Crypto camerCrypto camer
Crypto camerdilan23
 

Similaire à Cours cryptographie (20)

Etude et implémentation de quelque algorithme de chiffrement et de signature
Etude et implémentation de quelque algorithme de chiffrement et de signatureEtude et implémentation de quelque algorithme de chiffrement et de signature
Etude et implémentation de quelque algorithme de chiffrement et de signature
 
Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)
Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)
Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)
 
Quelques
QuelquesQuelques
Quelques
 
CryptoChapitre1-2-3.ppt
CryptoChapitre1-2-3.pptCryptoChapitre1-2-3.ppt
CryptoChapitre1-2-3.ppt
 
Hacking securite handbook
Hacking securite handbookHacking securite handbook
Hacking securite handbook
 
Le Web3 pour les nuls !
Le Web3 pour les nuls !Le Web3 pour les nuls !
Le Web3 pour les nuls !
 
Internet : Comprendre les opportunités et les dangers des réseaux cachés
Internet : Comprendre les opportunités et les dangers des réseaux cachésInternet : Comprendre les opportunités et les dangers des réseaux cachés
Internet : Comprendre les opportunités et les dangers des réseaux cachés
 
Etude et implémentation de quelle que
Etude et implémentation de quelle que Etude et implémentation de quelle que
Etude et implémentation de quelle que
 
Hack apprendre-le-hacking-2020-hackers 3
Hack apprendre-le-hacking-2020-hackers 3Hack apprendre-le-hacking-2020-hackers 3
Hack apprendre-le-hacking-2020-hackers 3
 
Musee
MuseeMusee
Musee
 
Web3 Culture
Web3 CultureWeb3 Culture
Web3 Culture
 
COURS : Introduction aux codes et chiffrements
COURS : Introduction aux codes et chiffrementsCOURS : Introduction aux codes et chiffrements
COURS : Introduction aux codes et chiffrements
 
crypto1.pdf
crypto1.pdfcrypto1.pdf
crypto1.pdf
 
Ebook fr 2020 hackers - 214 pages pour apprendre le hacking en francais - c...
Ebook fr   2020 hackers - 214 pages pour apprendre le hacking en francais - c...Ebook fr   2020 hackers - 214 pages pour apprendre le hacking en francais - c...
Ebook fr 2020 hackers - 214 pages pour apprendre le hacking en francais - c...
 
Mathématiques et codes secrets - Des mathématiques pour protéger les communic...
Mathématiques et codes secrets - Des mathématiques pour protéger les communic...Mathématiques et codes secrets - Des mathématiques pour protéger les communic...
Mathématiques et codes secrets - Des mathématiques pour protéger les communic...
 
La blockchain, quand l'individu sert au collectif... malgré lui
La blockchain, quand l'individu sert au collectif... malgré luiLa blockchain, quand l'individu sert au collectif... malgré lui
La blockchain, quand l'individu sert au collectif... malgré lui
 
Le projet LectAuRep - Lecture automatique de répertoires - La reconnaissance ...
Le projet LectAuRep - Lecture automatique de répertoires - La reconnaissance ...Le projet LectAuRep - Lecture automatique de répertoires - La reconnaissance ...
Le projet LectAuRep - Lecture automatique de répertoires - La reconnaissance ...
 
Crypto camer
Crypto camerCrypto camer
Crypto camer
 
Tp rsa1
Tp rsa1Tp rsa1
Tp rsa1
 
RSA
RSARSA
RSA
 

Dernier

Guide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeGuide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeBenamraneMarwa
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.Franck Apolis
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptssusercbaa22
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptxTxaruka
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne FontaineTxaruka
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptxSAID MASHATE
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxssusercbaa22
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertChristianMbip
 
Présentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxPrésentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxpopzair
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...Faga1939
 
Cours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxCours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxlamourfrantz
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptxMalikaIdseaid1
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipM2i Formation
 

Dernier (15)

Guide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeGuide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étude
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.ppt
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptx
 
Pâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie PelletierPâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie Pelletier
 
Evaluación Alumnos de Ecole Victor Hugo
Evaluación Alumnos de Ecole  Victor HugoEvaluación Alumnos de Ecole  Victor Hugo
Evaluación Alumnos de Ecole Victor Hugo
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne Fontaine
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expert
 
Présentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxPrésentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptx
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
 
Cours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxCours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptx
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptx
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadership
 

Cours cryptographie

  • 1. CRYPTOGRAPHIE CRYPTOGRAPHY Κρυπτογραφία Criptografía Криптография v3.0.1 AWOUZOUBA Esso-Essinam Gr.nd D3sk H.cK3r Gran Guru Computador Magister Informatica 22890794666 cawouzouba@gmail.com ©~2017 hp
  • 2. 1 Présentation de l’unité d’enseignement, Pré-requis :  Une connaissance de Mathématiques de l’ingénieur serait un atout  Une maitrise de l’anglais serait un atout  Une connaissance des concepts et protocoles du Web Objectifgénéral de l’unité d’enseignement  Comprendre comment la cryptographie intervient dans la communication au quotidien et l’intérêt de cela dans la sécurité des transactions entre tiers (internet télécommunication) Objectifs spécifiques de l’unité d’enseignement  Expliquer comment les chiffres clés symétriques et asymétriques travaillent;  Enumérer et définir les objectifs de cryptographie;  Lister et définir des chiffres classiques les plus courants;  Expliquer le fonctionnement de chiffrement Enigma mécaniques et LORENZ;  Décrire les principes des réseaux substitution-permutation;  Décrire les algorithmes de cryptage des données et la norme de cryptage avancée;  Décrire et utiliser les fonctions md5 et sha-1;  Expliquer l'idée derrière la cryptographie à clé publique;  Expliquer l'échange de clés Diffie-Hellmann;  Utiliser le système de cryptographie RSA en l'appliquant à des problèmes pratiques;  Définir la courbe elliptique et l'utiliser dans la cryptographie;  Décrire la signature la plus commune et les régimes d'identité autokey; et  Décrire le fonctionnement conceptuel de l'infrastructure à clé publique. Schémadu Programme  Unité 1: Introduction à la cryptographie  Unité 2: Cryptographie classique  Unité 3: Cryptographie moderne  Unité 4: Chiffrements par bloc et à flots  Unité 5: Fonctions de hachage  Unité 6: Crypto système RSA et Factorisation des entiers  Unité 7: Cryptographie à courbe elliptique  Unité 8: Signature numérique et authentification Entité  Unité 9: Cryptographie quantique Evaluations  : 40%(Devoirs surveillés) + 60%(Synthèse) et QCM  0.20(DS1) + 0.20(DS2) + 0.60(Synthèse)  Méthodes d’enseignement  Cours magistral 30%+ Travaux Pratiques 50%+ Travaux de Maisons 20%
  • 3. 2 Bibliographie 1. http://www.cryptographyworld.com/ 2. http://www.cryptool- online.org/index.php?option=com_content&view=article&id=68&Itemid=78&lang=en 3. http://www.crypto-textbook.com/ 4. http://www.emsec.rub.de/chair/_staff/christof-paar/ 5. https://en.wikipedia.org/wiki/Cryptography 6. https://fr.wikipedia.org/wiki/St%C3%A9ganographie 7. https://www.aescrypt.com/ 8. https://www.cryptool.org/en/ 9. https://www.iacr.org/ 10. https://www.cryptographersworld.com/a.php?a=255 https://www.cryptographersworld.com/ 11. Adams, Will. 2009. The AlexanderCipher.NewYork, NY: GrandCentralPublishing.320p 12. Alfred J. Menezes Paul C. van OorschotScott A. Vanstone ,HANDBOOK of APPLIED CRYPTOGRAPHY 13. Bud Johnson, Break the Code: Cryptography for Beginners, April 24, 2013 14. Christof Paar andJan Pelzl, UnderstandingCryptography:A Textbookfor Studentsand Practitioners1st ed. 2010 15. DanBoneh &Victor Shoup,A GraduateCourseinAppliedCryptography 16. Dany-Jack Mercier, Mathématiques etcodes secrets Broché – 30 mars 2014 17. David Ignatius, TheQuantumSpy, November2017,ISBN 978-0-393-25415-0 18. GillesBailly-Maître,Arithmétique etcryptologie,,Editeur(s) Ellipses,:25/09/2012 19. Ivan Ristić, Understanding and deploying SSL/TLS and PKI to secure servers and web applications ISBN: 978-1907117046 20. Libertésindividuellesetcodessecrets PierreVigoureux,Editeur(s): Ellipses 22/03/2016 21. Martin Untersinger,Anonymatsur InternetProtégersavie privée Editeur(s), Eyrolles 18/09/2014 22. MaxHernandez- ThievesEmporium(2013) 23. Univers secretdelacryptographie,GillesDubertretEditeur(s),Vuibert 20/11/2015
  • 4. 3 Résultats de l’apprentissage Séances Contenus Méthodes d’enseignement Revue de la littérature Unité 1: Introduction à la cryptographie 4h César ROT13 Carré de Polybe Vigénère EnigmaVernam (OTP) Cours magistral Unité 2: la cryptographie classique 4h Cryptographie Cryptanalyse Stéganographie Social engineering Cours magistral Travaux pratiques /labo Unité 3: Cryptographie moderne 3h Algorithme étendu d’Euclide Euler’s Totient function théorème des restes chinois Fermat’s little theorem Chiffrements (Bloc / A Flot) Elliptique /quantique Cours magistral Laboratoires 3h Unité 4: Chiffrements par bloc età flots 4h Block cipher(available resources) Taille (32- 512bits) PC, LED Stream(scarcity of ressources) smartphone Cours magistral Travaux de maisons Unité 5: Fonctions de hachage Unité 6: Le Crypto système RSA et Factorisation des entiers 6h Diffie HellmanDSA RSA ElGamal ECC Fonction de Hachage Signature numérique MAC CRC PGP OPenPGP /GnuPGP Cours magistral Travaux pratiques /labo Travaux de maisons Unité 7: Cryptographie à courbe elliptique Unité 8: Signature numérique et authentification Entité Unité 9: Cryptographie quantique 6h Infrastructure à clé publique (PKI) Certificats Certificate Authority Clé publique /Clé privée Quantum cryptography Cours magistral Travaux pratiques /labo Travaux de maisons
  • 5. 4 A. REVUE de la LITERATURE «La science restera toujours la satisfaction du plus haut désir de notre nature, la curiosité ; elle fournira à l'homme le seul moyen qu'il ait d'améliorer son sort », Ernest Renan La cryptographie trouve son application dans beaucoup de domaines ;  Téléphonie cellulaire ( smartphone, ipod, ipad, telephone blackerry android))  Ecommerce ( kindle ebook reader, credit cards)  Banque ( ebanking, e-currency bitcoin)  Internet( navigaterurs (RSA), kproxy.com, TOR)  Vie privée (epasseport) passeport biométrique), A travers l’histoire des illustrations y sont faites avec des romans et des codex ; Comme ici The Bible Code is a best-selling book by Michael Drosnin, first published in 1997. A sequel, The Bible Code II, a best-seller was published in 2002. Drosnin describes an alleged "Bible code", in which messages are encoded in the Hebrew bible. The messages are purported to be hidden in the Torah, and can be deciphered by placing the letters of various Torah passages at equal intervals in a text that has been formatted to fit inside a graph. Les clés du fort Boyard un jeu de pistes et d’énigmes qui dure entre 60 minutes et 120 minutes depuis son démarrage dans les années 1990 Michel de Nostredame, dit Nostradamus, né le 14 décembre 1503à Saint-Rémy-de-Provence et mort le2 juillet 1566 à Salon-de-Provence, était un apothicaire1 français. Les centuries Quatrain 997 YHWH HWHY Digital Fortress (publié en 1998 par St. Martin's Press) is a techno-thriller of Dan Brown The book explores the theme of government surveillance of electronically stored information on the private lives of citizens, and the possible civil liberties and ethical implications of using such technology. Il a suscité une grande polémique avec la publication de ses romans Robert Langdon : Anges et Démons(2000)., le Da Vinci Code, Le Symbole perdu et Inferno. The Name of the Rose (Italian: Il nome della rosa is the 1980 debut novel by Italian author Umberto Eco. It is ahistorical murder mystery set in an Italian monastery, in the year 1327, an intellectual mystery combining semiotics in fiction, biblical analysis, medieval studies and literary theory. It was translated into English by William Weaver in 1983. The Godfather is a crime novel written by Mario Puzo, an Italian American Le Club des cinq (titre original : The Famous Five, )est une série de romans policiers pour enfants et jeunes adolescents écrite par Enid Blyton et publiée en Angleterre de 1942 à 1963 Le Clan des sept (The Secret Seven) est une série de quinze romans policiers pour la jeunesse écrits par Enid Blyton, publiée de 1949 à 1963 au Royaume-Uni, et de 1958 à 1974 en France par les éditions Hachette dans la collection Bibliothèque rose. Hackers est un film américain réalisé parIain Softley, sorti en 1995. Connu aussi sous les titres francophones de Hackers : Les Pirates du cyberespace (titre DVD et Universal Media Disc) et Pirates (titre télévisé).
  • 6. 5 NUMB3RS is an American crime drama television series that ran on CBS from January 23, 2005, to March 12, 2010.
  • 7. 6 I. Concepts clés  cryptographie vient des mots en grec ancien kruptos (κρυπτός) « caché » et graphein (γράφειν) « écrire ». étymologiquement « écriture secrète », devenue par extension l'étude de cet art (donc aujourd'hui la science visant à créer des cryptogrammes, c'est-à-dire à chiffrer)  chiffrement : transformation à l'aide d'une clé d'un message en clair (dittexte clair) en un message incompréhensible (dit texte chiffré) pour celui qui ne dispose pas de la clé de déchiffrement (en anglais encryption key ou private key pour la cryptographie asymétrique) ;  chiffre : utilisation de la substitution au niveau des lettres pour coder ;  code : utilisation de la substitution au niveau des mots ou des phrases pour coder ;  coder : action réalisée sur un texte lorsqu'on remplace un mot ou une phrase par un autre mot, un nombre ou un symbole ;  cryptogramme : message chiffré ;  cryptosystème : algorithme de chiffrement (algorithme de chiffrement cleartext cyphertext , encryption, decryption);  décrypter : retrouver le message clair correspondantà un message chiffré sans posséder la clé de déchiffrement (terme que ne possèdent pas les anglophones, qui eux « cassent » des codes secrets);  cryptanalyse : science analysant les cryptogrammes en vue de les décrypter ;  cryptologie : science regroupant la cryptographie et la cryptanalyse.  cryptolecte : jargon réservé à un groupe restreint de personnes désirant dissimuler leur communication.
  • 8. 7 A. La théorie de l'informationde Shannon C’estune théorie probabiliste permettantde quantifier le contenu moyen en information d'un ensemble de messages, dont le codage informatique satisfait une distribution statistique précise. Ce domaine trouve son origine scientifique avec Claude Shannon qui en est le père fondateur avec son article A Mathematical Theory of Communications (1948) En théorie de l’information, Shannon définitdeux notions que tout bon cryptosystème doitposséder : la confusion et la diffusion .Confusion. C’estle fait que la méthode de calcul du message crypté à partir du message clair doitêtre suffisamment complexe. C’est-`a-dire qu’il ne doit pas exister de relation simples entre les bits du message clair et les bits du message crypté. Diffusion. C’est le fait qu’une différence, même minime, entre deux messages clairs doit entraîner une très grande différence entre les messages cryptés. Ainsi, chaque bitdu message clair doitcontribuer au calcul de chaque bit du message crypte. Parmi les branches importantes de la théorie de l'information de Shannon, on peut citer :  le codage de l'information,  la mesure quantitative de redondance d'un texte,  la compression de données,  la cryptographie. B. Le principe de Kerckhoffs Il a été énoncé par Auguste Kerckhoffs à la fin du XIXe siècle dans un article en deux parties "La cryptographie militaire" du Journal des sciences militaires (vol. IX, pp. 5–38, Janvier 1883, pp. 161–191, Février 1883). Ce principe exprime que la sécurité d'un cryptosystème ne doitreposer que sur le secret de la clef. Autrement dit, tous les autres paramètres doivent être supposés publiquement connus. Il a été reformulé, peut-être indépendamment, par Claude Shannon : « l'adversaire connaît le système ». Cette formulation est connue sous le nom de la maxime de Shannon. Il est considéré aujourd'hui comme un principe fondamental par les cryptologues, et s'oppose à la sécurité par l'obscurité. Ce principe apparaît parmi les 6 « desiderata de la cryptographie militaire » énoncés par Kerckhoffs dans son traité, qui sont : i. Le système doit être matériellement, sinon mathématiquement indéchiffrable ; ii. Il faut qu’il n’exige pas le secret, et qu’il puisse sans inconvénient tomber entre les mains de l’ennemi ; iii. La clefdoitpouvoir en être communiquée et retenue sans le secours de notes écrites, et être changée ou modifiée au gré des correspondants ; iv. Il faut qu’il soit applicable à la correspondance télégraphique ; v. Il faut qu’il soit portatif, et que son maniement ou son fonctionnement n’exige pas le concours de plusieurs personnes ; vi. Enfin, il estnécessaire, vu les circonstances qui en commandent l’application, que le système soitd’un usage facile, ne demandantni tension d’esprit, ni la connaissance d’une longue série de règles à observer. C. Une machine de Turing C’est estun modèle abstraitdu fonctionnementdes appareils mécaniques de calcul, tel un ordinateur et sa mémoire. Ce modèle a été imaginé par Alan Turing en 1936, en vue de donner une définition précise au concept d’algorithme ou de « procédure mécanique ». Il est toujours largement utilisé
  • 9. 8 en informatique théorique, en particulier dans les domaines de la complexité algorithmique et de la calculabilité. D. Feistel cipher ou Réseau de Feistel Un réseau de Feistel est une construction utilisée dans les algorithmes de chiffrement par bloc, nommée d'après le cryptologue d'IBM, Horst Feistel. Elle a été utilisée pour la première fois dans Lucifer et DES. Cette structure offre plusieurs avantages, le chiffrement et le déchiffrement ont une architecture similaire voire identique dans certains cas. L'implémentation matérielle est aussi plus facile avec un tel système même si les choses ontpassablementchangé depuis la fin des années 1970. Un réseau de Feistel repose sur des principes simples dont des permutations, des substitutions, des échanges de blocs de données etune fonction prenanten entrée une clé intermédiaire à chaque étage. Il est vraisemblable que Feistel ne soit pas le seul inventeur de cette architecture. Durant une conférence, Don Coppersmith a laissé entendre que Bill Notz etLynn Smith (de l'équipe d'IBM travaillant sur DES) avaient été en grande partie à l'origine du réseau de Feistel tel que nous le connaissons. Réseau de Feistel à n tours utilisant l'opérateurXOR Un réseau de Feistel estsubdivisé en plusieurs tours ou étages. Dans sa version équilibrée, le réseau traite les données en deux parties de taille identique. À chaque tour, les deux blocs sont échangés puis un des blocs est combiné avec une version transformée de l'autre bloc. Pour simplifier, la moitié des données sont encodées avec la clef, puis le résultat de cette opération est ajouté grâce à un xor (ou exclusif) à l'autre moitié des données. Puis au tour suivant, on inverse : c'est au tour de la dernière moitié d'être chiffrée puis d'être ajoutée avec un xor à la première moitié, saufqu'on utilise les données chiffrées précédemment (sinon ça ne servirait à rien de faire plus de deux tours). Le schéma ci-contre montre le cheminement des données (le ⊕ représente le xor). Chaque tour utilise une clé intermédiaire, en général tirée de la clé principale via une génération appelée key schedule. Les opérations effectuées pendant le chiffrement avec ces clefs intermédiaires sont spécifiques à chaque algorithme. Dans le cas de DES, le réseau de Feistel possède 16 tours, chacun avec une sous-clé. Ces différentes clés permettent d'améliorer la robustesse d'un algorithme face à la cryptanalyse.
  • 10. 9 Une variante, le réseau de Feistel non-équilibré coupe les données en deux parties de tailles différentes. Cette variante a été utilisée dans MacGuffin de Bruce Schneier, ou encore Skipjack, candidat pour AES. A. Définition formelle Une définition formelle d'un réseau de Feistel peut être donnée sous plusieurs formes. Nous reprenons ici la notation utilisée par Knudsen dans Partial and Higher Order Differentials and Applications to DES. et et  l'exposant représente la sous-partie du bloc considérée (L à gauche, R à droite).  correspond au bloc de texte clair, correspond au bloc de gauche à l'entrée du tour  correspond au bloc de texte chiffré, correspond au bloc de droite à la sortie du tour  est la clé du tour , elle est calculée grâce à un key schedule de la clé principale  est le nombre de tours dans l'algorithme  est une opération dans un groupe commutatif (souvent un XOR ou une addition) Compositiondestours Chaque tour applique plusieurs transformations sur les données provenant du tour précédent :  permutation des bits via des P-Boxes  fonction non-linéaire (substitution) avec des S-Boxes  mixage linéaire en utilisant la fonction XOR  application de la clé du tour (intégrée dans une fonction ou via un XOR) On utilise les termes de confusion et diffusion pour décrire la propagation des informations dans la structure (termes utilisés par Claude Shannon). En effet, une modification d'un bit en entrée produira des variations très importantes dans les stages intermédiaires et en sortie. Un terme plus récent pour décrire ce phénomène est l'effet avalanche. L'utilisation des permutations permet d'améliorer la diffusion alors que les substitutions ont pour effet d'augmenter la confusion. E. Cryptographie symétrique La cryptographie symétrique, également dite à clé secrète (par opposition à la cryptographie asymétrique), est la plus ancienne forme de chiffrement. Elle permet à la fois de chiffrer et de déchiffrer des messages à l'aide d'un même mot clé. On a des traces de son utilisation par les Égyptiens vers 2000 av. J.-C. Plus proche de nous, on peut citer le chiffre de Jules César, dont le ROT13 est une variante. 1. Clé et sécurité L'un des concepts fondamentaux de la cryptographie symétrique estla clé. Une clé est une donnée qui (traitée par un algorithme) permet de chiffrer et de déchiffrer un message. Toutes les méthodes de chiffrement n'utilisent pas de clé. Le ROT13, par exemple, n'a pas de clé. Quiconque découvre qu'un message a été codé avec cet algorithme peut le déchiffrer sans autre information. Une fois l'algorithme découvert, tous les messages chiffrés par lui deviennent lisibles. Si l'on modifiait le ROT13 en rendant le décalage variable, alors la valeur de ce décalage deviendrait une clé, car il ne serait plus possible de chiffrer et déchiffrer sans elle. L'ensemble des clés possibles comporterait alors 25 décalages (26 décalages si l'on considère le décalage nul).
  • 11. 10 Cet exemple montre le rôle et l'importance de la clé dans un algorithme de chiffrement ; et les restrictions qu'elle implique. Auguste Kerckhoffs (La cryptographie militaire, 1883) énonce leprincipe de Kerckhoffs : pour être sûr, l'algorithme doitpouvoir être divulgué.En outre, il faut aussi que la clé puisse prendre suffisamment de valeurs pour qu'une attaque exhaustive — essai systématique de toutes les clés — soit beaucoup trop longue pour être menée à bien. Cela s'appelle la sécurité calculatoire. Cette sécurité calculatoire s'altère avec le progrès technique,etla puissance croissante des moyens de calcul la fait reculer constamment. Exemple : le DES, devenu obsolète à cause du trop petit nombre de clés qu'il peut utiliser (pourtant 256). Actuellement, 280 est un strict minimum. À titre indicatif, l'algorithme AES, dernier standard d'algorithme symétrique choisi par l'institut de standardisation américain NIST en décembre 2001, utilise des clés dontla taille estau moins de 128 bits soit 16 octets, autrement dit il y en a 2128. Pour donner un ordre de grandeur sur ce nombre, cela fait environ 3,4×1038 clés possibles ; l'âge de l'univers étantde 1010 années, si on suppose qu'il est possible de tester 1 000 milliards de clés par seconde (soit3,2×1019 clés par an), il faudra encore plus d'un milliard de fois l'âge de l'univers. Dans un tel cas, on pourrait raisonnablement penser que notre algorithme est sûr. Toutefois, l'utilisation en parallèle de très nombreux ordinateurs, synchronisés par internet, fragilise la sécurité calculatoire. Cette notion de sécurité calculatoire pose la question de la sécurité absolue. On sait depuis Claude Shannon et son article Communication theory of secrecy system (1949) que le chiffrement de Gilbert Vernam qui consiste à ajouter au message en clair une clé de la même longueur (voir XOR) est parfaitement sûr. C'est le seul pour lequel nous soyons capables de prouver une telle chose. L'inconvénient est que pour chiffrer un message de n bits, il faut au préalable avoir échangé une clé de n bits avec le destinataire du message, et cela par une voie absolument sûre, sinon chiffrer devient inutile. Très peu de cas nécessitent un tel système, mais c'était toutefois le système utilisé pour le Téléphone rouge entre le Kremlin et la Maison-Blanche. 2. Petite taxinomie du chiffrement symétrique classique Jusqu'aux communications numériques, les systèmes utilisaient l'alphabet et combinaient substitutions — les symboles sont changés mais restent à leur place — et transpositions — les symboles ne sont pas modifiés mais changent de place. La substitution estdite monoalphabétique quand l'algorithme de codage n'utilise aucun autre paramètre que la lettre à coder, de sorte qu'une lettre est toujours remplacée par la même lettre (relation 1→1). C'estle cas d'un algorithme à décalage simple. Quand l'algorithme de codage utilise un (ou plusieurs) autre(s) paramètre(s) (ex: sa position dans le message), chaque lettre à coder peut alors être remplacée par plusieurs lettres différentes selon les cas (relation 1→n). On parle alors de substitution polyalphabétique — e.g. le chiffre de Vigenère, Enigma. La substitution peut utiliser la méthode du décalage, où chaque lettre est transformée en la lettre n positions plus loin dans l'alphabet, en rebouclant, i.e. la lettre suivant 'z' est 'a'. On parle de décalage simple — estégalementconnu sous le nom de chiffre de Jules César- quand le décalage est identique pour toutes les lettres du message. Avec le chiffre de Blaise de Vigenère, on applique un nombre quelconque n de décalages,le premier décalage est utilisé pour chiffrer la lettre numéro 1, puis la 1+n, 1+2n, … le second décalage pour la lettre numéro 2, 2+n, 2+2n, … Usuellement, la valeur de ces décalages est donnée par un mot de longueur n dont la ie lettre donne la valeur du ie décalage. Clarifions par un exemple. Message clair : wikipedia Mot clé : crypto Message chiffre : yzixisfzy
  • 12. 11 Un 'a' dans le mot clé correspond à un décalage de 0, un 'b' à un décalage de 1, etc. Dans notre exemple,la clé a 6 lettres, donc les lettres 1 ('w') et 7 ('d') sontchiffrées par le même décalage, à savoir 2. La machine Enigma utilisée par les Allemands durant la Seconde Guerre mondiale est également basée sur les substitutions, mais avec un mécanisme beaucoup plus sophistiqué. Une autre forme de la substitution estle dictionnaire : au lieu de changer les symboles du message un à un, ce sont des mots entiers que l'on remplace. Pour les transpositions on modifie l'ordre des symboles du texte clair. Une technique consiste à se donner un mot clé, à écrire le message sous ce mot clé et à lire le texte en colonne, par ordre alphabétique. Message : wikipediaestuneencyclopedielibre Mot clé : crypto on écrit sous wikipe le mot clé diaest uneenc yclope dielib re**** lettre du mot clé (ordre alphabétique) coprty on ordonne les weiipk colonnes dteisa ucenne yeocpl dbliie r**e** Message chiffré : wduydr etceb* ieeol* iincie psnpi* kaele* Les astérisques sont ajoutés pour le déchiffrement et les espaces dans le message chiffré uniquement pour la lisibilité. Le message, s'il était par exemple envoyé à un destinataire qui connaît le mot clé, serait le suivant : Message chiffré : wduydretceb*ieeol*iinciepsnpi*kaele* 3. Techniques modernes Depuis l'avènement du numérique, les paradigmes du chiffrement symétrique ont bien changé. D'une part, la discipline s'est formalisée, même si la conception de système de chiffrement garde inévitablementun aspect artisanal. En effet dans ce domaine, la seule chose que l'on sache prouver est la résistance face à des types d'attaques connues, pour les autres… D'autre part, la forme du texte chiffré ayant changé, les méthodes ont suivi. Les algorithmes modernes chiffrent des suites de bits. On distingue deux types d'algorithmes, les algorithmes en blocs, qui prennent bits en entrée et en ressortent , et les algorithmes à flots, qui chiffrent bitpar bitsur le modèle du chiffre de Vernam. Dans ce dernier cas, l'algorithme engendre une suite de bits qui est ajouté (cf. XOR) à la suite binaire à chiffrer. Les techniques utilisées pour générer la suite que l'on ajoute -- appelée la suite chiffrante -- sontdiverses. Elles peuventutiliser des registres à décalage à rétroaction linéaire, composés de façon non linéaire (par exemple A5/1 ou E0, mais pas RC4 qui est ou a été très répandu) ... ou utiliser un chiffrement par bloc en mode avec un mode opératoire adapté. La seconde famille d'algorithmes, ceux en blocs, est en général construite sur un modèle itératif. Ce modèle utilise une fonction qui prend une clé et un message de bits. C'est cette fonction qui est itérée un certain nombre de fois, on parle de nombre de tours. À chaque tour, la clé utilisée est changée et le message que l'on chiffre est le résultat de l'itération précédente. C1 = f(k1,M) Cr = F(kr, Cr-1)
  • 13. 12 C2 = F(k2, C1) Les clés utilisées sont déduites d'une clé maître qui est la quantité secrète que doivent partager émetteur et destinataire. L'algorithme générant ces clés à partir de est appelé l'algorithme de cadencement de clés. Pour qu'un tel système puisse fonctionner, la fonction utilisée doit être une permutation, c'est-à-dire qu'il faut pour toute clé et message pouvoir recalculer à partir de , autrement le déchiffrement n'est pas possible et par conséquent on ne dispose pas d'un algorithme utilisable. Formellement, cela signifie qu'il existe une fonction vérifiant . La sécurité d'un tel système repose essentiellement sur deux points, l'algorithme de cadencement de clé et la robustesse de la fonction . Si l'algorithme de cadencement est mal conçu, les peuvent être déductibles les unes des autres, ou mal réparties, … Dire de la fonction qu'elle est robuste signifie qu'on la suppose difficile à inverser sans connaître la clé ayant servi dans le calcul de . En d'autres termes, connaissant seulement , et , on ne doit pas pouvoir retrouver le message , si ce n'est en effectuant une recherche exhaustive de la clé , c'est-à-dire en calculant 1) ) ; 2) ; et cela pour toutes les clés jusqu'à ce que l'on en trouve une pour laquelle est égal à . On est alors assuré d'avoir le message qui n'est autre que . Le problème étant que si est constitué de bits, il faut en moyenne essais. En prenant assez grand, on peut être sûr que cela n'est pas réalisable en pratique : supposons que l'on puisse essayer 109(un milliard) clés par seconde, soit environ 230, il y a 31 557 600 secondes par an, soit 225, en conséquence on peut tester 255 clés par an. Si on prend pour une valeur de 80 bits, il faudrait 224 ans, plus de 16 millions d'années. Une technique très répandue pour fabriquer des fonctions est celle du schéma de Feistel. Dans ce schéma, le message à chiffrer est découpé en 2 blocs de n/2 bits, et le message chiffré est où le '⊕' est le XOR et est une fonction quelconque, on n'a plus à supposer que c'est une permutation. En effet, on peut retrouver à partir de la clé 1) connaissant , on connaît qui est sa partie gauche, 2) on calcule , 3) on ajoute le résultat du calcul précédent à la partie droite de , et on retrouve , cela sans restriction sur . Clairement, dans ce schéma, la robustesse de repose sur la fonction . 4. ROT13 Chiffré avec ROT13, le mot « HELLO » devient « URYYB » (et inversement). Le ROT13 (rotate by 13 places) est un cas particulier du chiffre de César, un algorithme simpliste de chiffrement de texte. Comme son nom l’indique, il s’agit d’un décalage de 13 caractères de chaque lettre du texte à chiffrer. Son principal aspect pratique est que le codage et le décodage se font exactement de la même manière.
  • 14. 13 a. Limitesd'un chiffredeCésar Le défaut de ce chiffrement est qu’il s’occupe des lettres, il ne s’occupe pas des symboles et de la ponctuation. C’est pourquoi on doitsupprimer toute accentuation du texte à chiffrer (ce défaut est moins gênant pour l'anglais que pour le français ou l'allemand). Il ne s'occupe pas non plus des chiffres, ce qui était sans importance puisque les romains écrivaient leurs chiffres avec des lettres (I, V, X, L, M, etc.). Pour l'utiliser aujourd'hui, il suffit de convertir d'abord les chiffres en utilisant la notation romaine, ou en lettres (UN pour 1, DEUX pour 2…). Un caractère étant invariablement remplacé par un autre, cet algorithme est aussi qualifié de substitution monoalphabétique. b. L'algorithme À l’aide de la définition de cetalgorithme, on peut alors définir la correspondance entre les caractères en clair et chiffrés : Caractère non-chiffré 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 Caractère chiffré 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 L’avantage de ROT13, c’est le fait que le décalage soit de 13. L’alphabet comporte 26 lettres, et si on applique deux fois de suite le chiffrement, on obtient comme résultat le texte en clair. Pour cela on doit considérer l’alphabetcomme circulaire, c’est-à-dire qu’après la lettre Z on a la lettre A, ce qui permet de grandementsimplifier son usage etsa programmation puisque c’estla même procédure qui est utilisée pour le chiffrement et le déchiffrement. ROT13 va à l’encontre du principe de Kerckhoffs car si l’adversaire apprend ou devine que le message a été chiffré en ROT13, il sera capable de le déchiffrer sans problème. c. Utilité Preuve par l’exemple est faite qu’il n’est pas évident de lire un texte une fois qu’il est chiffré avec ROT13 mais évidemment, il ne faut pas utiliser ce chiffrement si vous souhaitez conserver des secrets en sécurité. Ce type de chiffrement est plutôt utilisé dans les forums, news et groupes pour ne pas dévoiler à tous les solutions de jeux, les fins de films ou ne pas casser l’intrigue d’une série… d. Exemple d'utilisation $ echo "Chiffre moi" | tr 'A-Za-z' 'N-ZA-Mn-za-m' Puvsser zbv Variante ROT47 est une variante de ROT13 qui permet de chiffrer les lettres, les chiffres, et les autres caractères spéciaux. ROT47 se base sur le code ASCII, qui assigne à chaque symbole un nombre. Il utilise les nombres dans l’intervalle 33 à 126, correspondant respectivement au point d’exclamation (« ! ») et au symbole tilde (« ~ »). Ensuite, selon le même principe que le ROT13, il effectue une rotation de 47 lettres. Le fait d’utiliser un panel de symboles plus important que le ROT13 permet un brouillage plus efficace, même si le code reste trivial à déchiffrer. e. Outils Outre quelques traducteurs en ligne, il existe aussi des extensions à des outils de messagerie ou à des navigateurs internet. On peut également citer : tr a-zA-Z n-za-mN-ZA-M L'éditeur de texte Vim supporte également nativement ce chiffrement: voir commande g? . En cryptographie, le chiffrement par décalage, aussi connu comme le chiffre de César ou le code de César(voir les différents noms), est une méthode de chiffrementtrès simple utilisée par Jules César dans ses correspondances secrètes (ce qui explique le nom « chiffre de César »).
  • 15. 14 Le texte chiffré s'obtienten remplaçantchaque lettre du texte clair original par une lettre à distance fixe, toujours du même côté, dans l'ordre de l'alphabet. Pour les dernières lettres (dans le cas d'un décalage à droite), on reprend au début. Par exemple avec un décalage de 3 vers la droite, A est remplacé par D, B devient E, et ainsi jusqu'à W qui devient Z, puis X devient A etc. Il s'agit d'une permutation circulaire de l'alphabet. La longueur du décalage, 3 dans l'exemple évoqué, constitue la clé du chiffrement qu'il suffit de transmettre au destinataire — s'il sait déjà qu'il s'agitd'un chiffrement de César — pour que celui-ci puisse déchiffrer le message.Dans le cas de l'alphabet latin, le chiffre de César n'a que 26 clés possibles (y compris la clé nulle, qui ne modifie pas le texte). Il s'agit d'un cas particulier de chiffrement par substitution monoalphabétique : ces substitutions reposentsur un principe analogue, mais sont obtenues par des permutations quelconques des lettres de l'alphabet. Dans le cas général, la clé estdonnée par la permutation, etle nombre de clés possibles est alors sans commune mesure avec celui des chiffrements de César. Le chiffrement de César a pu être utilisé comme élément d'une méthode plus complexe, comme le chiffre de Vigenère. Seul, il n'offre aucune sécurité de communication, à cause du très faible nombre de clés, ce qui permet d'essayer systématiquement celles-ci quand la méthode de chiffrement est connue, mais aussi parce que, comme tout encodage par substitution monoalphabétique, il peut être très rapidement « cassé » par analyse de fréquences (certaines lettres apparaissent beaucoup plus souvent que les autres dans une langue naturelle). Exemple Le chiffrement peut être représenté par la superposition de deux alphabets, l'alphabet clair présenté dans l'ordre normal et l'alphabet chiffré décalé, à gauche ou à droite, du nombre de lettres voulu. Nous avons ci-dessous l'exemple d'un encodage de 3 lettres vers la droite. Le paramètre de décalage (ici 3) est la clé de chiffrement : clair : ABCDEFGHIJKLMNOPQRSTUVWXYZ chiffré : DEFGHIJKLMNOPQRSTUVWXYZABC Pour encoder un message, il suffit de regarder chaque lettre du message clair, et d'écrire la lettre encodée correspondante. Pour déchiffrer, on fait tout simplement l'inverse. original : WIKIPEDIA L'ENCYCLOPEDIE LIBRE encodé : ZLNLSHGLD O'HQFBFORSHGLH OLEUH Le chiffrement peutaussi être représenté en utilisant les congruences sur les entiers. En commençant par transformer chaque lettre en un nombre (A = 0, B = 1,..., Z = 25)1, pour encoder une lettre avec une clé n il suffit d'appliquer la formule : Le déchiffrement consiste à utiliser la clé opposée ( à la place de ) : On peut s'arranger pour que le résultat soit toujours représenté par un entier de 0 à 25 : si x+n (respectivement x-n) n'estpas dans l’intervalle [0,25], il suffit de soustraire (respectivement ajouter) 26. Le décalage demeuranttoujours le même pour un même message, cette méthode est une substitution monoalphabétique, contrairement au chiffre de Vigenère qui constitue une substitution polyalphabétique. Dénominations Le chiffrement par décalage possède plusieurs synonymes :  le chiffre de César. César utilisait pour ses correspondances un chiffrementpar décalage de 3 vers la droite. Selon David Kahn, ce n'estque récemmentque l'expression « chiffre de César » désigne les chiffrements par décalage ayant un décalage différent de 33 ;  la substitution de César ;
  • 16. 15 le terme code de César est un abus de langage : en cryptologie, le chiffre est un procédé systématique, alors qu'un code utilise le symbolisme des mots. À ce sujet, se reporter au chapitre Différence entre chiffre et code de l'article « Chiffre ». En(x)= (x+n)[26] Dn(x)= (x-n)[26] 5. Chiffre affine Le chiffre affine est une méthode de cryptographie basée sur un chiffrement par substitution mono- alphabétique, c'est-à-dire que la lettre d'origine n'est remplacée que par une unique autre lettre, contrairement au chiffre de Hill. Il s'agitd'un code simple à appréhender mais aussi un des plus faciles à casser. a. Principe Chiffrement On commence par remplacer chaque lettre par son rang dans l'alphabet en commençant au rang 0 (certaines variantes commencent au rang 1) : 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 Deux entiers a et b sont choisis comme clef. Chaque lettre claire est d'abord 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 (soit ). Ainsi pour chiffrer le mot CODE grâce au chiffre affine de clef (17,3), il faut d'abord le transcrire en série de nombres C O D E → 2 ; 14 ; 3 ; 4 appliquer ensuite la fonction affine 2 ; 14 ; 3 ; 4 → 37 ; 241 ; 54 ; 71 prendre les restes dans la division par 26 37 ; 241 ; 54 ; 71 → 11 ; 7 ; 2 ; 19 puis retranscrire en lettres 11 ; 7 ; 2 ; 19 → L H C T Si le coefficient a vaut 1, alors le codage affine correspond au chiffre de César. De plus, le coefficient a doit toujours être premier avec le nombre total de lettres. Par exemple, pour l'alphabetlatin de 26 lettres, les possibilités sont : 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 ou 25. Dans le cas contraire, les autres coefficients donnent dans la table plusieurs fois la même lettre. (La fréquence d'apparition de la lettre vaut alors le coefficient) Si celui-ci vaut 4, si la lettre "N" si elle est présente, remplacera 4 lettres différentes à elle seule. Par ailleurs, si le coefficient a vaut le nombre de lettre présent dans la table, la lettre dont le rang est égal à 0 remplacera toutes les autres. Les coefficients supérieur au nombre de lettres compris dans la table ont la même valeur que ceux qui y sont compris. Par exemple, si notre nombre de lettre est égal à 26, alors les clef (1 ; 0), (27 ; 0) et (52 ; 0) coderont exactement les mêmes lettres. b. Déchiffrement Pour déchiffrer le message, il faut être capable de trouver l'antécédent de y par l'application qui, à un entier x compris entre 0 et 25, associe le reste de ax + b dans la division par 26. Il est facile d'ôter b mais il n'est pas toujours réalisable de simplifier par a. La simplification ne peut s'effectuer que s'il existe un entier a' tel que aa' a pour reste 1 dans la division par 26. C'est-à-dire s'il existe un entier k tel que soit encore Le théorème de Bachet-Bézoutaffirme que l'on ne peut trouver k et a' que lorsque a est premier avec 26. La clef de code doit donc être un couple d'entiers (a, b) dans lequel a est premier avec 26. C'est le cas, dans l'exemple choisi, l'entier a' est 23. Pour déchiffrer le message, il faut donc ôter 3 à chaque nombre, les multiplier par 23 puis en chercher les restes dans la division par 26 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
  • 17. 16 2 ; 14 ; 3 ; 4 - > C O D E c. Cryptanalyse Il n'existe que 12 entiers compris entre 0 et 26 et premiers avec 26 (1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 et 25). Il n'existe donc que12 x26 =36 clés de chiffrement possible. Si l'on sait qu'un code affine a été utilisé, on peut casser le code par force brute en essayant les 312 clés. À la lumière du principe de Kerckhoffs, ce manque de variété rend ce système très peu sécurisé. Si le message estplus long, on peut tenter d'identifier les lettres selon leur fréquence d'apparition dans les messages.En effetune lettre est, par cette méthode, toujours remplacée par la même lettre. La lettre E, par exemple, étanten français très fréquente, si, dans le message chiffré, la lettre T est très fréquente, on peutsupposer que E estremplacé par T et ne rechercher que les codages affines permettant cette substitution. Variantes Le système de codage précédemment décrit ne code que les 26 lettres de l'alphabet et aucun signe typographique. On peut élargir le champ des caractères à coder en prenant leur code ASCII. Ce qui fournit, si on exclut le 32 premiers nombres et 128e qui ne correspondent pas à des caractères affichables, 95 caractères à coder. À chaque caractère, on associe donc son code ASCII diminuée de 32. Le chiffre affine utilise alors une clé (a, b) où a et b sontchoisis entre 0 et 94, l'entier a étant premier avec 95. le nombre x est remplacé par le reste de ax+bmod95. Cette variante offre l'avantage, d'une part d'offrir une plus grande variété dans les caractères utilisables (95) d'autre part de rendre le cassage par force brute un peu plus long car il faut essayer 6840 clefs. Ce système est en outre très facile à programmer. Mais le cassage par observation des fréquences de chaque caractère reste encore possible. L'autre système consiste à grouper les lettres par paire et d'effectuer une transformation affine sur chaque paire de nombre. C'est le chiffre de Hill. Utilisation Le chiffre affine regroupe plusieurs systèmes de chiffrement simples comme le chiffrement par décalage, de clé (1,n) dontles plus connus sontle code de César de clé (1,3) et le ROT13 de clé (1,13) ou des chiffrements par symétrie comme le code Atbash de clé (-1;25). Le chiffrement affine n'offre pas de sécurité suffisante pour chiffrer des messages. Il est en outre plus difficile à mettre en place qu'un code de César. Il est donc dans les faits assez rarement utilisé sauf dans le cadre d'énigme à résoudre.Il estprincipalementun exemple pédagogique montrant la place de l'arithmétique dans la cryptologie 6. Chiffre de Vigenère Blaise de Vigenère. Le chiffre de Vigenère est un système de chiffrement polyalphabétique, c’est un chiffrement par substitution, mais une même lettre du message clair peut, suivant sa position dans celui- ci, être remplacée par des lettres différentes, contrairement à un système de chiffrement monoalphabétique comme le chiffre de César. Cette méthode résiste ainsi à l‘analyse de fréquences, ce qui est un avantage décisif sur les chiffrements monoalphabétiques. Cependant le chiffre de Vigenère a été cassé par le major prussien Friedrich Kasiski qui a publié sa méthode en 1863.Il est nommé ainsi au XIXe siècle en référence au diplomate du XVIe siècle Blaise de Vigenère, qui le décrit (intégré à un chiffrement plus complexe) dans son traité des chiffres paru en 1586 et du traité de Giovan Battista Bellaso ( 1533). Principeduchiffrement Ce chiffrement introduit la notion de clé. Une clé se présente généralement sous la forme d'un mot ou d'une phrase. Pour pouvoir chiffrer notre texte, à chaque caractère nous utilisons une lettre de la clé pour effectuer la substitution. Évidemment, plus la clé sera longue et variée et mieux le texte sera chiffré.
  • 18. 17 La table de Vigenère Pour chaque lettre en clair, on sélectionne la colonne correspondante et pour une lettre de la clé on sélectionne la ligne adéquate, puis au croisement de la ligne et de la colonne on trouve la lettre chiffrée. La lettre de la clé est à prendre dans l'ordre dans laquelle elle se présente et on répète la clé en boucle autant que nécessaire. L'outil indispensable du chiffrement de Vigenère est la « table de Vigenère » Lettre en clair 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 C l é U t i l i s é e 26 lettres chiffrées A 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 B 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 C 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 D 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 E 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 F 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 G 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 H 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 I 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 J 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 K 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 L 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 M 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 N 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 O 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 P 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 Q 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 R 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 S 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 T 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 U 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 V 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 W 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 X 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 Y 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 Z 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
  • 19. 18 « EKKZHSH UA VOE KCQIVLSX » Chiffrement Clé : musique Texte : J'adore écouter la radio toute la journée Texte en clair : j'adore ecouterla radio toute la journee Clé répétée : M USIQU EMUSIQUEM USIQU EMUSIQU EMUSIQU ^ ^^^ | ||Colonne O, ligne I : on obtientla lettre W. | |Colonne D, ligne S : on obtientla lettre V. | Colonne A, ligne U : on obtientla lettre U. Colonne J, ligne M: on obtientla lettre V. Le texte chiffré est alors : V'UVWHY IOIMBUL PM LSLYI XAOLM BU NAOJVUY. Si on veut déchiffrer ce texte, on regarde pour chaque lettre de la clé répétée la ligne correspondante et on y cherche la lettre chiffrée. La première lettre de la colonne que l'on trouve ainsi est la lettre déchiffrée. Texte chiffré : V'UVWHY IOIMBULPM LSLYI XAOLMBUNAOJVUY Clérépétée : M USIQUEMUSIQUEM USIQUEMUSI QUEMUSIQU ^ ^^^ | ||LigneI, on chercheW: on trouvelacolonneO. | |LigneS, on chercheV: on trouvelacolonneD. | LigneU,on chercheU: on trouvelacolonneA. LigneM,on chercheV: on trouvelacolonneJ. Principe mathématique Mathématiquement, on identifie les lettres de l'alphabet aux nombres de 0 à 25 (A=0, B=1...). Les opérations de chiffrement et de déchiffrement sont, pour chaque lettre, celles du chiffre de César. En désignantla ie lettre du texte clair par Texte[i], la ie du chiffré par Chiffré[i], etla ielettre de la clé, répétée suffisamment de fois, par Clés[i], elle se formalise par :  Chiffré[i] = (Texte[i] + Clés[i]) modulo 26  Texte[i] = (Chiffré[i] - Clés[i]) modulo 26 où x modulo 26 désigne le reste de la division entière de x par 26. Pour le chiffrement il suffit d'effectuer l'addition des deux lettres puis de soustraire 26 si le résultat dépasse 26. Pour le déchiffrement il suffit d'effectuer la soustraction et d'additionner 26 si le résultat est négatif. Le déchiffrement est aussi une opération identique à celle du chiffrement pour la clé obtenue par Clé'[i] = 26 - Clé[i]. Un disque à
  • 20. 19 chiffrer qui utilise une représentation circulaire de l'alphabet (après Z on a A), permet de réaliser directement cette opération. Le chiffré d'un texte suffisamment long constitué uniquement de A donne la clé ( 0 + x = x, soit A + Clés[i] = Clés[i] ). Cryptanalyse Si l'on connait le nombre de symboles que comporte la clé, il devient possible de procéder paranalyse de fréquences sur chacun des sous-textes déterminés en sélectionnant des lettres du message clair à intervalle la longueur de la clef (autant de sous-textes que la longueur de la clef). C'est l'attaque bien connue sur les chiffrements mono-alphabétiques. Friedrich Kasiski publie en 1863 une méthode efficace pour déterminer la taille de la clef, le test de Kasiski, en repérant la répétition de certains motifs dans le message chiffré. Charles Babbage s'est intéressé au chiffrement de Vigenère une dizaine d'années auparavant. Il avait décrypté dans des cas particuliers des messages chiffrés par la méthode de Vigenère. Il n'a rien publié à ce sujet, mais on dispose de ses notes. On ne sait pas quelle méthode il a utilisée, il a pu exploiter des faiblesses de l'utilisation du chiffrement. Certains historiens pensent qu'il a pu découvrir la méthode de Kasiski, bien qu'il n'en ait pas laissé de trace écrite1 Des techniques statistiques fondées sur l'indice de coïncidence, découvertes au XXe siècle, s'avèrent encore plus efficaces pour casser le chiffre. Une grille de permutations alphabétique indexée par des lettres, qui permet une variante du chiffre dit « de Vigenère » oùcesont les 10 permutationsdelagrillequisont utiliséesplutôt que les26 décalagesalphabétiques du chiffre de César. Variantes Le chiffre de Vigenère a été réinventé de nombreuses fois au cours des siècles et il a existé plusieurs variantes. Il n'estpas indispensable d'utiliser un décalage comme substitution alphabétique, n'importe quelle permutation des lettres de l'alphabet convient. L'avantage du chiffre de César est d'être entièrement déterminé par la lettre qui donne le décalage. Mais, avant Vigenère, Giovan Battista Bellaso avait proposé un tel système (repris par le physicien Giambattista della Porta qui s'en inspire sans citer Beloso), où chacun des correspondants dispose d'une même grille qui donne une suite de permutations de l'alphabet chacune associée à une ou plusieurs lettres. Chiffrement et déchiffrement demandent la grille et un mot clef. Les lettres du mot clef sont utilisées de la même façon que pour le chiffrement de Vigenère, mais indiquentl'une des permutations de la grille et non un décalage 2.A priori, la connaissance de la grille ne permet pas à elle seule de déchiffrer le message, puisqu'il faut le mot clef. Cependantle chiffrement estsusceptible des mêmes attaques que celui de Vigenère. Le système a connu d'autres variantes comme le chiffre de Beaufort. 7. Le chiffre des Templiers C’est un système de chiffrement par substitution basé sur une correspondance entre l'alphabet et une suite de figures géométriques issues de la Croix de Malte. L'Ordre du Temple était un ordre religieux et militaire créé en 1129 dont les membres étaient appelés Templiers et dont la mission principale était d'assister les pèlerins se rendant en Terre sainte. Cette activité poussa l'ordre à se développer rapidement et à constituer de l'Orient à l'Occident un réseau de commanderies.
  • 21. 20 Pour transmettre de façon sûre des informations ou des lettres de change entre les différentes commanderies, ils auraient adopté, sans que cela soit historiquement confirmé, un alphabet de chiffrement dit « Chiffre des Templiers ». Plus tard, la franc-maçonnerie s'en inspirera pour créer le Chiffre des Francs-maçons. Code Les figures géométriques sont basées sur un découpage de la Croix de Malte (ou Croix des huit Béatitudes). À chaque symbole correspond une lettre de l'alphabet. Ce système de chiffrement, quoique simpliste, étaitd'une efficacité redoutable car très facile à manier. Cependant, ce chiffre ne résiste pas à une analyse fréquentielle2. Remarque : L'alphabet latin antique ne comportait pas les lettres J, U et W, celles-ci n'apparaissant dans l’alphabet français qu'au XVIe siècle3. La période et les conditions suivant lesquelles ce système est créé ne sont pas connues, mais les U et le W apparaissent déjà dans certains manuscrits du XIIIe siècle, etces caractères se retrouventégalement sur certains sceaux supposés Templiers des débuts de l'ordre1. Advanced Encryption1 Standard ou AES aussi connu sous le nom de Rijndael, est un algorithme de chiffrement symétrique. Il remporta en octobre 2000 le concours AES, lancé en 1997 par le NIST et devintle nouveau standard de chiffrement pour les organisations du gouvernement des USA. Il a été approuvé par la NSA2 dans sa suite B1des algorithmes cryptographiques. Il est actuellement le plus utilisé et le plus sécuritaire. Il est issu d'un appel à candidatures international lancé en janvier 1997 et ayant reçu 15 propositions. Parmi ces 15 algorithmes, 5 furent choisis pour une évaluation plus poussée en avril 1999 : MARS, RC6, Rijndael, Serpent, et Twofish. Au bout de cette évaluation, ce fut finalement le candidat Rijndael, du nom de ses deux concepteurs Joan Daemen et Vincent Rijmen (tous les deux de nationalité belge) qui a été choisi2. Ces deux experts en cryptographie étaient déjà les auteurs d'un autre algorithme : Square. AES estun sous-ensemble de Rijndael : il ne travaille qu'avec des blocs de 128 bits alors que Rijndael offre des tailles de blocs et de clefs qui sont des multiples de 32 (compris entre 128 et 256 bits). Ce faisant, l'AES remplace le DES (standard des années 1970) aujourd’hui’ obsolète, car il utilisait des clefs de 56 bits seulement. L'AES a été adopté par le NIST3 en 2001. De plus, son utilisation est très pratique car il consomme peu de mémoire etn'étantpas basé sur un schéma de Feistel, sa complexité est moindre et il est plus facile à mettre en œuvre. Fonctionnement L'algorithme prend en entrée un bloc de 128 bits (16 octets), la clé fait 128, 192 ou 256 bits. Les16 octets en entrée sont permutés selon une table définie au préalable. Ces octets sont ensuite placés dans une matrice de 4x4 éléments etses lignes subissentune rotation vers la droite. L'incrément pour la rotation varie selon le numéro de la ligne. Une transformation linéaire est ensuite appliquée sur la matrice, elle consiste en la multiplication binaire de chaque élément de la matrice avec des polynômes issus d'une matrice auxiliaire, cette multiplication est soumise à des règles spéciales selon GF(28) (groupe de Galois ou corps fini). La transformation linéaire garantit une meilleure diffusion (propagation des bits dans la structure) sur plusieurs tours. Finalement, un OU exclusif XOR entre la matrice et une autre matrice permet d'obtenir une matrice intermédiaire. Ces différentes opérations sontrépétées plusieurs fois et définissent un « tour ». Pour une clé de 128, 192 ou 256, AES nécessite respectivement 10, 12 ou 14 tours. 1 Chiffrement 2 National Security Agency 3 National Instituteof Standards and Technology
  • 22. 21 Attaques L'AES n'a pour l'instant pas été cassé et la recherche exhaustive (« force brute ») demeure la seule solution. Rijndael a été conçu de manière à rendre des méthodes classiques comme la cryptanalyse linéaire ou différentielle très difficiles. Attaques sur des versions simplifiées Des attaques existentsur des versions simplifiées d'AES. Niels Ferguson etson équipe ontproposé en 2000 une attaque sur une version à 7 tours de l'AES 128 bits. Une attaque similaire casse un AES de 192 ou 256 bits contenant 8 tours. Un AES de 256 bits peut être cassé s'il est réduit à 9 tours avec une contrainte supplémentaire. En effet, cette dernière attaque repose sur le principe des « related-keys » (clés apparentées). Dans une telle attaque, la clé demeure secrète mais l'attaquant peut spécifier des transformations sur la clé et chiffrer des textes à sa guise. Il peut donc légèrement modifier la clé et regarder comment la sortie de l'AES se comporte. Attaques sur la version complète Certains groupes ont affirmé avoir cassé l'AES complet mais après vérification par la communauté scientifique, il s'avéraitque toutes ces méthodes étaienterronées.Cependant, plusieurs chercheurs ont mis en évidence des possibilités d'attaques algébriques, notamment l'attaque XL et une version améliorée, la XSL. Ces attaques ont été le sujet de nombreuses controverses et leur efficacité n'a pas encore été pleinementdémontrée, le XSL fait appel à une analyse heuristique dont la réussite n'est pas systématique. De plus, elles sont impraticables car le XSL demande au moins 287 opérations voire 2100 dans certains cas. Le principe estd'établir les équations (quadratiques / booléennes) qui lient les entrées aux sorties et de résoudre ce système qui ne comporte pas moins de 8 000 inconnues et 1 600 équations pour 128 bits. La solution de ce système reste pour l'instant impossible à déterminer. En l'absence d'une preuve formelle sur l'efficacité d'attaques similaires au XSL, l'AES est donc considéré comme sûr. En 2011, des chercheurs de Microsoft publient une attaque sur la version complète d'AES3. Cette attaque permet de trouver la clef d'AES-128 en seulement opérations (contre pour une attaque par force brute). La même attaque s'applique à une version simplifiée (à 8 tours) d'AES-128, réduisant la complexité de l'attaque à . Cependant, cette attaque se basant sur une amélioration de l'attaque par rencontre au milieu est encore impraticable. Recommandations de la NSA La NSA a annoncé que tous les finalistes qui avaient participé au concours AES pouvaient être considérés comme sûrs etqu'ils étaientsuffisamment robustes pour chiffrer les données non-classifiées du gouvernement américain. Pour les données classifiées, le gouvernement américain a annoncé en juin 2003 à propos de l'algorithme AES : « L'architecture et la longueur de toutes les tailles de clés de l'algorithme AES (128, 192 et 256) sont suffisantes pour protéger des documents classifiés jusqu'au niveau « SECRET ». Le niveau « TOP SECRET » nécessite des clés de 192 ou 256 bits. L'implémentation de l'AES dans des produits destinés à la protection des systèmes et/ou documents liés à la sécurité nationale doitfaire l'objet d'une analyse et d'une certification par la NSA avant leur acquisition et leur utilisation » — paragraphe (6) de la dépêche originale Attaques par canal auxiliaire Les attaques par canal auxiliaire exploitent les faiblesses du système implémentant l'algorithme de chiffrement et ne le visent donc pas directement. Il existe plusieurs attaques connues de ce type pour l'AES. En avril 2005, Daniel J. Bernstein a publié une attaque temporelle utilisée pour casser une clé AES sur un serveur spécifique tournant avec OpenSSL.
  • 23. 22 En novembre 2010, Endre Bangerter, David Gullasch et Stephan Krenn ont publié un article décrivant la récupération d'une clé secrète AES-128 quasiment en temps réel qui fonctionne pour tout type d'implémentation. Comme les précédentes attaques de ce type, elle nécessite de lancer un programme sur la machine qui effectue le chiffrement. F. Cryptanalyse Les schémas de Feistel ont été largement analysés et examinés par les experts. Plusieurs attaques sont possibles mais les deux principales sont :  la cryptanalyse linéaire;  la cryptanalyse différentielle. Ces méthodes ont fait leur preuve sur DES et sur d'autres algorithmes similaires. Mais cela ne signifie pas que l'utilisation d'un réseau de Feistel va obligatoirement entraîner des vulnérabilités significatives. Grâce à l'ajout de différentes techniques etavec une conception bien menée,on peutconsidérablement améliorer la résistance d'un algorithme basé sur Feistel. C'est le cas pour Blowfish qui est cryptographiquement sûr à la date de décembre 2008. En général, les cryptanalystes s'attaquenten premier à des versions amoindries des chiffrements, c’est- à-dire comportant moins de tours. Algorithmes Un grand nombre d'algorithmes utilise des réseaux de Feistel, avec des variantes. Voici une liste non-exhaustive entre autres, (DES, Blowfish Twofish Camellia , SEED RC5 OAEP TEA ) One advantage of the Feistel model compared to a substitution-permutation network is that the round function does not have to be invertible. G. La cryptanalysedifférentielle C’est une méthode générique de cryptanalyse qui peut être appliquée aux algorithmes de chiffrement itératif par blocs, mais égalementaux algorithmes de chiffrement par flots et aux fonctions de hachage. Dans son sens le plus large, elle consiste en l'étude sur la manière dont les différences entre les données en entrée affectent les différences de leurs sorties. Dans le cas d'un chiffrement itératif par blocs, le terme se rapporte à l'ensemble des techniques permettantde retracer les différences à travers le réseau des transformations, découvrant ainsi où l'algorithme montre un comportement prédictible et exploitant ainsi ces propriétés afin de retrouver la clé secrète. a. Origines de la cryptanalyse différentielle La découverte de la cryptanalyse différentielle estgénéralementattribuée à Eli Biham etAdi Shamir à la fin des années 1980. Ces derniers publièrent alors un grand nombre d'attaques contre divers algorithmes de chiffrement itératif par blocs et diverses fonctions de hachage ; ces articles comprenaient la présentation d'une faiblesse théorique dans l'algorithme DES. Il a été alors noté que DES était particulièrement résistant à cette attaque et en particulier que de petites modifications dans ses paramètres l'affaiblissaient. Ce constat a fait naître la rumeur que ses concepteurs (travaillant pour IBM) connaissaient déjà cette méthode dans les années1970. Effectivement, plusieurs personnes ayant participé à sa conception ont depuis admis que la défense contre la cryptanalyse différentielle était bien un des buts recherchés alors (Don Coppersmith, 1994). Il semblerait même que la NSA qui contribua également à la conception de DES, avait même connaissance de cette technique avant sa redécouverte par IBM. La NSA exigea même que le processus de la conception soit tenu secret afin d'éviter la propagation de cette méthode. À l'intérieur d'IBM, la cryptanalyse différentielle était connue sous le nom de T-attack, abréviation de Tickling attack, l'attaque par chatouillement car elle consistait à chatouiller les entrées pour voir l'effet sur les sorties.
  • 24. 23 Alors que DES avait été conçu pour résister à la cryptanalyse différentielle, d'autres algorithmes conçus à la même époque se sontrévélés particulièrementvulnérables.Une des premières cibles fut FEAL, qui illustra la puissance de la méthode. Sa version originale, constituée de quatre itérations (FEAL-4), peut être compromise avec seulement huit messages en clair choisis avec soin. b. Description de l'attaque La cryptanalyse différentielle s'effectue en général dans un contexte de texte clair choisi, ce qui signifie que l'attaquant est en mesure d'obtenir les résultats chiffrés de textes clairs de son choix. Il existe des variantes qui fonctionnent dans d'autres modes d'attaque : à texte clair connu ou à texte chiffré seulement. La cryptanalyse repose sur des paires de textes clairs qui ont une différence constante. L'opération de différence peut être définie de diverses manières, la Fonction OU exclusif est la plus courante. L'attaquant calcule ensuite les différences dans les textes chiffrés, afin d'en extraire des motifs pouvant indiquer un biais. Les différences en sortie du chiffrement sont nommées des différentielles. Leurs propriétés statistiques dépendentde la nature des boîtes-S de l'algorithme de chiffrement. Pour chaque boîte de substitution , l'attaquant peut calculer une paire de différentielles avec : la différence en sortie (avec la différence appliquée au texte en entrée). Dans l'attaque classique, une différence particulière dans le texte chiffré permet de distinguer le texte chiffré d'un flôt aléatoire (l'aléa en sortie est une propriété attendue dans tout chiffrement robuste). Des techniques plus sophistiquées permettent de diminuer la complexité de l'attaque comme dans le cas de DES. Le choix des différences appliquées en entrée est cruciale pour la réussite de l'attaque. Une analyse des rouages de l'algorithme permetde déterminer les différences qui ontla plus grande chance d'apparaître sur le cheminement des données et de déterminer une caractéristique différentielle. B. Attaque boomerang L'attaque boomerang est une version améliorée de la cryptanalyse différentielle, cette méthode a été inventée par David Wagner en 1999. Elle consiste à attaquer les deux moitiés d'un algorithme de chiffrement par bloc et part du principe que certaines propriétés, après perturbations des entrées, ne se propagent pas à travers toute la structure. C. Cryptanalyse linéaire La cryptanalyse linéaire est une technique inventée par Mitsuru Matsui, chercheur chez Mitsubishi Electric. Elle date de 1993 et fut développée à l'origine pour casser l'algorithme de chiffrement symétrique DES. Ce type de cryptanalyse se base sur un conceptantérieur à la découverte de Matsui : les expressions linéaires probabilistes. Ces dernières ont été étudiées par Henri Gilbert et Anne Tardy- Corfdir dans le cadre d'une attaque sur FEAL. La cryptanalyse linéaire estplus efficace que la cryptanalyse différentielle, mais moins pratique pour la simple et bonne raison que l'on part du principe que l'attaquant ne dispose pas de la boîte noire symbolisantl'algorithme de chiffrement, etqu'il ne peut pas soumettre ses propres textes. Dans le cas de DES, cette attaque nécessitaità l'origine 247couples (tous chiffrés avec la même clé) que l'attaquant a pu récupérer par un moyen ou un autre. Par la suite, Matsui améliore son algorithme en 1994 et propose une solution avec 243 couples. La complexité avec une bonne implémentation est toutefois inférieure et de l'ordre de 239 opérations DES. La cryptanalyse linéaire consiste à faire une approximation linéaire de l'algorithme de chiffrement en le simplifiant. En augmentant le nombre de couples disponibles, on améliore la précision de l'approximation et on peut en extraire la clé. Tous les nouveaux algorithmes de chiffrement doivent veiller à être résistants à ce type d'attaque. DES n'était pas conçu pour empêcher ce genre de méthode, les tables de substitution (S-Boxes) présentent en effet certaines propriétés linéaires, alors qu'elles étaient justement prévues pour ajouter une non-linéarité à DES.
  • 25. 24 Elle a par la suite été appliquée avec succès sur plusieurs algorithmes comme LOKI, FEAL ou une version simplifiée de Serpent. Les algorithmes plus récents comme AES (Rijndael), IDEA, et bien d'autres encore, sont insensibles à une attaque linéaire. La complexité de l'attaque est largement est supérieure à celle d'une recherche exhaustive. D. Cryptanalyse χ² Méthode de cryptanalyse statistique inventée par Serge Vaudenay et basée sur le test du χ². Elle est plus efficace que la cryptanalyse différentielle pour le même nombre de paires de messages en clair et chiffré. Elle permet de s'affranchir de certaines contraintes présentes dans la cryptanalyse linéaire et différentielle. Grâce à cette analyse statistique, l'algorithme de chiffrement peut être réellement considéré comme une boîte noire par le cryptanalyste.
  • 26. 25 H. Certificat électronique ou certificat de clé publique Un certificat électronique (aussi appelé certificat numérique) peut être vu comme une carte d'identité numérique. Il est utilisé principalement pour identifier et authentifier une personne physique ou morale, mais aussi pour chiffrer des échanges. Il estsigné par un tiers de confiance qui atteste du lien entre l'identité physique et l'entité numérique (Virtuel). Le standard le plus utilisé pour la création des certificats numériques est le X.509. 1. Familles Usuellement, on distingue deux familles de certificats numériques :  les certificats de signature, utilisés pour signer des documents ou s'authentifier sur un site web, et  les certificats de chiffrement (les gens qui vous envoient des courriels utilisent la partie publique de votre certificat pour chiffrer le contenu que vous serez seul à pouvoir déchiffrer) Mais cette typologie n'est pas exhaustive ; un découpage plus orienté applicatif pourrait être envisagé. L'intérêt de la séparation des usages découle notamment des problématiques de séquestre de clés et de recouvrement. En effet, lorsqu'il y a chiffrement, il peut y avoir nécessité de recouvrer les informations chiffrées. Alors que lorsqu'il y a signature, il est indispensable de s'assurer que la clé privée n'est possédée que par une seule partie. 2. Nature et composition Un certificat électronique est une donnée publique. Suivant la technique des clés asymétriques, à chaque certificat électronique correspond une clé privée, qui doit être soigneusement protégée. Un certificat numérique porte les caractéristiques de son titulaire : si le porteur est un être humain, cela peutêtre son nom et son prénom, le nom de sa structure (par exemple, son entreprise ou son... État !) et de son entité d'appartenance. Si c'est un équipement informatique (comme une passerelle d'accès ou un serveur d'application sécurisé), le nom est remplacé par l'URI du service. À ces informations d'identification s'ajoute la partie publique de la bi-clé. L'ensemble de ces informations (comprenant la clé publique) est signé par l'autorité de certification de l'organisation émettrice. Cette autorité a la charge de :  s'assurer que les informations portées par le certificat numérique sont correctes ;  s'assurer qu'il n'existe, pour une personne etpour une même fonction, qu'un etun seul certificat valide à un moment donné. Le certificat numérique est donc, à l'échelle d'une organisation, un outil pour témoigner, de façon électroniquement sûre, d'une identité. L'usage conjointdes clés cryptographiques publiques (contenue dans le certificat) et privée (protégée par l'utilisateur, par exemple au sein d'une carte à puce), permet de disposer de fonctions de sécurité importante (cf. infra). 3. Une clé privée inviolable ? Un chiffrement symétrique au moyen d'une clé de 128 bits propose 2128 ( ~ 3,4 1038 ) façons de chiffrer un message. Un pirate qui essaieraitde déchiffrer le message par la force brute devraitles essayer une par une. Pour les systèmes à clé publique, il en va autrement. Tout d'abord les clés sont plus longues (par exemple 1 024 bits minimum pour RSA) ; en effet, elles possèdent une structure mathématique très particulière (on ne peutpas choisir une suite de bits aléatoire comme clé secrète, par exemple dans le cas du RSA, seuls les nombres premiers sont utilisés). Certains algorithmes exploitant cette structure sont plus efficaces qu'une recherche exhaustive sur, par exemple, 1 024 bits. Ainsi, dans le cas de RSA, le crible général des corps de nombres est une méthode plus efficace que la recherche exhaustive pour la factorisation. Il faut noter le développementactuel de la cryptographie utilisantles courbes elliptiques, qui permettent (au prix d'une théorie et d'implémentations plus complexes) l'utilisation de clés nettement plus petites que celles des algorithmes classiques (une taille de 160 bits étant considérée comme très sûre actuellement), pour un niveau de sécurité équivalent.
  • 27. 26 Le journal The Guardian (6 septembre 2013) affirmait que la NSA était capable de déchiffrer la plupart des données chiffrées circulantsur Internet. De nombreuses sources ontcependantindiqué que la NSA n'avait pas mathématiquement cassé les chiffrements mais s'appuierait sur des faiblesses d'implémentation des protocoles de sécurité. Rappelssurlechiffrement Le principe de fonctionnement des certificats électroniques est basé sur le chiffrement d'informations et sur la confiance. Pour cela, il existe deux méthodes de chiffrement : Cléssymétriques Cette méthode est la plus simple à comprendre : si Anne (A) veut envoyer un message chiffré à Bob (B) elle doit lui communiquer un mot de passe (Clé). Comme l'algorithme de chiffrement est symétrique, on a la relation suivante : TexteChiffré = Chiffrement (clé, texte) Ainsi, Anne peut aussi déchiffrer un message en provenance de Bob avec la même clé. Mais il faut au préalable trouver un moyen sûr de transmettre la clé à l'abri des regards. La situation peut cependant devenir complexe, si Anne doit envoyer un message chiffré à Bob et à Charlie mais qu'elle ne souhaite pas donner la même clé à Charlie. Plus le nombre de personnes est grand, plus il est difficile de gérer les clés symétriques. D'autant qu'il faut au préalable trouver un moyen sûr de transmettre la clé à l'abri des regards. Clésasymétriques La propriété des algorithmes asymétriques est qu'un message chiffré par une clé publique n'est lisible que par le propriétaire de la clé privée correspondante. À l'inverse, un message chiffré par la clé privée sera lisible par tous ceux qui possèdent la clé publique. Ainsi avec sa clé privée, Anne :  signe ses messages  lit (déchiffre) les messages qui lui sont adressés. La problématique des clés publiques En se référant au précédent paragraphe nous voyons rapidement que, lorsqu'une entité (entreprise, association, individu, service public...) veut sécuriser ses communications (entrantes et sortantes) auprès d'un large public, le chiffrement le plus simple est l'asymétrique à clé publique : l'entité n'a qu'à diffuser sa clé publique à l'ensemble de son audience.
  • 28. 27 Le problème vient de la transmission de la clé publique. Si celle-ci n'est pas sécurisée, un attaquant peutse positionner entre l'entité et son public en diffusant de fausses clés publiques (par le b iais d'un faux site web par exemple) puis intercepter toutes les communications,lui permettantd'usurper l'identité du diffuseur de clés publique et de créer une attaque de l'homme du milieu. Dans un cadre fermé et relativement restreint (entreprise, service public…) la diffusion de clés sécurisées est relativement simple et peut prendre de nombreuses formes, mais quand le diffuseur souhaite s'adresser à un public plus large avec lequel il n'a pas eu de contact préalable (grand public, public international) elle nécessite un cadre normalisé. Les certificats résolvent le problème du canal sécurisé grâce à la signature de tiers de confiance. Présentation du principe Définition Un certificat électronique est un ensemble de données contenant :  au moins une clé publique ;  des informations d'identification, par exemple : noms, localisation, E-mails ;  au moins une signature ; de fait quand il n'y en a qu'une, l'entité signataire est la seule autorité permettant de prêter confiance (ou non) à l'exactitude des informations du certificat. Les certificats électroniques et leurs cycles de vie (cf. Certificate Revocation List, Protocole de vérification en ligne de certificat) peuvent être gérés au sein d'infrastructures à clés publiques. Certificat utilisateur de contenu Différents types Les certificats électroniques respectent des standards spécifiant leur contenu de façon rigoureuse. Les deux formats les plus utilisés aujourd'hui sont :  X.509 dont plusieurs RFC définissent les propriétés et usages  OpenPGP, défini dans la RFC 48802. La différence notable entre ces deux formats est qu'un certificat X509 ne peut contenir qu'un seul identifiant, que cet identifiant doit contenir de nombreux champs prédéfinis, et ne peut être signé que par une seule autorité de certification. Un certificat OpenPGP peut contenir plusieurs identifiants, lesquels autorisent une certaine souplesse sur leur contenu, et peuvent être signés par une multitude d'autres certificats OpenPGP. Ce qui permet alors de construire des toiles de confiance. Utilité Les certificats électroniques sont utilisés dans différentes applications informatiques dans le cadre de la sécurité des systèmes d'information pour garantir :  la non-répudiation et l'intégrité des données avec la signature numérique. ;  la confidentialité des données grâce au chiffrement des données ;  l'authentification ou l'authentification forte d'un individu ou d'une identité non-physique.  Exemple d'utilisation  Serveur Web, cf. TLS, X.509.  E-mail, cf. OpenPGP.  Poste de travail, cf. 802.1x.  VPN, cf. IPSEC.  SSH, TLS.  Code Mobile  documents électroniques.
  • 29. 28 Les autorités de certification Les autorités de certification sont des organismes enregistrés et certifiés auprès d'autorités publiques ou de gouvernance de l'internet qui établissent leur viabilité comme intermédiaire fiable. Ces organismes diffusentleurs propres clés publiques. Étant certifiées fiables ces autorités sont en contact direct avec les principaux producteurs de système d'exploitation et de navigateurs internet (tels que Mozilla Firefox, Internet Explorer, Google Chrome...) qui incluent nativement les listes de clés des autorités de certification3. C'estcette relation qui està la base de la chaine de confiance. Ces clés sont appelées clés publiques racines ou clé root, elles sont utilisées pour identifier les clés publiques d'autres organismes. Serveur de clés Les certificats peuvent être stockés par desserveurs de clés, qui peuvent aussi faire office d'autorité d'enregistrement et de certification (repère A). Ils recensent et contrôlent les certificats. Ils possèdent souvent une liste (repère B) des certificats révoqués. L'interopérabilité Dans certains cas, le certificat peut être associé à l'élément« identifiant» des registres de métadonnées (10e élément dans le Dublin Core) pour l'interopérabilité 4. Certificats et navigation Internet Les certificats sont très largement utilisés sur les sites de e-commerce, webmails ou autres sites sensibles (banques, impôts, etc.) Plusieurs niveaux de chiffrement existent et plusieurs fonctionnalités associées rendent la compréhension des certificats complexe. Certificats X.509 standards Ce sont les certificats classiques, qui existent depuis plusieurs années. Le chiffrement varie entre 40 bits et 256 bits. Cela est dû en partie à la capacité des navigateurs et à la législation en vigueur. Généralement, les sociétés éditrices de certificats proposent 40 bits ou 128 bits garantis. Certificats X.509 étendus Ce sont les certificats qui sont pris en charge dans les navigateurs récents et qui permettent l'affichage d'un fond vert (indiquant ainsi un site de confiance garantie). L'abréviation EV signifie Extended Validation . Certificats X.509 omnidomaines[ Un certificat omnidomaine ou "wildcard" permet de rendre générique une partie du nom de domaine certifié : *.societe.fr → www.societe.fr, toto.societe.fr, titi.societe.fr (mais ni "societe.fr", ni "www.toto.societe.fr". Cf RFC 28185) Certificats X.509 multisites Ces certificats contiennent une liste de noms. Cette solution se base sur le champ subjectAltName. Dans le cas des serveurs web, ces certificats sontutiles pour fournir plusieurs sites HTTPS sur une seule adresse IP. En effet, en HTTPS, l'échange du certificat se fait avant que le navigateur client n'ait transmis le nom de domaine qui l'intéresse.Or, si le certificatfourni par le serveur ne contenait pas le nom requis par le client, celui-ci déclencherait une alerte de sécurité.
  • 30. 29 Certificats OpenPGP Alors que les premiers sites web "sécurisés" ne pouvaient utiliser que des certificats X.509, l'exploitation de la RFC 60916 permet désormais d'utiliser des certificats OpenPGP afin de faire du HTTPS. Certificats et courriels L'utilisation des certificats pour chiffrer, ou signer des courriels se fait en utilisant le standard S/MIME qui permet l'encapsulation des données cryptographiques dans le format MIME des courriels. Lorsqu'un utilisateur est certifié, une icône permet généralement de le savoir : Leur utilisation est controversée, car la signature est ajoutée comme élément supplémentaire au contenu du courriel. Par conséquent, l'utilisation de certificats sur des listes de diffusions peut résulter en l'invalidation de la signature, du fait des modifications effectuées par le moteur traitant la liste. De plus, de nombreuses messageries en ligne (ou « webmails ») et clients de messagerie ne gèrent pas le format S/MIME, ce qui perturbe parfois les utilisateurs voyant une pièce jointe « smime.p7m » apparaître dans leurs messages. Dans le cadre des messageries en ligne, une problématique supplémentaire est en cause, celle de la confiance dans l'opérateur. En effet, utiliser son certificat sur un webmail implique obligatoirement que le fournisseur de ce service partage les éléments secrets du certificat(clé privée etmotde passe), sans quoi il ne peutréaliser la signature, ou le chiffrement. Et cela implique qu'il doive aussi fournir un moteur de cryptographie. Fonctionnement type pour un certificat X.509 Créationd'uncertificat Lorsqu'un diffuseur d'information veut diffuser une clé publique, il contacte une autorité de certification. Celle-ci va recevoir la clé publique et l'identité du diffuseur. Après avoir vérifié l'identité du demandeur par des moyens conventionnels, l'autorité de certification place l'identité et la clé publique fournie dans un conteneur qu'elle signe en utilisant sa clé privée. Le fichier résultant est le certificat. Il est rendu au diffuseur. Utilisationducertificat Le diffuseur utilise le certificat pour ses communications (par exemple sur son site internet): un utilisateur reçoitle certificat, il le vérifie avec la clé racine publique de l'organisme de certification incluse dans son navigateur. Le déchiffrement authentifie le contenu du certificat et prouve que la clé publique et l’identité contenus dans le certificat sont certifiés liés par l'autorité de certification. L'utilisateur sait donc qu'il pourra récupérer les informations envoyées en utilisantla clé publique et qu'elles ne seront pas interceptées par un tiers. Chaînedeconfiance En pratique, la certification peut s'effectuer en cascade : un certificat peut permettre d'authentifier d'autres certificats jusqu'au certificat qui sera utilisé pour la communication. Vulnérabilités Le système de certificats ne présente pas de vulnérabilité technique théorique sous réserve que toutes ses étapes soient correctement implémentées. Le principal risque peutprovenir de la compromission des gestionnaires du système (autorités de certification et gestionnaire de clés).
  • 31. 30  Le contrôle des demandeurs de certification peut être insuffisant ou compromis, permettant à des attaquants de faire certifier des clés publiques frauduleuses.  Des clés privées peuvent être volées chez le diffuseur final ou chez les autorités de certification. Les attaques des diffuseurs ou autorités de certification peuvent être électroniques ou conventionnelles (intrusion physique, corruption...). Des experts de la sécurité informatique ontmis en garde contre l'insuffisance de la sécurité et des contrôles de nombreuses autorités de certifications7. Le virus Stuxnet utilisé contre le programme nucléaire iranien exploitait plusieurs certificats volés.
  • 32. 31 I. Infrastructure à clés publiques (PKI) Une infrastructure à clés publiques (ICP) ou IGC4 ou encore PKI5, est un ensemble de composants physiques (des ordinateurs, des équipements cryptographiques logiciels ou matériel type HSM ou encore des cartes à puces), de procédures humaines (vérifications, validation) et de logiciels (système et application) en vue de gérer le cycle de vie des certificats numériques ou certificats électroniques. Une PKI fournit des garanties permettant de faire a priori confiance à un certificat signé par une autorité de certification grâce à un ensemble de services. Ces services sont les suivants :  enregistrement des utilisateurs (ou équipement informatique) ;  génération de certificats ;  renouvellement de certificats ;  révocation de certificats ;  publication de certificats ;  publication des listes de révocation (comprenant la liste des certificats révoqués) ;  identification et authentification des utilisateurs (administrateurs ou utilisateurs qui accèdent à l'ICP) ;  archivage, séquestre et recouvrement des certificats (option). 1. Rôled'uneinfrastructureàcléspubliques Une ICP délivre des certificats numériques. Ces certificats permettent d'effectuer des opérations cryptographiques, comme le chiffrement et la signature numérique qui offrent les garanties suivantes lors des transactions électroniques :  confidentialité : elle garantit que seul le destinataire (ou le possesseur) légitime d'un bloc de données ou d'un message peut en avoir une vision intelligible ;  authentification : elle garantit à tout destinataire d'un bloc de données ou d'un message ou à tout système auquel tente de se connecter un utilisateur l'identité de l'expéditeur ou de l'utilisateur en question ;  intégrité : elle garantit qu'un bloc de données ou qu'un message n'a pas été altéré, accidentellement ou intentionnellement ;  non-répudiation : elle garantit à quiconque que l'auteur d'un bloc de données ou d'un message ne peut renier son œuvre, c'est-à-dire prétendre ne pas en être l'auteur. Les ICP permettent l'obtention de ces garanties par l'application de processus de vérification d'identité rigoureux et par la mise en œuvre de solutions cryptographiques fiables (éventuellement évaluées), conditions indispensables à la production et à la gestion des certificats électroniques. 2. Composantsdel'infrastructureàcléspubliques L'IETF distingue 4 catégories d'ICP :  l'autorité de certification (AC ou CA) qui signe les demandes de certificat (CSR : Certificate Signing Request) et les listes de révocation (CRL : Certificate Revocation List). Cette autorité est la plus critique ;  l'autorité d'enregistrement (AE ou RA) qui crée les certificats, et effectue les vérifications d'usage sur l'identité de l'utilisateur final (les certificats numériques sont nominatifs et uniques pour l'ensemble de l'ICP) ;  l'autorité de dépôt (Repository) qui stocke les certificats numériques ainsi que les listes de révocation (CRL) ;  l'entité finale (EE : End Entity) qui utilise le certificat (en général, le terme « entité d’extrémité » (EE) est préféré au terme « sujet » afin d’éviter la confusion avec le champ Subject). En complément, on pourra ajouter une cinquième catégorie, non définie par l'IETF :  l'autorité de séquestre (Key Escrow) qui stocke de façon sécurisée les clés de chiffrement créées par les autorités d'enregistrement, pour pouvoir, le cas échéant, les restaurer. Les raisons à cela en sont multiples. La perte de la clef privée par son détenteur ne doit pas être définitive. Enfin, dans 4 Infrastructure de gestionde clés 5 Public Key Infrastructure
  • 33. 32 certains pays, en France en particulier, la loi exige que les données chiffrées puissent être déchiffrées à la demande des autorités nationales. La mise en œuvre d'un séquestre répond à cette exigence.
  • 34. 33 J. La cryptographie asymétrique, C’est une méthode de chiffrement qui s'oppose à la cryptographie symétrique. Elle repose sur l'utilisation d'une clé publique (qui estdiffusée) etd'une clé privée (gardée secrète), l'une permettant de coder le message etl'autre de le décoder. Ainsi, l'expéditeur peututiliser la clé publique du destinataire pour coder un message que seul le destinataire (en possession de la clé privée) peut décoder, garantissant la confidentialité du contenu. Inversement, l'expéditeur peut utiliser sa propre clé privée pour coder un message que le destinataire peut décoder avec la clé publique ; c'est le mécanisme utilisé par la signature numérique pour authentifier l'auteur d'un message. La cryptographie asymétrique, ou cryptographie à clé publique est fondée sur l'existence des fonctions à sens unique et à brèche secrète. Les fonctions à sens unique sont des fonctions mathématiques telles qu'une fois appliquées à un message, il est extrêmement difficile de retrouver le message original. L'existence d'une brèche secrète permetcependantà la personne qui a conçu la fonction à sens unique de décoder facilementle message grâce à un élémentd'information qu'elle possède, appelé clé privée. Supposons qu'Alice souhaite recevoir un message secretde Bob sur un canal susceptible d'être écouté par un attaquant passif Eve.  Alice transmet à Bob une fonction à sens unique pour laquelle elle seule connaitla brèche secrète;  Bob utilise la fonction transmise par Alice pour chiffrer son message secret;  Alice réceptionne le message chiffré puis le décode grâce à la brèche secrète;  Si Eve réceptionne également le message alors qu'il circule sur le canal public, elle ne peut le décoder, même si elle a égalementintercepté l'envoi de la fonction à sens unique, car elle n'a pas connaissance de la brèche secrète. La terminologie classiquement retenue est :  pour la fonction à sens unique : « clé publique »;  pour la brèche secrète : « clé privée ». En pratique, sontutilisées des fonctions de chiffrement classiques, les termes « clé publique » et « clé privée » correspondant alors à des paramètres employés pour ces fonctions. 1. Fonctionnement pratique Alice souhaite pouvoir recevoir des messages chiffrés de n'importe qui. Diffusion des clés publiques Elle génère alors une valeur à partir d'une fonction à sens unique et à brèche secrète à l'aide d'un algorithme de chiffrement asymétrique (liste ici), par exemple RSA10. Alice diffuse à tout le monde la fonction pour coder les messages (notée clé publique) mais garde secrète la fonction de décodage (notée clé privée). 1re étape : Alice génère deux clés. La clé publique (verte) qu'elle envoie à Bob et la clé privée (rouge) qu'elle conserve précieusement sans la divulguer à quiconque.
  • 35. 34 2e et 3e étapes : Bob chiffre le message avec la clé publique d'Alice et envoie le texte chiffré. Alice déchiffre le message grâce à sa clé privée. 2. Chiffrement L'un des rôles de la clé publique est de permettre le chiffrement; c'est donc cette clé qu'utilisera Bob pour envoyer des messages chiffrés à Alice. L'autre clé — l'information secrète — sert à déchiffrer. Ainsi, Alice, et elle seule, peut prendre connaissance des messages de Bob. La connaissance d'une clé ne permet pas de déduire l'autre. Authentification de l'origine D'autre part, l'utilisation par Alice de sa clé privée sur le condensatd'un message, permettra à Bob de vérifier que le message provient bien d'Alice : il appliquera la clé publique d'Alice au condensat fourni (condensat chiffré avec la clé privée d'Alice) et retrouve donc le condensat original du message. Il lui suffira de comparer le condensat ainsi obtenu et le condensat réel du message pour savoir si Alice est bien l'expéditeur. C'est donc ainsi que Bob sera rassuré sur l'origine du message reçu : il appartient bien à Alice. C'est sur ce mécanisme notamment que fonctionne la signature numérique. 3. Analyse fonctionnelle Analogies Le coffre-fort Le chiffrement: Alice a choisi un coffre-fort. Elle l'envoie ouvert à Bob, et en garde la clé. Lorsque Bob veut écrire à Alice, il y dépose son message, ferme le coffre, il n'a pas besoin de la clé pour cela, et le renvoie à Alice. À sa réception, seule Alice peut ouvrir le coffre, puisqu'elle seule en possède la clé, à supposer le coffre inviolable, et que personne ne puisse refaire la clé. L'authentification ou la signature : Alice place un message dans le coffre-fort qu'elle ferme avec sa clé privée avant de l'envoyer à Bob. Si Bob parvient, à l'aide de la clé publique d'Alice (dont il dispose), à lire la lettre c'est que c'est bien celui d'Alice et donc que c'est bien elle qui y a placé le message. 4. La boîte à deux serrures Une autre analogie envisageable serait d'imaginer une boîte avec deux serrures différentes. Lorsque l'on ferme la boîte d'un côté, seule la clé correspondantà l'autre serrure permetl'ouverture de la boîte et vice-versa. Une des clés est privée et conservée secrète, l'autre est dite publique et un exemplaire peut-être obtenu par quiconque souhaite utiliser la boîte. Pour chiffrer un message Bob prend la boîte, y place son message, et la ferme à l'aide de la clé publique. Seul le détenteur de la clé privée permettantd'accéder à l'autre serrure, Alice en l'occurrence, sera en mesure de rouvrir la boîte. Pour signer un message, Alice le place dans la boîte et ferme celle- ci à l'aide de sa clé privée. Ainsi n'importe qui ayantrécupéré la clé publique pourra ouvrir la boîte. Mais comme la boîte a été fermée par la clé privée, cette personne sera assurée que c'est bien Alice, seule détentrice de cette clé, qui aura placé le message dans la boîte et fermé ladite boîte. 5. Inconvénients/limites En contrepartie de leurs propriétés spécifiques, les chiffrements asymétriques sont globalement moins performants que leurs équivalents symétriques : les temps de traitement sont plus longs et, pour un niveau de sécurité équivalent, les clés doivent être beaucoup plus longues. Si le chiffrement asymétrique permet de se prémunir des écoutes passives (eavesdrop), la transmission initiale de la clé publique sur un canal non sécurisé expose à des attaques de l'homme du milieu. Pour se prémunir contre ce risque on fait généralement appel à une infrastructure à clés publiques. 6. Articulation avec le chiffrement symétrique La cryptographie asymétrique répond à un besoin majeur de la cryptographie symétrique : le partage sécurisé d'une clé entre deux correspondants, afin de prévenir l'interception de cette clé par une personne tierce non autorisée, et donc la lecture des données chiffrées sans autorisation. Les mécanismes de chiffrement symétrique étant moins coûteux en temps de calcul, ceux-ci sont préférés aux mécanismes de chiffrementasymétrique. Cependanttoute utilisation de clé de chiffrement symétrique nécessite que les deux correspondants se partagent cette clé, c'est-à-dire la connaissent avant l'échange. Ceci peut être un problème si la communication de cette clé s'effectue par
  • 36. 35 l'intermédiaire d'un medium non sécurisé, « en clair ». Afin de pallier cet inconvénient, on utilise un mécanisme de chiffrement asymétrique pour la seule phase d'échange de la clé symétrique, et l'on utilise cette dernière pour tout le reste de l'échange. 7. Mécanismes d'authentification Un inconvénient majeur de l'utilisation des mécanismes de chiffrement asymétriques est le fait que la clé publique estdistribuée à toutes les personnes : Bob, Carole, … souhaitant échanger des données de façon confidentielle. De ce fait, lorsque la personne possédant la clé privée, Alice, déchiffre les données chiffrées, elle n'a aucun moyen de vérifier avec certitude la provenance de ces données (Bob, ou Carole …) : on parle de problèmes d'authentification. Afin de résoudre ce problème, on utilise des mécanismes d'authentification permettant de garantir la provenance des informations chiffrées. Ces mécanismes sont eux aussi fondés sur le chiffrement asymétrique. Principe d'authentification par chiffrement asymétrique: Objectif : Bob souhaite envoyer des données chiffrées à Alice en lui garantissant qu'il en est l'expéditeur. 1. Bob crée une paire de clés asymétriques: il conserve la clé privée et diffuse librement la clé publique (notamment à Alice) 2. Alice crée une paire de clés asymétriques : clé privée (qu'elle conserve), clé publique (qu'elle diffuse librement, notamment à Bob) 3. Bob effectue un condensat de son message « en clair » puis chiffre ce condensat avecsa propre clé privée 4. Bob chiffre son message avec la clé publique d'Alice. 5. Bob envoie le message chiffré accompagné du condensat chiffré. 6. Alice reçoit le message chiffré de Bob, accompagné du condensat. 7. Alice déchiffre le message avec sa propre clé privée. À ce stade le message estlisible mais elle ne peut pas être sûre que Bob en soit l'expéditeur. 8. Alice déchiffre le condensat avec la clé publique de Bob. Alice utilise la même fonction de hachage sur le texte en clair et compare avec le condensat déchiffré de Bob. Si les deux condensats correspondent, alors Alice peutavoir la certitude que Bob estl'expéditeur. Dans le cas contraire, on peutprésumer qu'une personne malveillante a tenté d'envoyer un message à Alice en se faisant passer pour Bob ! Cette méthode d'authentification utilise la spécificité des paires de clés asymétriques : si l'on chiffre un message en utilisant la clé publique, alors on peut déchiffrer le message en utilisant la clé privée ; l'inverse estaussi possible : si l'on chiffre en utilisant la clé privée alors on peut déchiffrer en utilisant la clé publique. E. Chiffrement Diffie-Hellman6 C’est la méthode que deux agents nommés conventionnellement Alice et Bob peuvent utiliser . Ils se mettre d'accord sur un nombre (qu'ils peuvent utiliser comme clé pour chiffrer la conversation suivante) sans qu'un troisième agent appelé Ève puisse découvrir le nombre, même en ayant écouté tous leurs échanges. Principe  Alice et Bob ont choisi un groupe fini et un générateur g de ce groupe (ils peuvent aussi, comme montré sur la figure, ne décider de ce choix qu'au moment de l'échange, et se le communiquer en clair, ce qui n'améliore pas les chances d'Ève)  Alice choisit un nombre au hasard a, élève g à la puissance a, et dit à Bob ga(calculé dans le groupe ; si par exemple ils travaillent dans le corps fini Z/pZ, ils échangeront les nombres modulo p, comme montré dans l'exemple ci-dessous) ;  Bob fait de même avec le nombre b ;  Alice, en élevant le nombre reçu de Bob à la puissance a, obtient gba 6 Des auteurs Whitfield Diffie et Martin Hellman