Chiffrement symétrique et asymétrique, la base de toute la sécurité numérique
Lire la version audio
Le mot "clé" revient constamment dans les articles de ce site, pour un wallet crypto, pour une messagerie chiffrée, pour un cadenas affiché dans un navigateur. Ces usages très différents reposent en réalité sur seulement deux grandes familles de chiffrement, dont la combinaison explique pratiquement toute la sécurité numérique actuelle.
Le chiffrement symétrique, une seule clé
Le chiffrement symétrique utilise une seule et même clé pour chiffrer un message et pour le déchiffrer ensuite, un peu comme une seule clé physique capable à la fois de fermer et d'ouvrir une même serrure. C'est une méthode rapide et efficace, largement utilisée pour chiffrer de grandes quantités de données. Elle pose cependant un problème de départ évident : les deux personnes qui communiquent doivent d'abord se transmettre cette clé unique, en toute sécurité, avant même de pouvoir échanger le moindre message protégé. Si cette clé est interceptée pendant ce tout premier échange, l'ensemble du chiffrement qui suit devient inutile.
Le chiffrement asymétrique, la solution au problème du partage
Le chiffrement asymétrique résout ce problème d'une façon élégante : au lieu d'une seule clé, chaque personne possède une paire de clés mathématiquement liées entre elles, mais dont il est en pratique impossible de déduire l'une à partir de l'autre. La clé publique peut être partagée librement avec n'importe qui, y compris publiée ouvertement, puisqu'elle ne permet que de chiffrer un message à destination de son propriétaire. Seule la clé privée correspondante, jamais partagée et gardée strictement secrète, permet de déchiffrer ce message. L'image la plus simple reste celle d'un cadenas ouvert : n'importe qui peut prendre ce cadenas (la clé publique), fermer une boîte avec, et l'envoyer, mais seul le propriétaire de la clé physique correspondante (la clé privée) peut ensuite l'ouvrir. Plus besoin d'échanger le moindre secret au préalable, le problème central du chiffrement symétrique disparaît entièrement.
Pourquoi on utilise en réalité les deux en même temps
Le chiffrement asymétrique, bien qu'il résolve le problème du partage, demande beaucoup plus de calcul que le chiffrement symétrique, ce qui le rend impraticable pour chiffrer de grandes quantités de données en continu. La solution retenue presque partout combine les deux : le chiffrement asymétrique sert uniquement à échanger, en toute sécurité, une clé symétrique temporaire, générée pour l'occasion, qui prend ensuite le relais pour chiffrer rapidement le reste de la communication. C'est exactement ce mécanisme qui se cache derrière le cadenas affiché par un navigateur sur un site en HTTPS (voir l'article sur le phishing pour ce que ce cadenas garantit et ne garantit pas) : une poignée de main initiale en chiffrement asymétrique, suivie d'une communication rapide en chiffrement symétrique pour le reste de la visite.
La signature numérique, l'autre usage des clés asymétriques
Les mêmes clés asymétriques servent aussi dans l'autre sens, pour prouver l'authenticité d'un message plutôt que pour le cacher. Une signature numérique se génère avec la clé privée de son auteur, et n'importe qui peut ensuite la vérifier avec la clé publique correspondante, sans jamais avoir eu accès à la clé privée elle-même. C'est ce mécanisme, exactement, qui autorise une dépense sur un wallet de cryptomonnaie (voir l'article sur les wallets) : signer une transaction avec sa clé privée prouve, de façon vérifiable par tout le réseau, que son propriétaire légitime en est bien à l'origine, sans jamais avoir eu besoin de révéler cette clé privée à qui que ce soit.
Où ça se voit concrètement dans ce qu'on utilise déjà
- Le cadenas HTTPS d'un site web, qui combine les deux chiffrements pour sécuriser la connexion
- La clé publique et la clé privée d'un wallet crypto, qui permettent de recevoir et de dépenser
- Le chiffrement de bout en bout d'une messagerie comme Signal, qui repose sur le même principe de paires de clés pour établir une conversation protégée sans jamais échanger de secret en clair
- La signature d'une transaction blockchain, qui prouve son origine sans révéler la clé privée qui l'a produite
Comprendre cette distinction entre les deux familles de chiffrement, et pourquoi elles sont presque toujours combinées plutôt qu'utilisées seules, aide à situer un mécanisme qui revient, sous une forme ou une autre, derrière presque tout ce qui protège une communication numérique aujourd'hui.