Qu'est-ce que Cryptosystème RSA ?

Cryptosystème à clé publique conçu en 1977 par Rivest, Shamir et Adleman. La clé publique est formée du produit n de deux grands nombres premiers p et q et d'un exposant public e, et la clé privée est le d qui vérifie e × d ≡ 1 (mod (p − 1)(q − 1)). Le chiffrement se fait par c = m^e mod n et le déchiffrement par m = c^d mod n. Sa sécurité repose sur la difficulté de factoriser n, et il peut servir aussi bien au chiffrement qu'aux signatures. En pratique, on le combine avec un remplissage aléatoire comme OAEP ou PSS.

Nom japonais: RSA暗号

« Cryptosystème RSA » apparaît dans 10 questions d'entraînement réparties sur 2 thèmes, dont Bases et applications de la cryptographie, Matériel des ordinateurs quantiques.

Domaine: Bases et applications de la cryptographie

Un exemple avec de petits nombres

Avec p = 5 et q = 11, n = 55 et (p − 1)(q − 1) = 40. En prenant e = 3, on a 3 × 27 = 81 ≡ 1 (mod 40), donc d = 27. Le texte clair m = 7 est chiffré en 7³ = 343 ≡ 13 (mod 55), et le calcul de 13^27 mod 55 redonne 7.

Longueur de clé et sécurité

Dans le tableau de NIST SP 800-57, un n de 2048 bits est le repère pour une sécurité de 112 bits, et un n de 3072 bits celui pour 128 bits. Pour une même sécurité, RSA exige des clés et des signatures bien plus longues que la cryptographie sur courbes elliptiques, et la génération des clés et le calcul des signatures sont plus lourds. L'exposant public est généralement 65 537 (2^16 + 1), ce qui garde le calcul rapide.

L'évolution de son usage

Les anciennes versions de TLS utilisaient largement un échange de clés dans lequel le client chiffrait le matériel de clé avec la clé publique RSA du serveur, mais il a été supprimé dans TLS 1.3 faute de confidentialité persistante. Aujourd'hui, RSA sert surtout aux signatures des certificats et des logiciels. Un grand ordinateur quantique pourrait le casser avec l'algorithme de Shor ; la migration vers la cryptographie post-quantique est donc en cours.

S'entraîner : questions sur Cryptosystème RSA

On vérifie le mécanisme de RSA avec de petits nombres. À partir des nombres premiers p = 5 et q = 11, on forme n = pq, et l'exposant public est e = 3. Avec φ(n) = (p − 1)(q − 1), quel est l'exposant privé d (0 < d < φ(n)) qui vérifie e × d ≡ 1 (mod φ(n)) ?

  1. A5
  2. B27
  3. C37
Afficher la réponse et l'explication

Réponse : B. 27

n = 5 × 11 = 55 et φ(n) = 4 × 10 = 40. On cherche d tel que 3 × d divisé par 40 donne un reste de 1 : 3 × 27 = 81 = 2 × 40 + 1, donc d = 27. La clé publique est (n, e) = (55, 3) et la clé privée d = 27 ; la sécurité repose sur le fait que, sans connaître p et q, on ne peut pas trouver φ(n), ni donc d. Dans le vrai RSA, p et q sont chacun de grands nombres premiers de plus de 1000 bits, et l'on utilise souvent 65 537 pour e.

En RSA, la clé publique est n = 55 et e = 3. Quel est le texte chiffré c lorsque le texte clair m = 7 est chiffré par c = m^e mod n ?

  1. A13
  2. B21
  3. C23
Afficher la réponse et l'explication

Réponse : A. 13

7³ = 343, et 343 = 6 × 55 + 13, donc c = 13. L'exposant privé correspondant à cette clé publique est d = 27 (avec p = 5, q = 11 et φ(n) = 40, on a 3 × 27 ≡ 1), et le calcul de 13^27 mod 55 redonne le texte clair d'origine, 7. Le chiffrement ne nécessite que la clé publique, mais le déchiffrement exige d.

Questions fréquentes

Pourquoi p et q doivent-ils rester secrets ?

Parce que quiconque connaît p et q peut calculer (p − 1)(q − 1), puis en déduire d à partir du e public. Comme n est public, la sécurité repose sur la difficulté de factoriser n.

Pourquoi n'utilise-t-on pas RSA pour chiffrer directement des fichiers ?

Parce que RSA ne peut chiffrer à chaque fois que des nombres inférieurs à n, et que ses calculs sont bien plus lourds que ceux de la cryptographie symétrique. En pratique, le fichier est chiffré par cryptographie symétrique, par exemple avec AES, et seule cette clé symétrique est protégée par la clé publique : c'est le chiffrement hybride.

« Cryptosystème RSA » dans les explications

Questions mentionnant « Cryptosystème RSA » (10)

  1. On vérifie le mécanisme de RSA avec de petits nombres. À partir des nombres premiers p = 5 et q = 11, on forme n = pq, et l'exposant public est e = 3. Avec φ(n) = (p − 1)(q − 1), quel est l'exposant privé d (0 < d < φ(n)) qui vérifie e × d ≡ 1 (mod φ(n)) ?
  2. En RSA, la clé publique est n = 55 et e = 3. Quel est le texte chiffré c lorsque le texte clair m = 7 est chiffré par c = m^e mod n ?
  3. Quelle affirmation décrit correctement un problème posé par l'utilisation, dans de vraies communications et sans remplissage, du RSA « de manuel » (qui calcule directement c = m^e mod n à partir du texte clair m) ?
  4. Dans le tableau de NIST SP 800-57, quelle combinaison de longueur de clé RSA (nombre de bits de n) et de longueur de clé pour la cryptographie sur courbes elliptiques est donnée comme repère pour une sécurité comparable à celle de la cryptographie symétrique à 128 bits (AES-128) ?
  5. Une fois que de grands ordinateurs quantiques tolérants aux fautes auront été construits, quels chiffrements devraient voir leur sécurité sérieusement compromise par l'algorithme de Shor ?
  6. Quelle description de la cryptographie post-quantique (PQC) est correcte ?
  7. Avec TLS, quelle méthode d'échange de clés procure la propriété selon laquelle les communications enregistrées auparavant ne peuvent pas être déchiffrées même si la clé privée du certificat du serveur fuit plus tard (confidentialité persistante) ?
  8. Quelle affirmation décrit correctement un changement de TLS 1.3 (RFC 8446) par rapport à TLS 1.2 ?
  9. Quelle combinaison indique correctement ce que spécifie la suite cryptographique TLS_AES_128_GCM_SHA256 de TLS 1.3 ?
  10. Lors de la conception d'un système, quelle mesure est appropriée pour accroître l'agilité cryptographique (la propriété de rendre les schémas cryptographiques faciles à remplacer) ?

Termes associés

TLS (Transport Layer Security) Cryptographie sur courbes elliptiques Échange de clés Diffie-Hellman Cryptographie symétrique (cryptographie à clé secrète) Algorithme de Shor AES (Advanced Encryption Standard) Cryptographie post-quantique (PQC) Fonction de hachage Confidentialité persistante (forward secrecy) Chiffrement authentifié (AEAD)

Retour au glossaire