THJ16/Les grands classiques de la cryptologie moderne
Un article de HackaWiki.
La cryptologie moderne est une subtile alchimie des connaissances acquises par les anciens, de l'utilisation des chiffres binaires exploités par des systèmes informatiques puissants, ainsi que de la découverte du principe des clés publiques et ce, en attendant des résultats concrets du cryptage quantique qui refera l'histoire.
Newbie
By Charles-André Roh
Sommaire |
La loi des bits
Les débuts de la cryptologie moderne remontent vers la fin de la dernière guerre mondiale. A cette période, les décodeurs anglais avaient largement pris le dessus sur les concepteurs de codes allemands. Les alliés avaient déjà percés les chiffres de la machine Enigma, au moyen des bombes de Turing. Un énorme appareil nommé "Colossus" combattait efficacement une autre forme de chiffrement, encore plus performante : le chiffre de Lorenz.
"Colossus" ouvrait, alors, une nouvelle voie dans le développement de la cryptographie pendant la seconde moitié du 20ème siècle. Et durant ces 50 années, tout s'est passé excessivement vite. Fin de la guerre, "Colossus" est détruit et on interdit de parler à toutes les personnes ayant travaillé sur cette réalisation. Les plans de ce premier ordinateur au monde perdus, d'autres chercheurs se voient crédités de cette invention. En 1945, Eckert et Mauchly de l'université de Pennsylvanie mettent au point l'ENIAC, déjà dix fois plus rapide que "Colossus".
Utiliser un tel calculateur pour chiffrer un message ressemble dans une très large mesure aux formes traditionnelles de chiffrement de transposition et de substitution. Toutefois il faut tenir compte de différences essentielles. Cet ordinateur peut déjà simuler des scénarios et est plus rapide que les machines à chiffrer de l'époque. Enfin l'ordinateur travaille non plus avec des lettres mais avec des chiffres.
Et ce sont ces fameux chiffres qui sont à l'origine de la cryptologie moderne. Le plus surprenant… il n'y a que deux chiffres : le 0 et le 1. Et oui, tous les systèmes modernes que nous connaissons travaillent uniquement sur ces deux chiffres binaires (binary digits) ou bits et selon divers conventions (dont le plus connu demeure l'ASCII). Sachant qu'il y a 128 manières différentes de disposer une combinaison de 7 chiffres binaires, les méthodes de transposition deviennent un véritable jeu d'enfant.
Par exemple, en convertissant en nombre binaire le code du caractère utilisé par son ordinateur, on obtient, avec le mot "CHIEN" :
1000011 1001000 1001001 1000101 1001110
on peut très bien permuter le premier chiffre avec le deuxième, le troisième avec le quatrième et ainsi de suite, ce qui nous donne:
0100011 1010000 1001001 1000101 1001110
Cet exemple présente toutefois un important défaut, le choix des inversions est insuffisant et trop de nombres demeurent identiques après la substitution.
Mais c'est déjà un début car peu de particuliers et d'entreprises disposaient alors d'ordinateurs. Ce n'est qu'en 1947 qu'apparurent les premiers transistors et en 1953, IBM lance son premier ordinateur, suivi, quatre ans plus tard d'un langage de programmation destiné aux "simples utilisateurs" : le Fortran. 1959 voit arriver les circuits intégrés et la porte d'une nouvelle ère informatique est définitivement ouverte. Si bien qu'en 1973, le National Bureau of Standards américain, demande la création d'un standard de chiffrement permettant aux entreprises de s'entretenir en toute confidentialité. IBM proposa un algorithme nommé "LUCIFER", considéré à l'époque comme l'un des plus sûrs cryptosystèmes sur le marché et fut adopté après une intervention du NSA qui exigeait un affaiblissement (une version 56 bits) pour tenter de conserver la mains mise du gouvernement sur tous les procédés de cryptage au monde.
Le DES
C'est ainsi que naquit le Data Encryption Standard, plus connu sous le nom de DES. Le principe du DES peut être sommairement décrit comme suit : le message en clair est traduit en une suite de nombres binaires. Cette suite est répartie en blocs de 56 bits et le cryptage est effectué séparément sur chaque bloc. Dans chaque bloc, les 56 bits sont brassés puis séparés en deux demi blocs. Après une permutation par substitution du deuxième demi bloc, on ajoute ces données au premier demi bloc qui génère, par sa forme, un nouveau bloc de 56 bits et ainsi de suite.
Le problème principal du DES se situe dans le principe de la distribution de la clé au destinataire du message chiffré, maillon faible de ce procédé. En effet, il fallait, avant d'expédier un message crypté, contacter le destinataire pour lui donner la clé de déchiffrement. Cette dangereuse opération réduisait à néant la puissance du DES. Il fallait dès lors trouver une solution pour supprimer cette phase de communication de clé que l'on dénomme symétrique.
Une idée consistait à proposer une clé spécifique pour la création du message crypté et une autre clé pour le décryptage. Naissait alors le principe des clés asymétriques et des clés publiques.
Les clés publiques
Vers 1975, chercheurs "extravagants", Diffie, Hellman et Merkle, anticipèrent le développement du réseau ARPA. ARPA était alors un important réseau de transmissions développé par le département américain de la défense destiné à connecter des ordinateurs militaires sur de grandes distances et de manière fiable - son développement mondial devint plus connu, en 1982, sous le nom d'Internet. Ces chercheurs voulaient trouver une solution visant à détruire un cercle vicieux connu depuis des milliers d'années et qui veut que deux personnes, avant d'échanger un secret (le message crypté), doivent déjà partager un secret (la clé).
Cette équipe de scientifiques n'atteint pas les résultats souhaités mais développa toutefois des applications de solide réputation jusqu'en 1982, ainsi que la philosophie et les bases d'une procédure de transfert qui intéressât par la suite d'autres chercheurs.
Le RSA
Parmi ces autres chercheurs intéressés par le développement des clé publiques, trois personnes se distinguèrent tout particulièrement, Rivest, Shamir et Adleman, qui dès 1977 développèrent le chiffre le plus influent de la cryptologie moderne : le RSA (acronyme du nom des concepteurs). Cinq années furent nécessaires pour concrétiser cette application dont le principe est dépendant d'un chiffrement asymétrique basé sur une fonction à sens unique du type modulo.
De manière fort simpliste, disons que le principe peut être défini comme suit : Une personne, Alice, veut pouvoir communiquer de manière confidentielle avec d'autres correspondants. Alice produit alors une clé de cryptage dite publique (A) ainsi qu'une autre clé nommée privée (B), qu'elle conservera de manière confidentielle. La clé publique (A) est annoncée officiellement au monde entier dans un annuaire de clés. Bernard souhaitant expédier un message crypté à Alice va tout d'abord chercher dans cet annuaire la clé publique d'Alice. Bernard chiffrera son message avec cette clé publique et adressera son message crypté à Alice. À réception du message, Alice décryptera ce message en utilisant sa clé privée (B). Si une personne interceptait le message de Bernard, elle ne pourrait pas décrypter ce message sans connaître la clé privée d'Alice. Et c'est la toute la force de ce cryptosystème qui utilise une fonction mathématique à sens unique et non réversible (voir l'article « Comprendre et casser RSA », paru dans le Manuel 8, pour plus de détails).
Le PGP
Très connu par les utilisateurs d'Internet, le PGP (Pretty Good Privacy) est le résultat d'un long calvaire d'un informaticien américain : Phil Zimmermann. Pourquoi un calvaire ? À cause des traquas juridiques menés par le gouvernement américain et ses innombrables agences de sécurité (mais le NSA en tête) qui ne pouvaient accepter qu'un simple citoyen puisse offrir au monde entier une procédure de cryptage aussi redoutable et aussi performante que celles utilisées par les gouvernements. Pressions de tout genre, emprisonnement, accusations et autres gâteries ont été infligées à ce développeur de génie qui a certes repris le principe du RSA, mais en y ajoutant des subtilités assez remarquables. De manière simplifiée, disons que Phil. Zimmermann a fait en sorte qu'un intrus ne puisse pas pénétrer l'ordinateur d'Alice et tenter de trouver les éléments constituant sa clé publique. On dispose aussi depuis quelque temps d'une implémentation libre équivalente à ce système : GPG (http://www.gpg.org).
Et les autres cryptosystèmes ?
Nous avons abordé rapidement trois des principales conceptions cryptographiques des temps modernes. Il y en a toutefois d'autres, tout aussi importantes, mais qui sont moins courantes ou dépendantes d'applications existantes ou tout simplement déjà largement dépassées. Il faut aussi tenir compte que le domaine de la cryptographie est une jungle ou chaque développeur ou concepteur essaye de surpasser son concurrent.
De surcroît, cette jungle est muselée la plupart du temps par les services de sécurité de bien des gouvernements et que des intrigues et des secrets d'état perturbent volontairement les règles du jeu. On a vu précédemment que pendant la durée du dernier conflit mondial, des chercheurs créèrent le premier ordinateur au monde et qu'à la fin de la guerre, machines et plans furent détruits. Il ne s'agissait pas exclusivement d'une volonté militaire de maintien du secret mais aussi une volonté économique.
Dans un autre registre, le gouvernement anglais a annoncé, il y a quelques années, que le système des clés publiques n'appartiendrait pas à Diffie, Hellman et Merkle pour l'invention du système et à Rivest, Shamir et Adleman pour la mise au point du système RSA, mais au Government Communications Headquarters (GCHQ), établissement ultra secret fondé sur les ruines de Bletchley Park après la seconde guerre mondiale.
Tout comme la cryptologie antique, la cryptologie moderne est une science manipulée et exploitée par les gouvernements qui "donnent" des miettes aux simples citoyens pour jouer. Or, Phil Zimermann a démontré qu'avec ces miettes on pouvait réaliser un instrument efficace et que grâce à lui, tous les utilisateurs d'Internet peuvent communiquer de manière confidentielle. Restons toutefois attentifs au fait que Phil. Zimmerman a certainement été dans l'obligation de "négocier" avec le NSA, donc tout n'est pas si sûr !
La seule chose qui soit sûre à l'heure actuelle, c'est que nous ne connaissons qu'une infime réalité des développements existants dans ce domaine car la cryptanalyse et une science peu ordinaire. Un document confidentiel, en 1987, disait : …La plupart des scientifiques cherchent à publier les premiers résultats de leurs travaux, car par cette diffusion, leurs travaux prennent toute leur valeur. Par contre, la plus grande valeur en cryptographie est atteinte en dissimulant l'information à des adversaire potentiels".
Comme quoi… tout est bien caché en cryptographie.
