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.

S'entraîner : questions sur Cryptographie à clé publique (cryptographie asymétrique)

A veut chiffrer un message par cryptographie à clé publique de sorte que seul B puisse le lire. Quelle clé sert au chiffrement ?

  1. ALa clé privée de A
  2. BLa clé publique de B
  3. CLa clé privée de B
Afficher la réponse et l'explication

Réponse : B. La clé publique de B

En cryptographie à clé publique, chaque personne possède une paire de clés : une clé publique et une clé privée. La clé publique peut être connue de tous, tandis que seul son propriétaire conserve la clé privée, sous bonne garde. Des données chiffrées avec une clé publique ne peuvent être déchiffrées qu'avec la clé privée correspondante. A chiffre donc le message avec la clé publique de B et l'envoie, et B le déchiffre avec sa propre clé privée. Même si le texte chiffré est intercepté en chemin, quiconque ne possède pas la clé privée de B ne peut pas le lire. Seul B détient sa clé privée ; A ne peut donc pas l'utiliser. Traiter des données avec la clé privée de A, c'est ce qui se passe pour une signature numérique, qui montre que A est l'auteur des données.

50 membres veulent que chaque paire d'entre eux puisse communiquer de façon chiffrée sans que les autres membres connaissent le contenu. Quelle combinaison donne le nombre de clés nécessaires avec la cryptographie symétrique et avec la cryptographie à clé publique (clés publiques et privées comptées ensemble) ?

  1. ASymétrique : 1225 clés ; à clé publique : 100 clés
  2. BSymétrique : 2450 clés ; à clé publique : 100 clés
  3. CSymétrique : 100 clés ; à clé publique : 1225 clés
Afficher la réponse et l'explication

Réponse : A. Symétrique : 1225 clés ; à clé publique : 100 clés

Avec la cryptographie symétrique, chaque paire a besoin de sa propre clé, car si 3 personnes ou plus partageaient une clé, d'autres membres pourraient aussi lire le contenu. Le nombre de paires que l'on peut former parmi n personnes est n(n−1)/2 ; pour 50 personnes, il faut donc 50 × 49 / 2 = 1225 clés. Avec la cryptographie à clé publique, si chacun possède une clé publique et une clé privée, n'importe qui peut chiffrer pour n'importe qui avec la clé publique du destinataire ; 2n = 2 × 50 = 100 clés suffisent donc. Quand le nombre de personnes augmente, le nombre de clés symétriques croît à peu près comme le carré du nombre de personnes, alors qu'avec la cryptographie à clé publique il ne croît que proportionnellement. C'est l'une des raisons pour lesquelles la cryptographie à clé publique facilite la gestion des clés.

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.

« Cryptographie à clé publique (cryptographie asymétrique) » dans les explications

Questions mentionnant « Cryptographie à clé publique (cryptographie asymétrique) » (5)

  1. A veut chiffrer un message par cryptographie à clé publique de sorte que seul B puisse le lire. Quelle clé sert au chiffrement ?
  2. 50 membres veulent que chaque paire d'entre eux puisse communiquer de façon chiffrée sans que les autres membres connaissent le contenu. Quelle combinaison donne le nombre de clés nécessaires avec la cryptographie symétrique et avec la cryptographie à clé publique (clés publiques et privées comptées ensemble) ?
  3. Quel est l'avantage d'utiliser la cryptographie à clé publique pour vérifier les signatures logicielles en démarrage sécurisé ?
  4. Quelle affirmation décrit correctement la cryptographie symétrique (à clé secrète) ?
  5. Pour envoyer à quelqu'un un fichier volumineux chiffré, quelle procédure décrit le chiffrement hybride couramment utilisé ?

Termes associés

Cryptographie symétrique (cryptographie à clé secrète) Signature numérique Démarrage sécurisé (secure boot) TLS (Transport Layer Security) Attaque zero-day (attaque du jour zéro) Authentification multifacteur (MFA) Code d'authentification de message Cross-site scripting (XSS) Fonction de hachage Hameçonnage (phishing)

Retour au glossaire