Mathématiques Expertes Terminale
Rejoignez la communauté !
Co-construisez les ressources dont vous avez besoin et partagez votre expertise pédagogique.
Nombres complexes
Ch. 1
Nombres complexes, point de vue algébrique
Ch. 2
Nombres complexes, point de vue géométrique
Arithmétique
Ch. 3
Divisibilité dans Z
Ch. 4
PGCD et applications
Ch. 5
Nombres premiers
Graphes et matrices
Ch. 6
Calcul matriciel et applications aux graphes
Ch. 7
Suites et matrices
Annexes
Cahier d'algorithmique et de programmation
Chapitre 5
TP / TICE 2

Système cryptographique RSA

Énoncé
Une personne A cherche à recevoir des messages de manière sécurisée et une personne B cherche à lui en envoyer. Les messages sont numérisés et transformés en une suite d'entiers. L'objectif est donc de transmettre des entiers sans que quiconque, autre que la personne A, puisse les décrypter.
Pour cela, la personne A choisit deux nombres premiers et puis calcule les produits et .
Elle choisit également un entier naturel premier avec . La personne A publie le couple , appelé clé publique, permettant à quiconque de lui envoyer un nombre crypté.
  • Pour crypter un entier compris entre et , la personne B calcule le reste dans la division euclidienne de par . Le nombre crypté qu'elle envoie à la personne A est
  • Pour décrypter le message, la personne A commence par calculer l'unique entier compris entre et tel que . Il est alors possible de montrer que cet entier vérifie , ce qui permet donc à la personne A de retrouver le nombre .

Question préliminaire :

Pourquoi la personne A est‑elle, en pratique, la seule capable de calculer l'entier et de déchiffrer les messages ?
Objectif
Mettre en œuvre l'algorithme de cryptage et de décryptage du système RSA dans le cas où , (c'est‑à‑dire et ) et , à l'aide d'une des deux méthodes.

Méthode 1
Tableur

1. La personne B veut crypter le nombre .
Réaliser une feuille de calcul comme ci‑dessous afin de calculer l'entier dans la cellule D2. (Fichier téléchargeable .)

maths expertes - chapitre 5 - Nombres premiers - TP2. Système cryptographique RSA - méthode 1
Le zoom est accessible dans la version Premium.

Quelle est la valeur de l'entier que la personne B doit transmettre à la personne A ?

2. a. À l'aide d'une feuille de calcul, calculer toutes les valeurs de , pour compris entre et .
Vérifier que l'entier , que doit calculer la personne A, est égal à . .)

b. Réaliser la feuille de calcul suivante donnant la liste des valeurs de modulo , en faisant dérouler la formule écrite en C2.

maths expertes - chapitre 5 - Nombres premiers - TP2. Système cryptographique RSA - méthode 1
Le zoom est accessible dans la version Premium.

Vérifier que la personne A va bien retrouver la valeur de , si elle reçoit la valeur transmise par la personne B dans la question 1..

Méthode 2
Python

1. Écrire en Python une fonction cryptage, prenant en argument a, N et c et permettant à B de trouver l'entier . Faire un test avec .



2. Pour déchiffrer le message, la personne A doit déterminer l'entier , compris entre et , tel que . Elle écrit le programme ci‑dessous.

def chercher_exposant(c, n):
	F = 0
	d = 0
	while ... :
		d = d + 1
		F = c*d % n
	return(d)

a. Expliquer chaque ligne du programme puis compléter la ligne 4.

b. Déterminer l'entier pour et .

c. Quelle méthode plus efficace pourrait‑on utiliser pour déterminer  ?

3. Écrire une fonction en langage Python ayant pour arguments b, d et N et retournant l'entier a.


Pour aller plus loin

Voir exercice .

Une erreur sur la page ? Une idée à proposer ?

Nos manuels sont collaboratifs, n'hésitez pas à nous en faire part.

Oups, une coquille

j'ai une idée !

Nous préparons votre pageNous vous offrons 5 essais
collaborateur

collaborateurYolène
collaborateurÉmilie
collaborateurJean-Paul
collaborateurFatima
collaborateurSarah

Premium activé


5
essais restants
Utilisation des cookies
Lors de votre navigation sur ce site, des cookies nécessaires au bon fonctionnement et exemptés de consentement sont déposés.