Rechercher
Contactez-nous Suivez-nous sur Twitter En francais English Language
 

De la Théorie à la pratique











Abonnez-vous gratuitement à notre NEWSLETTER

Newsletter FR

Newsletter EN

Vulnérabilités

Se désabonner

GIROP : le B.a-ba du chiffrement

mai 2009 par Emmanuelle Lamandé

Pour le deuxième atelier sécurité du GIROP, Gérard Péliks, Expert en sécurité chez EADS, a choisi de nous initier au chiffrement. Science des messages secrets, la cryptologie se divise en deux écoles : la cryptographie, qui est l’art de rendre l’écriture secrète, et la cryptanalyse, qui en fait son analyse. Au cours de son exposé, Gérard Péliks est ainsi revenu sur les points marquants de son histoire et les principales méthodes de chiffrement (symétrique et asymétrique). L’ARCSI et la société SmartQuantum étaient également représentées, la première pour nous faire part de son expérience en la matière et la deuxième pour nous introduire une technologie encore peu connue du grand public, la cryptographie quantique.

A l’ère du « pré-numérique », le chiffrement a déjà fait ses preuves et marqué des tournants décisifs dans l’histoire. Pendant l’antiquité, il a permis d’épargner la ville de Sparte à deux reprises contre les attaques de l’armée perse. En 480 avant J.C., tout d’abord, on se souviendra de la bataille navale de Salamine. En réponse à l’insoumission de Sparte face aux Perses, l’armée perse choisit d’apprêter des centaines de bateaux en vue d’assaillir la ville de Sparte. Cependant, un lacédémonien exilé à Persépolis, au courant de l’attaque, trouva un subterfuge pour prévenir Léonidas, roi de Sparte. C’est ainsi qu’il grava un message sur une tablette de bois qu’il recouvrit de cire, afin qu’il s’apparente à un simple brouillon et passe ni vu ni connu. Léonidas reçut cette tablette vierge et ne s’en préoccupa pas. Surprise de cet envoi vierge, c’est sa femme qui aura finalement l’idée de gratter la cire. Lorsque la flotte perse aborda le détroit de Salamine, les spartiates attaquèrent. Le bateau amiral perse fut coulé et Sparte sauvée. Ce n’était pas encore de la cryptologie à l’époque, mais de la stéganographie, puisqu’il s’agissait de cacher le contenant, pas le contenu. En 404 avant J.C., les perses décidèrent d’attaquer Sparte par les terres Ce fut la bataille terrestre des Thermopyles. Cette fois-ci, Sparte fut prévenue de l’attaque par un messager qui portait sur sa ceinture un message codé. En enroulant la ceinture autour d’une scytale, le message se recomposait, en clair, suivant une génératrice du cylindre. Avec la scytale, les spartiates ouvraient la voie à la cryptologie.

Il y a 2050 ans, la cryptographie connaissait une avancée avec le Chiffre de César. Jules César utilisait un registre à décalage (de 3 lettres) pour faire parvenir ses messages aux armées, ainsi qu’à certains de ses confidents, comme Cicéron. Il s’agissait alors d’un chiffrement par substitution simple : chaque lettre du texte en clair est remplacée par une autre lettre à distance fixe dans l’alphabet (le « A » devient un « D », le « B » un « E », …). Le Chiffre de César ne résista pas à l’analyse fréquentielle d’Al Kindi, découverte au Moyen Age, il y a 1200 ans. Cette méthode se basait sur la fréquence d’apparition des lettres dans 4 langues. La cryptanalyse faisait alors un pas en avant. C’était sans compter l’apparition du Carré de Vigenère pendant la Renaissance, il y a 450 ans. Dans ce système polyalphabétique, chaque lettre dispose de son alphabet et sera chiffrée grâce à un mot-clé, connu uniquement par l’expéditeur et le destinataire. Cette méthode rend l’analyse fréquentielle inefficace. La réglette de Saint-Cyr est une application du Carré de Vigenère, qui repose sur un alignement par rapport aux lettres du mot clé. Il faudra attendre 300 ans et Sir Babbage pour que le Carré de Vigenère soit cassé.

Le chiffrement : un facteur déterminant dans l’histoire

