Quelle est la différence entre chiffrement symétrique et asymétrique, et quand utiliseriez-vous chacun ?
Réponse courte
Le chiffrement symétrique utilise une seule clé partagée pour chiffrer et déchiffrer : c'est rapide, mais la clé doit être partagée de façon sûre. Le chiffrement asymétrique utilise une paire de clés publique/privée, ce qui résout la distribution des clés mais lentement. Les vrais systèmes utilisent la cryptographie asymétrique pour échanger une clé de session symétrique, puis le chiffrement symétrique rapide pour les données en masse.
Les schémas de chiffrement se répartissent en deux familles selon la manière dont les clés se rapportent les unes aux autres, et comprendre cette distinction est fondamental pour presque tous les protocoles sécurisés.
Le chiffrement symétrique
En cryptographie symétrique, la même clé secrète chiffre et déchiffre. AES est la référence ici. Il est extrêmement rapide — les processeurs modernes disposent d'instructions AES dédiées — c'est donc lui qui protège réellement le gros de vos données, qu'il s'agisse de volumes de disque ou du trafic d'une session TLS.
Le hic est la distribution des clés. Les deux parties ont besoin de la même clé, et acheminer cette clé vers l'autre côté sur un réseau non fiable sans qu'un espion ne la capte est la partie difficile.
Le chiffrement asymétrique
La cryptographie asymétrique utilise une paire de clés : une clé publique que tout le monde peut détenir et une clé privée que le propriétaire garde secrète. Les données chiffrées avec la clé publique ne peuvent être déchiffrées qu'avec la clé privée (confidentialité), et les données signées avec la clé privée peuvent être vérifiées avec la clé publique (authenticité). RSA et les schémas à courbes elliptiques en sont les exemples courants.
Cela résout élégamment la distribution des clés — vous pouvez remettre votre clé publique au monde entier. Le coût est la vitesse : les opérations asymétriques sont d'un ordre de grandeur plus lentes et ont des limites de taille, elles sont donc inadaptées au chiffrement direct de grandes charges utiles.
Pourquoi les vrais systèmes les combinent
Les protocoles pratiques utilisent une approche hybride. La cryptographie asymétrique authentifie les parties et établit de façon sûre une clé de session symétrique partagée ; le chiffrement symétrique rapide chiffre ensuite les données réelles. TLS fait exactement cela.
Ce que les recruteurs recherchent
Un candidat junior devrait clairement associer les clés aux opérations, indiquer que le symétrique est rapide mais souffre d'un problème de distribution, et — le différenciateur — expliquer qu'on ne choisit pas l'un, on les combine dans un schéma hybride.
Questions de suivi probables
- Pourquoi ne chiffrons-nous pas tout simplement tout avec RSA ?
- Comment un cryptosystème hybride comme TLS combine-t-il les deux ?
- Citez un algorithme symétrique courant et un algorithme asymétrique courant.