Une brève histoire de la sécurité des communications – et pourquoi la technologie PKI représente actuellement la meilleure solution

Les techniques de chiffrement destinées à protéger les informations sont utilisées depuis des millénaires – des tablettes d’argile de Mésopotamie jusqu’à la sécurisation de l’internet des objets (IoT). Dans cet exposé, Christophe Cauche, expert en sécurité des communications, résume l’histoire récente en ce domaine, et explique pourquoi les infrastructures à clé publique (PKI) constituent actuellement la meilleure solution pour sécuriser les communications transitant par l’internet.

Nous ne savons pas exactement depuis quand les humains se servent du codage et du chiffrement pour protéger les informations confidentielles, mais les premiers exemples connus sont les tablettes d’argile de Mésopotamie, datées d’environ 3500 ans.

Développement de la cryptographie en temps de guerre

La cryptographie moderne est née durant la Deuxième guerre mondiale. Tout le monde ou presque connaît Alan Turing, notamment par sa contribution au décryptage du système de chiffrement allemand baptisé Enigma. (Je recommande à ce sujet le film « Imitation Game » sorti en 2015.) Beaucoup moins connu est l’ingénieur et mathématicien Claude Shannon (1916 – 2001), dont l’apport à la discipline fut pourtant déterminant. Lors de la Deuxième guerre mondiale, il collabora avec les services secrets de l’armée des États-Unis. Il participa au Projet X, visant à l’élaboration d’un système de chiffrement des communications entre Washington et Londres.

Après la guerre, en 1948, Shannon publia un article sur la théorie de la transmission des signaux (« A Mathematical Theory of Communication ») dans le Bell Systems Technical Journal. L’article (dans lequel pour la première fois apparaissait le terme « bit » pour décrire une unité binaire) donna matière à un livre (« The Mathematical Theory of Communication ») l’année suivante, incluant les commentaires et simplifications de Warren Weaver, autre brillant scientifique et mathématicien.

Le modèle de 1949 est toujours en usage

Le modèle théorique de Shannon décrit la communication comme un flux de messages :

Une notion essentielle découlant des travaux de Shannon est celle d’entropie de l’information, ou mesure de l’incertitude d’un message, déterminant le nombre de bits nécessaire à l’envoi des données. La façon dont nous échangeons aujourd’hui les informations, via internet ou la téléphonie mobile, découle directement de cette théorie. La préoccupation initiale de Shannon était de s’assurer de la transmission d’un message d’un point à un autre sans perte d’information. Je suppose qu’il n’avait pas prévu que ses travaux contribueraient à sécuriser les communications entre les objets du quotidien.

En 1949, Shannon publia également un article intitulé « Communication Theory of Secrecy Systems », dans lequel il introduisait la définition d’un système de chiffrement sécurisé depuis une perspective théorique de l’information, ainsi que la notion de parfaite confidentialité d’un système de cryptage. Décrire en détail le théorème de parfaite confidentialité de Shannon dépasserait le cadre de cet exposé ; qu’il me suffise de dire que sa validité a été largement éprouvée.

Règles de confusion et de diffusion

Claude Shannon a également défini les principes de confusion et de diffusion :

  • La confusion se réfère au fait que chaque bit du texte chiffré doit dépendre de plusieurs parties de la clé, de façon à rendre la relation entre le texte et la clé la plus complexe possible.
  • La diffusion signifie que lorsqu’on modifie un seul bit du texte en clair, environ la moitié des bits du texte chiffré doit se retrouver modifiée, et vice-versa : si un seul bit du texte chiffré est modifié, alors la moitié environ des bits du texte en clair doit se retrouver modifiée.

Les algorithmes de chiffrement utilisés aujourd’hui appliquent toujours ces principes pour garantir la confidentialité des informations.

Shannon ne s’intéressait pas seulement à la cryptographie, il était également passionné par le jeu d’échecs et la jonglerie. Je ne m’étendrai pas ici sur sa vie, mais je vous encourage vivement à en apprendre davantage sur ce personnage fascinant.

Chiffrement symétrique et asymétrique

La méthode de chiffrement la plus courante exploite la même clé pour chiffrer et déchiffrer les informations ; on parle alors de chiffrement symétrique. Cette méthode, très efficace, présente néanmoins plusieurs contraintes telles que :

  • Générer des clés d’une complexité appropriée.
  • Transmettre les clés.
  • Stocker les clés de façon sécurisée.
  • Renouveler les clés.
  • Produire suffisamment de clés pour toutes les entités d’un système afin de garantir la confidentialité des communications.

Le chiffrement asymétrique permet de répondre à toutes ces exigences. Dans ce mode de chiffrement, chaque entité possède une clé privée, tenue secrète, et une clé publique, accessible à tous. Les deux clés forment une paire par association mathématique complexe (de sorte qu’il est virtuellement impossible de deviner une clé à partir de la connaissance de l’autre), et les informations chiffrées à l’aide d’une de ces clés ne peuvent être déchiffrées sans l’aide de l’autre clé de la paire.

Alice et Bob expliquent le chiffrement asymétrique

Nous faisons typiquement appel à Alice et Bob pour illustrer le principe du chiffrement asymétrique. Pour garantir la confidentialité de leurs échanges, Bob chiffre ses messages à l’aide de la clé publique d’Alice. Seule Alice, à l’aide de sa clé privée, peut déchiffrer ces messages. De la même façon, lorsque Bob déchiffre un message à l’aide de la clé publique d’Alice, il peut être certain que c’est bien elle qui en est à l’origine, car seule la clé privée d’Alice a pu être utilisée pour chiffrer le message.

