MathLvl
Question transversaleMathsNSICryptographie et sécurité

Comment peut-on chiffrer un message avec une clé que tout le monde connaît ?

Avec RSA, la clé publique (n, e) = (55, 3) chiffre 2 en 2³ = 8, et seule la clé privée d = 27 permet de revenir : le reste de 8²⁷ dans la division par 55 vaut 2. Trouver d exige de factoriser n = 5 × 11, facile ici, hors de portée pour un nombre de 600 chiffres.

Grand oral session 2027 : exposé de 10 minutes debout, puis 10 minutes d'échange, sans calculatrice. Plan prévu pour 9,5 min.

Pourquoi cette question : un modèle d'introduction

Le jury attend que vous expliquiez pourquoi vous avez choisi la question. Inspirez-vous de ce modèle, mais racontez votre propre parcours.

Je me suis toujours demandé comment mon navigateur pouvait échanger des secrets avec un site qu'il n'a jamais rencontré. Il faudrait bien partager une clé, mais comment, sans qu'un espion l'intercepte ? En NSI, on m'a parlé du chiffrement asymétrique. J'ai voulu comprendre le calcul qui se cache derrière RSA, et j'ai découvert qu'il repose sur des restes de divisions et sur la difficulté de factoriser.

L'enjeu et les notions du programme

Montrer qu'une opération facile dans un sens (multiplier des nombres premiers, élever à une puissance) peut être très difficile à inverser, et en faire un outil de sécurité.

Mathématiques

  • Nombres premiers, décomposition, division euclidienne (seconde)
  • Puissances et calcul des restes (seconde, première)
  • Pour aller plus loin : congruences et petit théorème de Fermat (maths expertes)

Numérique et sciences informatiques

  • Sécurisation des communications : chiffrement symétrique et asymétrique (terminale)
  • Protocole HTTPS (terminale)

Le plan de l'exposé en 9,5 min

  1. 1. Introduction

    1 min

    Dans un chiffrement classique, la même clé sert à chiffrer et à déchiffrer : il faut l'avoir partagée en secret. En 1977, Rivest, Shamir et Adleman proposent un système à deux clés : une publique pour chiffrer, une privée pour déchiffrer. Problématique : comment une clé publique peut-elle protéger un secret ?

  2. 2. Mathématiques : un calcul sur les restes

    4 min

    On choisit deux nombres premiers p=5 et q=11, et on publie n=pq=55 et e=3. On calcule en secret (p-1)(q-1)=40 et un nombre d tel que ed laisse le reste 1 dans la division par 40 : d=27, car 3×27=81=2×40+1.

    Chiffrer le message m=2 : on calcule le reste de 2³=8 dans la division par 55, soit c=8. Déchiffrer : on calcule le reste de 8²⁷ par 55. On procède par carrés successifs : 8²=64 donne 9, 8⁴ donne 81→26, 8⁸ donne 676→16, 8¹⁶ donne 256→36. Comme 27=16+8+2+1, on multiplie 36×16×9×8 en réduisant à chaque étape : on retrouve 2.

    Pourquoi ça marche : un théorème d'arithmétique (vu en maths expertes) assure que m^(ed) laisse le même reste que m dès que ed vaut 1 plus un multiple de (p-1)(q-1), ce qui est le cas ici : 81=1+2×40.

  3. 3. NSI : la sécurité tient à la factorisation

    3 min

    Pour calculer d, l'espion doit connaître (p-1)(q-1), donc factoriser n. Pour 55, c'est immédiat ; pour un n de 2 048 bits (environ 617 chiffres), aucun algorithme connu ne le fait en un temps raisonnable. Essayer tous les diviseurs jusqu'à √n demanderait de l'ordre de 10³⁰⁸ divisions.

    En pratique, RSA est lent : HTTPS l'utilise seulement pour échanger une clé secrète, puis bascule sur un chiffrement symétrique rapide (AES). Le calcul de mᵉ se fait par exponentiation rapide, en un nombre de multiplications proportionnel au nombre de bits de l'exposant.

  4. 4. Conclusion

    1,5 min

    RSA chiffre avec une clé publique car inverser le calcul exige une information cachée, la factorisation de n. Multiplier deux premiers est facile, retrouver les facteurs est très difficile : c'est une fonction « à sens unique avec trappe ». J'ouvre sur l'ordinateur quantique, qui pourrait factoriser vite grâce à l'algorithme de Shor.

Ce que j'écris au tableau

Pas de calculatrice ni de support numérique : un calcul clé écrit au tableau rend l'exposé concret et montre la solidité des connaissances.

n=5×11=55 e=3 d=27 (3×27=81=2×40+1)
c=2³=8 8²⁷=8¹⁶·8⁸·8²·8 → 36×16×9×8 → 2 ( mod 55)

Conclusion : la réponse à la question

Une clé publique suffit à chiffrer parce que le déchiffrement demande un secret mathématique que l'on ne peut pas retrouver en pratique : les facteurs premiers de n. La sécurité repose sur un écart de difficulté entre un calcul et son inverse.

Les questions probables du jury

Pendant les 10 minutesd'échange, le jury vous fait préciser et approfondir, sur tout le programme de vos spécialités en lien avec la question.

Pourquoi p et q doivent-ils être premiers ?

Pour que (p-1)(q-1) se calcule facilement à partir de p et q et pour que le théorème qui garantit le déchiffrement s'applique.

Comment trouve-t-on d en pratique ?

Par l'algorithme d'Euclide étendu, qui trouve une solution de 3d − 40k = 1 ; ici on la trouve aussi en essayant.

Combien de multiplications pour calculer 8²⁷ par carrés successifs ?

4 élévations au carré et 3 multiplications, au lieu de 26 multiplications naïves.

Pourquoi ne pas chiffrer tout un film avec RSA ?

C'est beaucoup plus lent qu'un chiffrement symétrique : on chiffre une clé avec RSA, puis le contenu avec AES.

Que se passe-t-il si quelqu'un factorise n ?

Il calcule (p-1)(q-1), puis d : la clé privée est compromise.

Les pièges qui coûtent des points

  • Dire que RSA repose sur le secret de l'algorithme : il est public, seule d est secrète.
  • Calculer 8²⁷ en entier sans réduire : on réduit à chaque étape.
  • Confondre n = pq et (p − 1)(q − 1).

Revoir les notions

Autres questions : cryptographie et sécurité

Toutes les questions maths-nsi →

Préparer l'oral, pas seulement le contenu

Gestion des 20 minutes de préparation, usage du tableau, posture debout, réponses au jury : la méthode complète, conforme aux règles de la session 2027.

Méthode : traiter une question de Grand oral →