Qu'est-ce que Cryptographie à clé publique (cryptographie asymétrique) ?
Méthode cryptographique qui utilise, pour le chiffrement et le déchiffrement, une paire de clés différentes et appariées : une clé publique et une clé privée. La clé publique peut être connue de tous, tandis que seul son propriétaire détient la clé privée. Elle facilite la distribution des clés mais ses calculs sont lourds ; on la combine donc avec la cryptographie symétrique pour chiffrer les données elles-mêmes. RSA et la cryptographie sur courbes elliptiques en sont des exemples typiques.
Nom japonais: 公開鍵暗号
« Cryptographie à clé publique (cryptographie asymétrique) » apparaît dans 5 questions d'entraînement réparties sur 2 thèmes, dont Bases de la sécurité de l'information, Sécurité matérielle.
Domaine: Bases de la sécurité de l'information
Utilisation des clés publique et privée
En cryptographie à clé publique, chaque personne possède une clé publique et une clé privée appariées mathématiquement. Pour garder une information secrète, l'émetteur la chiffre avec la clé publique du destinataire, et seul ce dernier peut la déchiffrer avec sa propre clé privée. Pour prouver son identité, le propriétaire crée une signature avec sa propre clé privée, et n'importe qui peut la vérifier avec sa clé publique (signature numérique). La sécurité repose sur le fait qu'il est pratiquement impossible de déduire la clé privée de la clé publique : pour RSA parce que la factorisation des grands nombres est difficile, et pour la cryptographie sur courbes elliptiques en raison de la difficulté du problème du logarithme discret sur les courbes elliptiques.
Différences avec la cryptographie symétrique et nombre de clés
Avec la cryptographie symétrique, chaque paire de personnes qui communiquent doit partager à l'avance une clé secrète ; n personnes ont donc besoin de n(n−1)/2 clés. Avec la cryptographie à clé publique, chaque personne n'a besoin que d'une paire de clés, soit 2n clés au total. Pour 100 personnes, par exemple, la cryptographie symétrique demande 4950 clés et la cryptographie à clé publique 200. En revanche, les calculs à clé publique sont plus lourds de plusieurs ordres de grandeur que les calculs symétriques ; en pratique, le chiffrement hybride est donc courant : les données elles-mêmes sont chiffrées par cryptographie symétrique, et les techniques à clé publique servent à transmettre ou à convenir de cette clé.
Vérifier à qui appartient une clé publique
En cryptographie à clé publique, il importe que la clé publique utilisée appartienne vraiment à l'autre partie. Si un attaquant fait passer sa propre clé publique pour celle de quelqu'un d'autre, le texte chiffré destiné à cette personne peut être lu par l'attaquant. On utilise donc des certificats, dans lesquels une autorité de certification (CA) signe une déclaration du type « cette clé publique appartient à cette personne (à ce nom de domaine) », pour garantir le propriétaire d'une clé publique. Ce mécanisme s'appelle PKI (infrastructure à clés publiques), et les certificats serveur TLS utilisés par HTTPS en sont un exemple typique. Au milieu des années 2020, la migration vers la cryptographie post-quantique, en prévision des futurs ordinateurs quantiques, est également en cours.
Questions fréquentes
Quelle clé utilise-t-on pour chiffrer en cryptographie à clé publique ?
La clé publique du destinataire. Seule la clé privée correspondante, détenue par le destinataire, peut déchiffrer. Traiter des données avec sa propre clé privée, c'est ce que fait une signature numérique, et non un chiffrement.
Pourquoi ne pas chiffrer de gros fichiers uniquement par cryptographie à clé publique ?
Parce que la cryptographie à clé publique est lourde en calcul et ne convient pas au chiffrement direct de grandes quantités de données. On utilise plutôt le chiffrement hybride : le fichier est chiffré par une cryptographie symétrique rapide, et seule cette clé symétrique est protégée par cryptographie à clé publique.