Le principal inconvénient des algorithmes de chiffrement asymétrique est qu’ils sont beaucoup (environ 1000 fois) plus lents que les algorithmes de chiffrement symétrique. C’est pourquoi les entités utilisent le chiffrement asymétrique pour s’authentifier, puis génèrent des clés symétriques, et échangent leurs clés symétriques chiffrées à l’aide d’un algorithme de chiffrement asymétrique. Une fois l’échange de clés symétriques réalisé, les entités protègent leurs communications à l’aide du chiffrement symétrique. Ainsi, la sécurité des communications est assurée à la fois à l’aide du chiffrement symétrique et asymétrique.

La technologie PKI au service de la certification

En 1976, Whitfield Diffie et Martin Hellman proposent une méthode de sécurisation des échanges des clés de chiffrement à travers un canal public. Un an plus tard, Ron Rivest, Adi Shamir et Leonard Adleman proposent le premier algorithme de chiffrement asymétrique, qu’ils baptisent RSA (Rivest-Shamir-Adleman). Depuis, plusieurs autres algorithmes de chiffrement asymétrique ont été élaborés ; mais tous rencontrent le même problème : Comment Bob peut-il s’assurer qu’il utilise bien la clé publique d’Alice et non pas celle de quelqu’un d’autre ?

Ce problème peut être résolu par l’implémentation de ce que l’on appelle une infrastructure à clé publique (PKI), à savoir un ensemble de règles, de rôles et de procédures permettant de produire, administrer, distribuer, exploiter, stocker et révoquer des certificats électroniques, et de gérer le chiffrement des clés publiques. Le cœur d’une PKI est ce que l’on nomme une autorité de certification (AC), chargée de contrôler l’identité de chaque entité et d’associer cette identité à sa clé publique, par l’attribution de certificats électroniques signés. L’AC doit également publier la liste des certificats révoqués, par exemple pour des raisons de compromission.

Les certificats PKI permettent d’établir la confiance à grande échelle

Dans la mesure où l’AC est de confiance, les certificats qu’elle produit sont également de confiance, de la même façon que l’État suédois garantit la validité des passeports qu’il produit pour ses ressortissants. Aujourd’hui, l’exploitation de la technologie PKI est très répandue, et permet d’établir la confiance entre entités communicantes, dans un large éventail de scénarios. En voici quelques exemples :

  • Votre navigateur a confiance en l’AC de Google, et accorde par conséquent sa confiance aux sites web qui présentent des certificats de Google.
  • Votre réseau d’entreprise a confiance en l’AC de l’entreprise, par conséquent tous les hôtes du réseau présentant des certificats issus de cette AC seront de confiance.
  • Dès lors que deux constructeurs automobiles s’accordent une confiance mutuelle, les véhicules connectés des deux marques peuvent communiquer entre eux de façon sécurisée (communications de type « car-to-everything », ou Car2X) en présentant des certificats produits par leur AC respective.
  • La passerelle d’un opérateur télécom accordera sa confiance à toutes les antennes LTE présentant des certificats produits par l’AC de cet opérateur.
  • La réglementation eIDAS préconise la maintenance d’une liste de toutes les AC européennes valides, permettant ainsi d’établir la validité des identités électroniques des citoyens européens.

Pourquoi PKI est actuellement la meilleure solution

Les chercheurs n’ont toujours pas développé de technologie plus efficace que PKI pour protéger les communications entre les personnes, les objets et/ou les services. Si la cryptographie quantique est une technologie promise à un bel avenir, elle est encore trop immature et n’est actuellement mise en œuvre que dans certains domaines très spécifiques. (Je consacrerai un prochain article de blog à ce sujet.)

Les raisons pour lesquelles la technologie PKI est actuellement la meilleure solution pour sécuriser les communications transitant par l’internet sont :

  • Garantie de confidentialité par le chiffrement et l’authentification.
  • Garantie d’intégrité grâce à la signature électronique.
  • Possibilité de révocation des certificats accordés aux entités.
  • Possibilité d’évolution grâce à des algorithmes toujours plus performants.
  • Technologie mature et éprouvée par son exploitation dans des applications critiques, dans des domaines tels que les services bancaires ou la défense nationale.
  • Technologie qui s’appuie sur des normes ouvertes, à savoir évaluées en permanence.
  • Solution aisément évolutive, capable d’être exploitée pour des millions, voire des milliards d’entités.

Quelles communications devez-vous sécuriser ?

La plateforme PKI de Nexus est actuellement exploitée par un grand nombre d’organisations à travers le monde, et pour un large éventail d’applications. Les certificats produits par notre logiciel d’AC s’adressent aussi bien aux applis mobiles, aux navigateurs, aux serveurs web et aux passerelles VPN, qu’aux produits électroniques grand public, aux antennes 4G, aux cartes à puce, aux véhicules connectés, aux stations d’e-chargement ou encore aux systèmes domotiques.

Et vous, quelles communications devez-vous sécuriser ?

N’hésitez pas à me contacter si vous souhaitez en savoir plus sur la façon dont nous pouvons vous aider (ou si vous voulez mieux connaître les marottes de Shannon).

Christophe Cauche, expert en sécurité des communications chez Nexus Group, société spécialisée dans les identités et la sécurité.

Christophe.cauche@nexusgroup.com

Bâtir une infrastructure IoT sécurisée

Published 24/9 2018

News and Blog