Chargement de l'audio en cours
Plus

Plus

TP2. Système cryptographique RSA
P.155

Mode édition
Ajouter

Ajouter

Terminer

Terminer

TP INFO


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 ?
Voir les réponses

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 DE RÉSOLUTION 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 ici.)

maths expertes - chapitre 5 - Nombres premiers - TP2. Système cryptographique RSA - méthode 1

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 à . ici.)


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

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..
Voir les réponses
MÉTHODE DE RÉSOLUTION 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.



Voir les réponses

Pour aller plus loin


Voir exercice
77
p. 162
.