Démonstration de la Proposition fondamentale du cryptage RSA.

La compréhension de ce qui suit nécessite des connaissances en théorie des groupes. Commençons par un petit lemme qui se révélera très utile :

Lemme 0.1. Soient G un groupe fini d’ordre n et d,e deux entiers tels que ed 1  mod (n). Alors les applications

G   →   G    et   G   →   G
 x  ↦→   xe        x   ↦→   xd
sont inverses l’une de l’autre.

Démonstration : Il s’agit de vérifier que xed = x x ∈ G. Comme ed 1  mod (n), il existe k ∈ tel que ed = 1 + kn. Ainsi

xed = x1+kn = x.xkn = x. (xn )k = x,
car d’après le théorème de Lagrange, xn = 1. On a donc le résultat voulu.

Notations : Nous disposons de deux nombres premiers p et p. On note

m  = pq.
Soit G = U(∕m) le groupe des inversibles de ∕m. On sait que le cardinal de G est ♯G = φ(m) = (p - 1)(q - 1), où φ est l’indicateur d’Euler. On pose donc
n = (p - 1)(q - 1).
On choisit enfin e et d tels que
ed ≡ 1   mod   (n ).

Proposition 0.2. Les applications

ℤ ∕m ℤ  →   ℤ ∕m ℤ        ℤ∕m  ℤ  →   ℤ ∕m ℤ
     x  ↦→   xe       et        x  ↦→   xd
sont réciproques l’une de l’autre.

Démonstration : Nous devons vérifier que

xed = x ∀x ∈ ℤ ∕m ℤ      (⋆).
Soit donc x ∈ ∕m. Nous allons procéder par étapes :
  1. Si x = �p dans ∕m. Il faut montrer que (�p) ed = �p , c’est à dire que ped p mod (pq).
    Il est clair que ped p mod p (car ped - p est divisibe par p).
    Soit p˜ la classe de p dans ∕q. Comme p et q sont premiers entre eux, ˜p ∈ U(∕q). Or ed 1 mod ((p - 1)(q - 1)), donc a fortiori ed 1 mod (q - 1). On peut donc appliquer le lemme à G = U(∕q), ce qui donne que (p˜ )ed = ˜p , c’est à dire que ped p mod q.

    On a donc montré que ped p mod p et ped p mod q. Or p et q étant premiers entre eux, cela implique (conséquence du théorème de Gauss) que ped p mod (pq), ce qu’il fallait démontrer.

  2. Si x = �q dans ∕m, alors qed p mod (pq) par symétrie des rôles de p et q, c’est à dire xed = x.
  3. Si x et y vérifient (), alors xy également. En effet, comme xed = x et yed = y,
    (xy)ed = xedyed = xy
    (tout est commutatif).
  4. D’après le lemme, () est vérifiée pour tout x ∈ U(∕m) (∕m) (puisque ce groupe est d’ordre n).

Montrons maintenant que () est vérifiée pour tout x ∈ ∕m. Soient x ∈ ∕met a ∈ tel que x = �a (dans ∕m). Alors a se décompose sous la forme

a =  pαqβb, α,β ∈ ℕ,  b ∧ (pq) = 1.
Alors
            α  β
x = a�=  (�p) (�q)�b.
  • On a vu que p� vérifie () et donc, d’après ce qui a été dit concernant le produit d’éléments vérifiant (), (p� )α vérifie ().
  • De même, (q� )β vérifie ().
  • Enfin, comme b (pq) = 1, �b ∈U(∕m), et �b vérifie ().

Conclusion : x s’écrit comme produit d’éléments vérifiant (), ce qui prouve que x vérifie lui même cette relation, c’est à dire que xed = x dans ∕m.

Version pdf de ce document : cliquez ici

Retour à l'article des Mathématiques