Pendant la première guerre mondiale, en 1917, un télégramme du chancelier allemand à son ambassadeur au Mexique est décrypté par les anglais, ce qui précipita l’entrée en guerre des américains. En 1918, le Capitaine Painvin réussit à percer le secret du chiffre ADFGVX utilisé par les Allemands. C’est ainsi qu’il déchiffrera le télégramme, dit « de la victoire », car cette découverte engendrera la défaite des allemands et la signature de l’armistice.

Le chiffrement aura également eu un rôle à jouer lors de la seconde guerre mondiale. On se souviendra de la machine allemande de chiffrement Enigma qui aura permis aux cryptographes de prendre le pas sur les cryptanalystes pendant un temps. Dans ce système électromécanique, chaque lettre est remplacée par une autre, avec un modèle de substitution qui change d’une lettre à l’autre. Quand on appuie sur une touche du clavier de la machine, alimentée par une pile électrique, une lampe s’allume indiquant quelle lettre codée utiliser en guise de substitution. La machine fonctionne grâce à 3 rotors, qui disposent de 26 positions chacun. Pour chaque lettre tapée, le premier rotor tourne d’un cran. Après 26 lettres, il est revenu à sa position initiale, et le second rotor tourne alors d’un cran... Pour une touche appuyée, vous avez 26*26*26 possibilités, multipliées par des combinaisons d’un tableau électronique de correspondance de lettres. Comprenant les enjeux d’une telle machine dans l’avancée du conflit, les cryptanalystes s’étaient réunis par milliers en Angleterre, au Bletchley Park, pour décrypter Enigma. Ce fut sous l’impulsion du célèbre Alain Turing que les anglais réussirent à casser la machine allemande. Grâce à cela, les anglais connaissaient les faits et gestes des allemands, ce qui causa la perte d’Hitler. Les cryptanalystes reprennent ainsi le dessus sur les cryptographes.

L’ordinateur marque l’entrée dans l’ère du chiffrement numérique

L’arrivée des ordinateurs marqua l’entrée dans l’ère du chiffrement numérique. Ce dernier s’articule autour de 2 écoles : le chiffrement symétrique et le chiffrement asymétrique. Il repose sur un algorithme et une clé. Le secret ne se trouve pas dans l’algorithme, celui-ci étant public, mais dans la clé.

Le chiffrement symétrique (à clé secrète) repose sur les principes suivants :
Deux personnages, Alice et Bob, souhaitent s’échanger un message secret. Ils possèdent la même clé secrète. Bob chiffre son message en clair avec sa clé secrète, puis l’envoie à Alice qui le reçoit chiffré. Alice, via sa clé secrète, déchiffre le message de Bob et peut alors en prendre connaissance en clair. Cependant, pour que ce système soit efficace, quatre conditions doivent être respectées :
- La clé secrète doit restée secrète.
- La clé doit être générée de manière aléatoire.
- Elle doit être renouvelée périodiquement.
- Enfin, elle doit avoir une taille minimum.

En 1973, le National Bureau of Standards (aujourd’hui appelé National Institute of Standards and Technology) lance un appel pour la création d’un algorithme de chiffrement. S’appuyant sur le projet « Lucifer », proposé par IBM en 1974, le DES (Data Encryption Standard) sera finalement choisi et approuvé par le NBS en 1978. Il s’agit d’un système de chiffrement symétrique par blocs de 64 bits, reposant sur une clé de 56 bits. Ayant atteint ses limites en terme de sécurité, cet algorithme a aujourd’hui laissé place à l’une de ses variantes : le 3DES (TripleDES). Développé par Walter Tuchman, cet algorithme enchaîne 3 applications de l’algorithme DES sur le même bloc de données de 64 bits, avec deux ou trois clés DES différentes. En 2001, suite à un appel d’offre pour trouver un algorithme plus puissant que le DES, l’AES (Advance Encryption Standard) vit le jour. Développé par Joan Daemen et Vincent Rijmen, l’AES est un chiffrement par blocs de 128 bits, qui supporte différentes longueurs de clés : 128, 192 et 256 bits. La Loi de Moore prévoit le doublement de la puissance de calcul des processeurs tous les 18 mois. D’après ce schéma, une clé de 78 bits est suffisante à l’heure actuelle. En 2050, nous aurons besoin d’une clé de 110 bits. Avec une clé d’au moins 128 bits, il y a de la marge !

