Quelques définitions: La cryptologie est la science des messages secrets. Longtemps restreinte aux usages diplomatiques et militaires, elle est maintenant une discipline scientifique à part entière, dont l’objet est l’étude des méthodes permettant d’assurer les services d’intégrité, d’authenticité et de confidentialité dans les systèmes d’information et de communication. 1)Un service d’intégrité garantit que le contenu d’une communication ou d’un fichier n’a pas été modifié. Par exemple, on peut souhaiter vérifier qu’aucun changement du contenu d’un disque dur n’a eu lieu : des produits commerciaux, mettant en jeu des méthodes cryptologiques, sont disponibles à cet effet. 2)Un service d’authenticité garantit l’identité d’une entité donnée ou l’origine d’une communication ou d’un fichier. Lorsqu’il s’agit d’un fichier et que l’entité qui l’a créé est la seule à avoir pu apporter la garantie d’authenticité, on parle de non-répudiation. Le service de non-répudiation est réalisé par une signature numérique. Une définition précise sera donnée plus loin. 3)Un service de confidentialité garantit que le contenu d’une communication ou d’un fichier n’est pas accessible aux tiers. Des services de confidentialité sont offerts dans de nombreux contextes : – en téléphonie mobile, pour protéger les communications dans la partie “aérienne”; – en télévision à péage pour réserver la réception des données aux abonnés ; – dans les navigateurs, par l’intermédiaire du protocole SSL (Secure Socket Layer), dont l’activation est souvent indiquée par un cadenas fermé représenté en bas de la fenêtre. La cryptologie se partage en deux sous-disciplines, également importantes : la cryptographie ; dont l’objet est de proposer des méthodes pour assurer les services définis plus haut. La cryptanalyse qui recherche des failles dans les mécanismes ainsi proposés. Exemple Historique Lorsque Jules César envoyait des messages à ses généraux, il ne faisait pas confiance à ses messagers. Il remplaçait donc tous les A contenus dans ses messages par des D, les B par des E, et ainsi de suite pour tout l'alphabet. Seule la personne connaissant la règle du « décalage par trois » pouvait déchiffrer ses messages. Principe
Texte Chiffrement Texte Déchiffrement Texte
clair chiffré déchiffré Mécanismes de la cryptographie Un algorithme de cryptographie ou un chiffrement est une fonction mathématique utilisée lors du processus de cryptage et de décryptage. Cet algorithme est associé à une clé (un mot, un nombre ou une phrase), afin de crypter le texte en clair. Avec des clés différentes, le résultat du cryptage variera également. La sécurité des données cryptées repose entièrement sur deux éléments : 1) L’invulnérabilité de l'algorithme de cryptographie. 2) La confidentialité de la clé. Un système de cryptographie est constitué d'un algorithme de cryptographie, ainsi que de toutes les clés et tous les protocoles nécessaires à son fonctionnement.
Chiffrement de César Le chiffrement de substitution est un exemple extrêmement simple de cryptographie. Il substitue une information par une autre. Cette opération s'effectue généralement en décalant les lettres de l'alphabet. Le code secret de Jules César est à la base de la cryptographie conventionnelle. Dans ce cas, l'algorithme constitue à décaler les lettres de l'alphabet et la clé correspond au nombre de caractères de décalage. Par exemple, si vous codez le mot « SECRET » à l'aide de la valeur 3 de la clé de César, l'alphabet est décalé de manière à commencer à la lettre D. Ainsi, l'alphabet : ABCDEFGHIJKLMNOPQRSTUVWXYZ si vous décalez le début de 3 lettres, vous obtenez : DEFGHIJKLMNOPQRSTUVWXYZABC où D = A, E = B, F = C, etc. Avec ce procédé, le texte en clair « SECRET » est crypté en « VHFUHW ». Pour autoriser un autre utilisateur à lire le texte chiffré, indiquez-lui que la valeur de la clé est égale à 3. Evidemment, ceci est considéré comme une cryptographie extrêmement vulnérable de par les standards actuels. Mais, cette méthode convenait à César et illustre le mode de fonctionnement de la cryptographie conventionnelle. Cryptographie de clé publique Les problèmes de distribution des clés sont résolus par la cryptographie à clé publique. Ce concept a été introduit par Whitfield Diffie et Martin Hellman en 1975. (Il est maintenant prouvé que les services secrets britanniques avaient fait cette même découverte plusieurs années avant Diffie et Hellman et avaient protégé ce secret militaire (sans en faire aucune utilisation). La cryptographie à clé publique est un procédé asymétrique utilisant une paire de clés pour le cryptage : une clé publique qui crypte des données et une clé privée ou secrète correspondante pour le décryptage. Vous pouvez ainsi publier votre clé publique tout en conservant votre clé privée secrète. Tout utilisateur possédant une copie de votre clé publique peut ensuite crypter des informations que vous êtes le seul à pourvoir lire. Même les personnes que vous ne connaissez pas personnellement peuvent utiliser votre clé publique. D'un point de vue informatique, il est impossible de deviner la clé privée à partir de la clé publique. Tout utilisateur possédant une clé publique peut crypter des informations, mais est dans l'impossibilité de les décrypter. Seule la personne disposant de la clé privée correspondante peut les décrypter. La cryptographie de clé publique présente un avantage majeur : en effet, elle permet d'échanger des messages de manière sécurisée sans aucun dispositif de sécurité. L'expéditeur et le destinataire n'ont plus besoin de partager des clés secrètes via une voie de transmission sécurisée. Les communications impliquent uniquement l'utilisation de clés publiques et plus aucune clé privée n'est transmise ou partagée. Elgamal (d'après le nom de son inventeur, Taher Elgamal),RSA (d'après le nom de ses inventeurs, Ron Rivest, Adi Shamir et Leonard Adleman), Diffie-Hellman (également d'après le nom de ses inventeurs) et DSA, l'algorithme de signature numérique (élaboré par David Kravitz), sont des exemples de systèmes de cryptographie de clé publique. La cryptographie conventionnelle étant auparavant la seule méthode pour transmettre des informations secrètes, les coûts de transmission et de distribution sécurisées des clés ont relégué son utilisation aux institutions disposant de moyens suffisants, telles que des gouvernements et des banques. Le cryptage de clé publique représente une révolution technologique qui offre à tout citoyen la possibilité d'utiliser une cryptographie invulnérable.
Résumé La cryptographie est l’art de pouvoir transmettre des messages de telle manière que seul le destinataire soit capable de les déchiffrer. Cela peut être réalisé grâce à un crypto système qui est, par définition, la donnée d’un quintuplet: (K,E,E’, e, d) où: - La clé K est une liste finie de paramètres mathématiques nécessaires à l’élaboration du crypto système. - l’ensemble E est l’ensemble des « textes » à coder - l’ensemble E’ est l’ensemble des « textes » codés - e est une application de E dans E’ appelée fonction de codage. - d est une application de E’ dans E dite fonction de décodage ou de déchiffrement avec: Pour tout x dans E: d(e(x)=x Le système est dit à clé symétrique si tous les éléments de K sont connus à la fois de l’expéditeur et du destinataire des messages; il est dit à clé publique si tous les éléments de K sont connus seulement par le destinataire, certains d’entre eux étant publics , c’est à dire à la disposition de tout expéditeur potentiel. Les intervenants (expéditeur et destinataire) sont usuellement désignés par Bob et Alice selon l’usage en vigueur.