Rien ne vaut, pour comprendre RSA, de le dérouler à la main sur de petits nombres. Les entiers réels se comptent en milliers de bits, mais la mécanique est identique — et c’est elle que l’on éprouve ici, de la génération des clés à la vérification d’un aller-retour chiffrement / déchiffrement.

La méthode, étape par étape

On veut construire une clé publique et une clé privée à partir de la seule arithmétique élémentaire.

  1. Choisir deux premiers distincts . Petits ici pour le calcul manuel ; immenses en pratique.
  2. Calculer le module , commun au chiffrement et au déchiffrement.
  3. Calculer l’indicatrice d’Euler — la véritable clé mathématique du système.
  4. Choisir l’exposant public tel que et surtout ; cette dernière condition garantit l’existence de .
  5. Calculer l’exposant privé , inverse modulaire de modulo , c’est-à-dire , par l’algorithme d’Euclide étendu.
  6. Former les clés : publique , privée (ou ).

Un exemple complet

Prenons délibérément de petits premiers, et . Alors

On essaie l’exposant ; comme , il convient. Reste à trouver tel que , par l’algorithme d’Euclide étendu.

Les divisions successives donnent

La remontée de Bézout part de , où l’on substitue :

d’où , soit . On obtient ainsi la clé publique et la clé privée .

Vérifier l’aller-retour

Un contrôle rapide ne coûte rien et rassure. Prenons un message (avec ). Le chiffrement par exponentiation modulaire donne

et le déchiffrement restitue bien le clair :

Le message retrouvé confirme la cohérence de la paire de clés — c’est l’identité vérifiée en acte.

Les points à ne pas confondre

L’exercice n’a d’intérêt que si l’on sait pourquoi chaque geste tient : pourquoi doit être premier avec , pourquoi existe alors (Bézout), et pourquoi suffit à garantir le déchiffrement. Ces justifications sont développées dans les angles morts de RSA.

Pour un déroulé pédagogique complémentaire, on pourra consulter la section Key generation de la page RSA de Wikipédia ou le pas-à-pas de la Khan Academy.