78
Système de cryptographie de RSA
[
Calculer, Modéliser.]
D'après bac S, Centres étrangers, juin 2018
Le but de cet exercice est d'envisager une méthode de cryptage à clé publique d'une information numérique, appelée système RSA. Les questions
1. et
2. sont des questions préparatoires, la question
3. aborde le cryptage et la question
4. le décryptage.
1. Cette question envisage de calculer le reste dans la division euclidienne par
55 de certaines puissances de
8.
a. Vérifier que 8^{7} \equiv 2[55]. En déduire le reste dans la division euclidienne de 8^{21} par 55.
b. Vérifier que 8^{2} \equiv 9[55], puis déduire de la question a. le reste dans la division euclidienne par 55 de 8^{23}.
2. Dans cette question, on considère l'équation
(\mathrm{E}): 23 x-40 y=1, dont les solutions sont des couples
(x\,; y) d'entiers relatifs.
a. Justifier le fait que (\mathrm{E}) admet au moins un couple solution.
b. Donner une solution particulière de (\mathrm{E}).
c. Déterminer tous les couples d'entiers relatifs solutions de (\mathrm{E}).
d. En déduire qu'il existe un unique entier d vérifiant les conditions 0 \leqslant d \lt 40 et 23 d \equiv 1[40].
3. Cryptage dans le système RSA
Une personne A choisit deux nombres premiers
p et
q, puis calcule les produits
\mathrm{N} = pq et
n=(p-1)(q-1).
Elle choisit également un entier naturel
c premier avec
n. La personne A publie le couple
(\mathrm{N}\,; c), qui est une clé publique permettant à quiconque de lui envoyer un nombre crypté. Les messages sont numérisés et transformés en une suite d'entiers compris entre
0 et
\mathrm{N} - 1.
Pour crypter un entier
a, on calcule le reste
b dans la division euclidienne par
\mathrm{N} du nombre
a^c. Le nombre crypté est alors l'entier
b.
Dans la pratique, cette méthode est sûre si la personne A choisit des nombres premiers
p et
q très grands, s'écrivant avec plusieurs dizaines de chiffres. On va l'envisager ici avec des nombres plus simples :
p=5 et
q=11. La personne A choisit aussi
c=23.
a. Calculer les nombres \mathrm{N} et n, puis justifier que la valeur de c vérifie la condition voulue.
b. Un émetteur souhaite envoyer à la personne A le nombre a=8.
Déterminer la valeur du nombre crypté b.
4. Décryptage dans le système RSA
La personne A calcule dans un premier temps l'unique entier naturel
d vérifiant les conditions
0 \leqslant d \lt n et
c d \equiv 1[n]. Elle garde secret ce nombre
d qui lui permet, à elle seule, de décrypter les nombres qui lui ont été envoyés cryptés avec sa clé publique.
Pour décrypter un nombre crypté
b, la personne A calcule le reste
a dans la division euclidienne par
\mathrm{N} du nombre
b^d, et le nombre en clair – c'est‑à‑dire le nombre avant cryptage – est le nombre
a. Pour cette question, les nombres choisis par A sont encore
p=5,
q=11 et
c=23.
a. Quelle est la valeur de d ?
b. En appliquant la règle de décryptage, retrouver le nombre en clair lorsque le nombre crypté est b=17.
On pourra aussi consulter le
.