Le chiffrement symétrique aurait été parfait s’il ne posait pas deux problèmes majeurs :
- Comment échanger la clé de chiffrement de manière sûre ?
- Comment gérer la multiplication du nombre de clés nécessaires ? En effet, dans un tel système, pour 1.000 utilisateurs, 499.500 clés secrètes seraient nécessaires. Le chiffrement symétrique atteint donc rapidement ses limites.

Un rêve « haut en couleurs » résout la problématique d’échange de clés

Il faudra attendre Diffie et Hellman, en 1976, pour répondre à la problématique d’échange de clés. Comment faire éclore un secret sans jamais se l’échanger ? L’idée lumineuse est apparue en rêve à Diffie, faisant alors le parallèle avec le mélange des couleurs. En effet, lorsque vous mélangez du bleu et du jaune, vous obtenez du vert et cette couleur est irréversible. Une fonction à sens unique est une fonction irréversible.

Exemple :
- La couleur bleue est le secret d’Alice
- La couleur verte est le secret de Bob
- Chacun d’entre eux mélange sa couleur secrète à la couleur jaune (qui elle est connue « publique ») et envoie le mélange obtenu à l’autre : Alice envoie donc à Bob un mélange de bleu et de jaune tandis que Bob va envoyer à Alice un mélange de vert et de jaune. Une fois le mélange réceptionné, chacun va y ajouter sa couleur secrète (Alice du bleu, Bob du vert). Alice et Bob partagent maintenant la même couleur, sans jamais s’être dévoilés leurs secrets respectifs. D’après le schéma de Diffie et Hellman, le partage d’une clé s’effectue sur le même principe.

Ellis, Cocks et Williamson … à l’origine du chiffrement à clés publiques

C’est ainsi que le chiffrement à clés publiques (ou chiffrement asymétrique) vit le jour. Néanmoins, les véritables inventeurs du système à clé publique ne sont pas ceux que l’on pense. En effet, en 1973, Ellis, Cocks et Williamson, qui travaillaient au Government Communications Headquarters de Cheltenham, avaient déjà la main mise sur ce qui deviendra ultérieurement le chiffre asymétrique RSA. Cependant, dans le cadre de leur fonction militaire, ils ne purent en dire mot. Trois professeurs du MIT feront la même conclusion en 1978. Ils s’agissait de Rivest, Shamir et Adelman qui donneront naissance au système RSA.
Dans ce système, Bob et Alice disposent chacun d’une clé privée et d’une clé publique. Alice souhaite partager un secret avec Bob. Pour ce faire, ce dernier lui transmet sa clé publique. Alice chiffre son secret avec la clé publique de Bob. Elle lui transmet le message chiffré. Bob va le déchiffrer grâce à sa clé privée (la clé publique de Bob correspond à sa clé privée) et découvrir le secret d’Alice.

Le chiffrement asymétrique permet de résoudre les deux problèmes du chiffrement symétrique, puisque les problématiques d’échange de clés et du nombre de clés nécessaires sont résolues (1.000 clés privées nécessaires pour 1.000 utilisateurs). Néanmoins, le chiffrement asymétrique pose lui-même deux sérieux problèmes :
- Comment prouver que la clé publique est bien celle de celui à qui on veut envoyer un message chiffré ?
- A résistance égale, le chiffrement asymétrique est 100 à 1000 fois plus lent que le chiffrement symétrique.

Le certificat : un gage de confiance

Pour prouver l’appartenance d’une clé publique à telle personne, il faudrait que cette clé publique se trouve dans un certificat. Ce dernier, en signant électroniquement le certificat, va venir attester que la clé publique appartient à la bonne personne. Il existe différentes autorités de certification : des autorités racines et des autorités intermédiaires. Parmi les autorités de certification racine, on retiendra Verisign, et les français Certinomis, CertEurope, Keynectis, Chambersign, Dhimyotis…

Créé par Philip Zimmermann, PGP est un système de cryptographie hybride combinant les fonctionnalités du chiffrement symétrique et asymétrique.

