En matière de chiffrement , on pense facilement aux films montrant de longs morceaux de code clignotant à l'écran avec des messages déroutants. Ou encore la récente bataille entre Apple et le FBI au sujet d'informations cryptées , dans laquelle le gouvernement américain a forcé Apple à décrypter les informations contenues dans l'iPhone de l'auteur de la fusillade à San Bernardino, aux États-Unis. En termes simples, le cryptage est une technique permettant de rendre le contenu illisible pour toute personne ne possédant pas la clé . Les espions utilisent le cryptage pour envoyer des informations secrètes, les commandants militaires envoient du contenu crypté pour coordonner les combats et les criminels utilisent le cryptage pour échanger des informations et planifier des actions dynamiques.
Les systèmes de cryptage apparaissent également dans presque tous les domaines liés à la technologie, cachant non seulement des informations aux criminels, aux ennemis ou aux espions, mais également authentifiant et clarifiant des informations très basiques et très importantes pour un individu. L’histoire du chiffrement présentée dans cet article inclut des techniques de chiffrement vieilles de plusieurs siècles, car elles sont aussi complexes que les algorithmes qui les créent. L'article contient également des commentaires et des évaluations des plus grands experts actuels du chiffrement, couvrant de nombreux aspects du chiffrement : l'historique, l'état actuel et la manière dont le chiffrement s'infiltre dans la vie.
Origine du cryptage moderne
Le professeur Martin Hellman était assis à son bureau tard dans la nuit de mai 1976. 40 ans plus tard, au même bureau, il a parlé de ce qu'il avait écrit ce soir-là. Hellman a écrit une étude intitulée : « Nouvelles orientations en matière de cryptographie », et ce document de recherche a changé la façon dont nous gardons les secrets aujourd'hui, et a au moins de nombreux impacts sur le cryptage Internet à l'heure actuelle.
Avant ce document, le chiffrement était un principe très clair. Vous disposez d’une clé pour décrypter le contenu crypté et illisible.
Et pour que le cryptage fonctionne efficacement, la clé, ou le mot de passe, doit être sécurisé . Aujourd’hui, avec les systèmes de cryptage complexes, la même chose s’applique. La complexité de la technologie et l’importance de la cryptographie depuis la Seconde Guerre mondiale ont donné naissance à plusieurs systèmes de cryptage, dont beaucoup sont encore utilisés aujourd’hui.
Les Alliés disposent de SIGSALY , un système capable de mélanger les voix en temps réel. La clé de ce système est que des enregistrements phono identiques sont joués simultanément pendant que le dialogue reste actif. Lorsqu’une personne parle au téléphone, sa voix est numérisée et mélangée à des bruits individuels. Ce signal codé est ensuite envoyé à la station SIGSALY, qui décode l'audio. Après chaque conversation, ces enregistrements sont détruits et chaque conversation possède un jeu de clés différent. Il est donc très difficile pour l'adversaire de décoder immédiatement.
Les fascistes de l'époque s'appuyaient également sur une technologie similaire mais pour chiffrer le texte : la machine Enigma avait un clavier dur, des câbles de connexion et une carte de connexion semblable à un tableau de commutation électrique, de téléphone, des cadrans et un circuit imprimé de sortie. En appuyant sur une touche, l'appareil déclenche un mécanisme qui produit différents caractères qui apparaissent les uns après les autres sur le circuit imprimé. Une machine Enigma configurée de manière identique à la machine d'origine effectuerait également le processus inverse mais exactement de la même manière que la machine d'origine. À partir de là, les messages peuvent être cryptés et déchiffrés très rapidement au fur et à mesure de leur saisie, et le mot de passe change à chaque fois qu'un caractère est saisi. Par exemple, si vous appuyez sur la touche A, la machine affichera la lettre E, mais si vous appuyez à nouveau sur la touche A, la machine affichera un autre caractère. Le circuit imprimé enfichable et les configurations manuelles signifient qu'il existe des variations infinies possibles pour ce système.
Enigma et SIGSALY peuvent être considérés comme les premières versions d’un ou plusieurs algorithmes, montrant une fonction mathématique répétée encore et encore. Briser le code Enigma par le génial mathématicien britannique Alan Turing a montré à tout le monde à quoi ressemblent les méthodes de cryptage.
Mais à bien d’autres égards, le travail de Hellman sur la cryptographie était différent. L’une d’elles était que lui et un autre mathématicien, Whitfield Diffie (également à l’Université de Stanford), ne travaillaient pour aucun gouvernement. L’autre différence à cette époque, c’est que les codes n’étaient pas nouveaux pour lui.
Chiffrement à clé publique
Hellman et Diffie, avec l'aide d'un autre collaborateur, Ralph Merkle, ont proposé un codage complètement différent. Au lieu de s’appuyer sur une seule clé pour l’ensemble du système de cryptage, ils ont mis au point un système à deux clés . La première clé est la clé privée, qui est stockée secrètement de la même manière qu’un mot de passe traditionnel. Quiconque altère le message ne peut voir qu’une série de caractères dénués de sens. Et Hellman utilisera cette clé secrète pour décrypter le message.
Cette solution s'avère immédiatement réalisable, mais pensez à SIGSALY. Pour que ce système fonctionne, l’expéditeur et le destinataire ont besoin de clés identiques. Si le destinataire perd la clé, il n'aura aucun moyen de déchiffrer le message. Si la clé est volée ou copiée, le message peut également être déchiffré. Si le méchant dispose de suffisamment de données sur le message et a le temps d’analyser le message, le risque d’être piraté est également très élevé. Et si vous souhaitez envoyer un message mais que vous n'avez pas la bonne clé, vous ne pouvez pas utiliser SIGSALY pour envoyer le message.
Le système de clé publique de Hellman est différent, ce qui signifie que la clé de chiffrement n'a pas besoin d'être gardée secrète . Toute personne utilisant la clé publique peut envoyer le message, mais seule une personne disposant de la clé privée peut le déchiffrer. Le chiffrement à clé publique supprime également tout moyen permettant d’assurer la sécurité des clés de chiffrement. La machine Enigma et les autres dispositifs de cryptage étaient étroitement gardés et les nazis étaient prêts à détruire Enigma s'ils étaient découverts par les Alliés. Avec un système à clé publique, n’importe qui peut échanger des clés publiques entre eux, sans aucun risque. Les utilisateurs peuvent partager publiquement des clés publiques entre eux et les combiner avec des clés privées (ou clés secrètes) pour créer une clé temporaire appelée secret partagé. Ce type de clé hybride peut être utilisé pour chiffrer les messages qu’un groupe de créateurs de secrets partagés partagent entre eux.
L’un des facteurs qui ont poussé Hellman à coder était sa passion pour les mathématiques, en particulier l’arithmétique modulaire. Selon Hellman, la raison pour laquelle il a appliqué l'arithmétique de congruence au chiffrement est que cette méthode convertit facilement les données en données discontinues, difficiles à reconvertir, ce qui est très important pour le chiffrement.
Par conséquent, la manière la plus simple de décoder est de « deviner ». Cette méthode, également appelée force brute, peut être appliquée à tout autre chose, pas seulement au chiffrement. Par exemple, vous souhaitez déverrouiller le téléphone de quelqu'un en combinant 4 touches numériques de 0 à 9. Si vous effectuez une recherche séquentielle, cela peut prendre beaucoup de temps.
En fait, Merkle avait déjà développé un système de cryptage à clé publique avant que Diffie et Hellman ne publient leur ouvrage « New Directions in Cyptography », mais à cette époque, le système de Merkle était trop compliqué pour les cryptographes eux-mêmes, pas encore pour les utilisateurs. Et ce problème a été résolu par Hellman et Diffie.
Un bon problème
Bruce Schneier est considéré comme l’un des rares mathématiciens célèbres dans le monde de la cryptographie, mais il reste une figure anonyme pour de nombreuses personnes. Schneier est très simple et comprend la valeur d’un bon problème. Il estime que le système de cryptage est un problème mixte de nombreux types de mathématiques différents, logiques les uns avec les autres et selon un système complexe distinct. " Le codage est une théorie des nombres, c'est une théorie de la complexité. Il y a beaucoup de codage qui est mauvais parce que les personnes qui l'ont créé ne comprennent pas la valeur d'un bon problème. "
Selon Shneier, le défi le plus fondamental en matière de chiffrement est la sécurité du système, dont la meilleure preuve est de tenter de le déchiffrer. Mais ce système de chiffrement n’est véritablement reconnu comme bon que lorsqu’il a été prouvé par la communauté au fil du temps, par l’analyse et par sa réputation.
Bien entendu, les mathématiques sont bien plus fiables que les humains. "Les mathématiques n'ont pas d'unité de gestion", a déclaré Schneier . "Pour qu'un cryptosystème ait une unité de gestion, il doit être intégré dans un logiciel, mis dans une application, exécuté sur un ordinateur avec un système d'exploitation et des utilisateurs. Et les facteurs ci-dessus sont les failles du système de cryptage ."
C’est un gros problème pour l’industrie de la cryptographie. Une certaine entreprise peut proposer un système de cryptage et promettre aux utilisateurs que « Ne vous inquiétez pas, personne ne sait quel est le contenu de votre message » car ils sont cryptés. Mais pour un utilisateur normal, qui sait ce que cette entreprise peut faire avec ce système de cryptage, en particulier lorsque ce système de cryptage est sous licence avec sa propre propriété intellectuelle, ne permettant pas à des tiers de contrôler les enquêtes et les tests. Les experts en chiffrement ne peuvent pas prouver si le système est vraiment bon ou non, encore moins si le système de chiffrement est doté ou non d’une porte dérobée.
Signatures numériques
L'une des applications populaires des solutions de chiffrement à clé publique est la signature numérique pour authentifier la validité des données. Semblable à une signature manuscrite, le but d'une signature numérique est de confirmer que le contenu des données est fidèle à celui de son créateur.
Normalement, lorsque vous sécurisez un message avec une clé publique, vous devez utiliser la clé publique du destinataire pour chiffrer le message afin que personne ne puisse le lire sans la clé privée du destinataire. Mais les signatures numériques fonctionnent de manière inverse. Vous rédigez un contrat et utilisez votre clé privée pour le crypter. Et toute personne possédant votre clé publique peut consulter ce contrat mais ne peut rien modifier (car il ne possède pas votre clé privée). La signature numérique confirme l'auteur de ce contrat, comme une signature, pour confirmer que le contenu n'a pas changé.
Les signatures numériques sont souvent utilisées avec des logiciels pour authentifier que le contenu provient d'une source fiable et n'a pas été falsifié par des acteurs malveillants. Un exemple typique est le cas du déverrouillage de l'iPhone 5c par le FBI et Apple. Après que le FBI ait tenté 10 tentatives infructueuses pour forcer brutalement le code PIN pour se connecter, l'appareil a automatiquement effacé son contenu. Apple a attribué au système d'exploitation de l'appareil une clé secrète privée et chaque iPhone possède une clé publique différente de celle d'Apple. La clé secrète est utilisée pour authentifier les mises à jour logicielles.
La blockchain se développe
Le cryptage ne consiste pas seulement à masquer le contenu mais également à authentifier si le contenu est original ou non . C’est ainsi qu’est apparue la blockchain, une technologie considérée comme aussi populaire que le cryptage.
La blockchain est un registre fixe et distribué, conçu pour être totalement insensible à toute influence numérique, que vous l'utilisiez pour la monnaie numérique ou pour les contrats. Parce qu’il est décentralisé via de nombreux utilisateurs, il ne sert à rien pour les méchants d’attaquer. Sa force réside dans le nombre.
Il n’y a pas deux blockchains identiques. L’application la plus connue de cette technologie est celle des monnaies numériques, comme le Bitcoin (c’est la monnaie la plus utilisée aujourd’hui par les cybercriminels et les créateurs de ransomwares). Mais IBM et plusieurs autres grandes entreprises popularisent également les monnaies numériques dans le monde des affaires.
Peu d’entreprises utilisent encore la blockchain, mais ses fonctionnalités sont très attractives. Contrairement à d’autres systèmes de stockage d’informations, les systèmes blockchain utilisent un ensemble mixte de solutions de chiffrement et de conceptions de bases de données distribuées.
La blockchain d'IBM permet aux membres de la blockchain d'authentifier les transactions d'autres personnes sans savoir qui effectue la transaction sur la blockchain, et les utilisateurs peuvent définir des contraintes d'accès et qui peut effectuer des transactions. L'idée de conception de la blockchain est que l'identité de la personne effectuant la transaction est cryptée, mais cryptée avec une clé publique . Au milieu, il y a quelqu'un qui audite les transactions et dispose d'une clé publique pour suivre les transactions et gérer les problèmes entre les membres commerciaux de la blockchain. La clé d'audit de l'intermédiaire peut être partagée entre les parties chargées de l'audit.
Ainsi, grâce à ce système, les concurrents peuvent échanger entre eux, sur la même blockchain. Cela peut ne pas sembler très intuitif au début, mais la blockchain est plus solide et plus sûre lorsque davantage de personnes effectuent des transactions. Plus il y a de monde, plus il est difficile de briser la blockchain. Imaginez que si toutes les banques d’un pays participaient à une blockchain, les transactions seraient beaucoup plus sûres.
Chiffrement des applications
Le cryptage du contenu pour envoyer un message sécurisé est l'une des technologies les plus élémentaires. Mais aujourd’hui, le cryptage ne se limite pas à cela : il peut également être appliqué à de nombreux autres emplois, notamment aux achats en ligne.
Parce que chaque étape d’une transaction financière implique un certain type de cryptage ou une certaine forme d’authentification pour confirmer si le message provient ou non de la bonne personne. Et l’intérêt de chiffrer les informations sensibles pour garantir qu’aucune tierce partie n’interfère devient de plus en plus clair. De nombreuses organisations aident les internautes à utiliser un réseau privé virtuel (VPN) pour chiffrer leur connexion Internet, en particulier lorsqu'ils doivent utiliser le Wi-Fi public. Un réseau Wi-Fi non sécurisé peut être créé par des méchants pour voler des informations sur ce réseau Wi-Fi.
De plus, le chiffrement des applications chiffre non seulement les informations sensibles et les données personnelles, mais permet également aux utilisateurs de prouver qu'il s'agit bien de « moi ». Par exemple, si vous visitez le site Web d’une banque, celle-ci dispose d’une clé de cryptage que seuls les ordinateurs de cette banque peuvent reconnaître. C'est une clé privée en échange d'une clé publique. Dans la barre d'adresse du site Web de l'URL, il y a une petite icône de cadenas au début de l'URL, ce qui signifie que lorsque vous accédez au site Web de la banque, il y a un échange de clés souterrain en dessous pour vous connecter depuis votre ordinateur à d'autres ordinateurs. est en cours.
Les signatures cryptographiques sont également largement utilisées dans les transactions financières. Les cartes de crédit/débit utilisent une technologie à puce intégrée (et non des cartes magnétiques) et appliquent également des solutions de signature cryptée.
Selon les experts, le cryptage est une technologie que nos utilisateurs utilisent actuellement beaucoup mais qu'ils comprennent très peu, des appareils technologiques aux transactions bancaires, en passant par les transports...
Le cryptage quantique pourrait tout changer
En 1970, Martin Hellman a déclaré que c'était l'année de la percée dans la factorisation arithmétique (factorisation), également connue sous le nom de factorisation continue. La difficulté de prendre en compte de grands nombres est ce qui rend les systèmes de chiffrement plus solides et plus difficiles à déchiffrer. Ainsi, toute technique réduisant la complexité de l’affacturage réduit également la sécurité du système de cryptage. Puis, en 1980, une autre avancée mathématique rendit la factorisation plus facile, grâce au tamis quadratique de Pomerance et aux travaux de Richard Schroeppel. Bien entendu, à cette époque, il n’existait pas de cryptage informatique. La taille des clés de chiffrement a doublé en 1970, puis à nouveau en 1980. En 1990, le nombre d'écluses avait encore doublé. Tous les 10 ans, de 1970 à 1990, la taille de la clé de chiffrement a augmenté. Mais en 2000, aucun progrès mathématique n’avait été réalisé dans le domaine des clés de chiffrement, et Hellman suggérait que les mathématiciens avaient atteint la limite des modèles de clés de chiffrement.
Mais l’informatique quantique ouvre de nouveaux horizons, car avec un système d’analyse cryptographique quantique, elle peut effectivement briser tous les mécanismes de chiffrement actuels. L'informatique d'aujourd'hui repose sur le système binaire 0-1 pour fonctionner. Quant à un système quantique, au contraire, il s'appuie sur des propriétés quantiques très spécifiques pour fonctionner, et pas seulement sur l'état soit de 0 soit de 1 comme le binaire, permettant à ce système d'effectuer simultanément de nombreux calculs.
Avec un système de cryptage comme celui d’aujourd’hui, le décodage d’un ordinateur moyen peut prendre des millions et des millions d’années. Mais avec un ordinateur quantique, avec le même algorithme de décodage, la résolution du système ne peut prendre que quelques minutes à quelques secondes. Sur Internet, nous utilisons seulement quelques algorithmes pour chiffrer les choses. Par conséquent, avec un système quantique parfait, les systèmes de cryptage actuels semblent n’être qu’un mince bouclier.
Si vous vous demandez pourquoi de nombreux grands pays comme les États-Unis et la Chine dépensent autant d’argent pour investir dans l’informatique quantique, ce qui précède pourrait être une partie de la réponse. Les résultats apportés par l’informatique quantique sont hors de portée des systèmes informatiques actuels.
Mais à mesure que l’informatique quantique se répand, une nouvelle branche des mathématiques émerge, utilisant davantage de méthodes statistiques, pour garantir que le cryptage ne soit pas perdu lors de l’arrivée de la prochaine génération d’ordinateurs.
C’est le quantum qui a provoqué la crise cardiaque d’Einstein, mais ce n’est qu’une des nombreuses menaces qui pèsent sur le cryptage moderne. Le véritable problème aujourd’hui est que de nombreux gouvernements et grandes organisations tentent de trouver des moyens d’affaiblir le chiffrement pour des raisons de sécurité nationale. En fait, ce conflit existe depuis des décennies, tout comme la guerre des cryptomonnaies des années 1990, comme la puce CLIPPR du système de la NSA, conçue comme une porte dérobée de chiffrement dans le système de communication mobile américain. Et bien sûr, au cours des dernières années, nous avons délaissé l'élimination des systèmes de cryptage pour introduire des portes dérobées ou des « clés principales » pour déchiffrer les messages sécurisés des applications et des systèmes de messagerie populaires.