Pour assurer l’intégrité des données, il faut pouvoir empêcher toute modification non autorisée des messages transitant entre l’expéditeur et le destinataire. Il s’agit donc de sceller le message en lui associant une « empreinte ». Cette dernière peut être construite en lui associant une fonction de hachage. Les risques de collision existent cependant. Les empreintes MD5 et SHA1 ont d’ores et déjà été mises à mal. A l’heure actuelle, il reste SHA2. Un appel d’offre a été lancé par le NIST pour développer SHA3. Un certain nombre de sociétés ont répondu à cet appel. Le résultat ne sera connu qu’en 2012.

Deux cas d’application : signature électronique et VPN

Si vous souhaitez envoyer un document en prouvant que c’est bien vous qui l’avez envoyé, vous allez pouvoir y associer une signature électronique. Pour ce faire, il vous suffit de chiffrer l’empreinte, calculée avec une fonction de hashage, avec votre clé privée et de joindre cette empreinte chiffrée au message. Le destinataire utilise alors la clé publique du signataire pour pour déchiffrer l’empreinte et la fonction de hashage pour recalculer l’empreinte du message reçu. La comparaison entre l’empreinte déchiffrée et l’empreinte recalculée établit la signature du message.

Ce que prouve une signature électronique :
- l’imputabilité : on sait qui a signé,
- l’intégrité : le document n’a pas été modifié,
- la non-répudiation : on ne peut pas la renier.

Pour ce qui est des réseaux privés virtuels (VPN), il s’agit de pouvoir pallier le manque de protection existant entre deux réseaux privés distincts quand le message passe d’un réseau privé à l’autre en empruntant un réseau public, non sécurisé. L’objectif est de créer un tunnel privé virtuel chiffré qui fera la liaison entre ces deux réseaux privés. Deux protocoles s’opposent en la matière : IPSec et SSL.

Par exemple, le site « internet-signalement.gouv.fr » est un site Web sécurisé par SSL. On reconnaît un site sécurisé quand « https:// » apparaît dans la barre de tâche et lorsque qu’un cadenas fermé se trouve en bas à droite de la page. Si vous double-cliquez sur le cadenas, vous pourrez voir tous les détails concernant le certificat (qui a signé le certificat ? Quelle sont ses dates de validité ?...).

La cryptographie quantique : « si un intrus essaie d’intercepter les photons, leur état changera de manière irréparable »

Invitée surprise, la société SmartQuantum nous a, quant à elle, présenté le chiffrement quantique, une technologie plus récente, qui va, selon François Guignot, son PDG Europe, tout remettre en question. La cryptographie quantique ne repose pas sur un principe mathématique mais sur une loi de la physique, ce qui en garantit, selon lui, la pérennité. Elle résulte de l’alliance entre les lois du code secret et la physique quantique. La cryptographie quantique résout le problème de la distribution de clés. Au lieu de transmettre les clés, ce procédé les forgent de manière dynamique grâce aux principes universels de la physique quantique. Dans ce système, l’émetteur transmet au récepteur une chaîne continue de bits véhiculés par des grains de lumière, appelés photons. Si un intrus essaie de les intercepter, leur état quantique changera de manière irréparable. L’émetteur et le récepteur détecteront la tentative d’espionnage. La chaîne corrompue est alors rejetée. Aucun de ces bits douteux ne sera utilisé pour établir une clé. Seuls les photons intègres fournissant une information sans risque participent à la génération de clés secrètes. Si un intrus tente de cloner les informations transportées par les photons envoyés sur la fibre optique reliant deux interlocuteurs, la mécanique quantique garantit que cette attaque entraînera une perturbation détectable. Les utilisateurs légitimes de la ligne retarderont alors l’envoi d’informations sensibles jusqu’à ce que la sécurité du lien soit de nouveau assurée.


Pour approfondir le sujet :

- Le portail de wikipedia : fr.wikipedia.org/wiki/Portail:cryptologie
- Le portail de la DCSSI : www.ssi.gouv.fr

- Histoire des codes secrets de Simon Singh
- La science des secrets de Jacques Stern
- Mission d’un cryptologue français en Russie, texte revu et corrigé par Gilbert Eudes
- ENIGMA de Robert Harris


Articles connexes:


Voir les articles précédents

    

Voir les articles suivants