Vous êtes sur la page 1sur 8

UT2J  Département de Mathématiques et Informatique Année 2017-2018

Master 1 ICE Fondements mathématiques pour la sécurité informatique I (UE MI0A704V)


Thème n◦ 2  Chuuut c'est un secret
emmanuel hallouin@univ-tlse2.fr www.math.univ-toulouse.fr/∼hallouin/eh-M1-ICE.html hallouin

Qu'est-ce qu'un système cryptographique ?


Formellement, c'est la donnée :
• d'un ensemble ni de textes clairs, noté P (pour plaintexts),
• d'un ensemble ni de textes chirés, noté C (pour cyphertexts),
• d'un ensemble ni de clés, noté K (pour keys),
• et pour chaque clé κ ∈ K, d'une application de chirement eκ : P → C (pour encryption) et
d'une application de déchirement dκ : C → P (pour decryption) telles que dκ (eκ (m)) = m pour
tout texte clair m ∈ P .
Ce système est dit à clé privée si les applications de chirement et de déchirement sont secrètes ; dans
ce cas, la mise en place d'un tel protocole nécessite un accord préalable entre les diérents protagonistes.
Le système est dit à clé publique si l'application de chirement est publique tandis que l'application de
déchirement est elle secrète ; dans ce cas n'importe qui peut rentrer en contact de façon sécurisée avec
le(s) détenteur(s) du secret. Nous allons nous concentrer sur un protocole cryptographique à clé publique.

Exercice 1 : Le système de cryptographie RSA


Un système de cryptographie à clé publique repose sur la connaissance de deux applications C de
Cryptage, et D de Décryptage telles que :
1. Pour tout message m, on a D(C(m)) = m ;
2. Connaissant C , il est impossible (ou plutôt très dicile) d'en déduire D ;
3. Mieux, connaissant une paire message  message crypté, i.e. un couple (m, C(m)) pour un certain
message m, il est tout aussi dicile d'en déduire D.
L'initiateur du protocole cryptographique rend publique l'application C de cryptage, ce qui permet à qui
veut d'encoder un message, et tient évidemment secret l'application D de décryptage. Ce faisant, il est le
seul à pouvoir décrypter un message.
En 1977, les mathématiciens Rivest, Shamir et Adleman ont proposé un tel protocole cryptographique,
le célèbre protocole RSA Pour le décrire, j'adopte la convention suivante : je réserve les caractères gras
aux données tenues secrètes.
Étant donnés p et q deux grands premiers de Z, posant n = pq, on se place dans Z/nZ∗ le groupe
des inversibles de l'anneau Z/nZ. Sont mis à la disposition de tout le monde l'entier n et c un entier
premier avec l'indicateur d'Euler ϕ(pq). En revanche sont tenus secrets la factorisation de n (ou encore
les premiers p et q) et d un inverse de c modulo ϕ(pq). Enn, les applications de cryptage et de décryptage
sont les suivantes :
C : Z/nZ∗ −→ Z/nZ∗ D : Z/nZ∗ −→ Z/nZ∗
x 7−→ xc y 7−→ yd

On dit que le uplet (n, p, q, c, d) forme une donnée RSA, l'entier n s'appelant un modulus RSA.
1. Commencer par spécier qui sont P, C, K et eκ , dκ dans le cas de RSA.
2. Méance, méance, est-ce bien vrai que C et D sont des bijections réciproques l'une de l'autre ?
Autrement dit, pourquoi a-t-on D(C(x)) = x pour tout x ∈ Z/nZ∗ ?
3. Evaluer le temps de calcul nécessaire au chirement et au déchirement en fonction de la taille des
données.

Exercice 2 : RSA entâme une analyse


An d'étudier la sécurité du système RSA, prenons pour acquis le fait suivant : si les premiers p
et q sont choisis susamment grands (et susamment bien) alors personne n'est en mesure de factoriser
ecacement l'entier n = pq. L'objet de cet exercice est de vérier, que toutes les données secrètes d'un

1
système RSA sont bel et bien protégées par ce fait. Pour ce faire, pour chaque donnée secrète X, on va
vérier le refrain suivant qui sait calculer (ecacement) la donnée secrète X sait (tout aussi ecacement)
factoriser l'entier n.
1. a. Commencer par vérier la véracité du refrain : qui sait calculer la donnée secrète ϕ(pq) sait
factoriser l'entier n. Faute d'idées commencer par traiter l'exemple qui suit.
b. Sachant que le modulus RSA n = 2501 vérie ϕ(n) = 2400, retrouver (sans factoriser) les
premiers p et q dont n est le produit.
2. Vérions expérimentalement le refrain : qui sait calculer la clé secrète d sait fatoriser l'entier n.
Pour cela, suivez le guide.
a. Combien Z/15Z∗ compte-t-il de racines carrées de 1 (c-a-d d'éléments x tels que x2 = 1) ?
Et Z/21Z∗ ?
b. Montrer que la connaissance de x racine carrée de 1 vériant x 6= ±1 mod n permet de facto-
riser n. Comment ?
c. Posons de − 1 = 2α r avec r impair. Montrer que le calcul des puissances x2 r mod n pour 0 6
β

β 6 α − 1 conduit forcément à celui d'une racine carrée de 1.


d. Soit n = 2990959 un modulus RSA et c = 2663 la clé de cryptage. Je vous livre la clé de
décryptage d = 2145807. Retrouver la factorisation de n à partir du tirage au hasard x = 2007517
(aidez-vous d'un système de calcul formel).
e. Essayer d'autres véritables tirages au hasard. Que constatez-vous ?
f. On reprend les données de la question précédente. Calculer la proportion de x ∈ Z/nZ∗ condui-
sant à une racine carrée non triviale de 1. Est-ce grave docteur ?

Exercice 3 : La recette de Wiener !


Encore un écueil à éviter lors de la construction d'un système de cryptographie RSA : il faut éviter
de choisir un clé de déchirement trop petite. Plus précisément,

si n = p × q désigne un modulus RSA et
si d est la clé de déchirement, il ne faut pas que d < 13 4 n. La preuve par l'exemple et l'expérience !
1. a. Avec WIMS, explorez l'Outil de calcul en ligne qui se nomme Contfrac√ 1+√5
.
b. Essayer par exemple de faire manger à cette routine les réels 2, 2 , π . Bizarre non ?
2. a. Construire un modulus RSA n = pq (pas trop petit) puis choisir un couple de clés (c, d) de telle
1√
sorte que d soit inférieur à 3 n. 4

b. Grâce à la commande Contfrac, calculer la suite des réduites de la fraction c/n. Que remarquez
vous ? C'est grave docteur ?
c. Répéter l'expérience √
à l'envie, puis en déduire la recette de Wiener permettant de calculer d, à
partir de n et c quand d < 13 4 n.
3. La tester avec les ingrédients n = 2417851639291930512195989 et c = 2139482442066189264342983 ;
autrement dit trouver la clé de déchirement !
4. Il se trouve que vous savez déjà calculer les convergents du développement en fractions continues
d'une fraction ab . Si, si, j'vous jure ! Cherchez bien dans votre subconscient. Vous trouvez pas ? Bon alors
procéder comme suit.
a. Dans un saladier cassez deux entiers a, b à trois chires et malaxer à la main jusqu'à obtenir
de beaux coecients de Bezout ainsi que pgcd(a, b).
b. Séparément, faites tourner le robot WIMS/Contfrac, avec l'entrée ab puis observer les convergents.
c. Comparer les coecients obtenus à la main avec les convergents obtenus au robot. Que remar-
quez vous ?

Exercice 4 : Le RSA encore d'actualité


1. a. Parmi la liste des couples (n, c) ∈ Z2 suivants :
(35, 5), (35, 15), (49, 11), (143, 53),

identier ceux qui peuvent être constitués d'un modulus RSA accompagné d'une clé de chirement.
b. Quand c'est le cas, donner la clé de déchirement.
2. On choisit la modulus RSA n = 91 = 7 × 13 avec 29 pour clé de chirement.

2
a. Indiquer les étapes de l'exponentiation dichotomique permettant de coder un message x Combien
de produits doit-on eectuer ?
b. Sans la calculer explicitement, préciser quelle est la clé de déchirement ?
c. Sachant que cette clé vaut 5, déchirer le message 10.
3. On se donne n = pq produit de deux premiers dont les décompositions binaires comptent chacune
512 bits.

a. Si on choisit une clé de chirement avoisinant n, quel est l'ordre de grandeur du nombre de
produits nécessaires pour chirer un message ?
b. Quel est l'ordre de grandeur du nombre de divisions que doit eectuer un éventuel attaquant
pour retrouver p et q avec l'algorithme de factorisation naïf ?

Exercice 5 : RSA évidemment !


1. Parmi la liste des couples (n, c) ∈ Z2 suivants :
(30, 13), (77, 7), (35, 9),

identier ceux qui peuvent être constitués d'un modulus RSA accompagné d'une clé de chirement.
2. On choisit la modulus RSA n = 65 = 5 × 13 avec c = 11 pour clé de chirement.
a. Chirer le message x = 2 (une congruence qui peut vous être utile : 28 ≡ 61 (mod 65)).
b. Déterminer la clé d de déchirement.
c. Combien de carrés et de produits doit-on calculer pour déchirer un message ? Expliquer.
3. On se donne n = pq produit de deux premiers dont les décompositions binaires comptent chacune
512 bits.

a. Si on choisit une clé de chirement avoisinant n, quel est l'ordre de grandeur du nombre de
produits nécessaires pour chirer un message ?
b. Quel est l'ordre de grandeur du nombre de divisions que doit eectuer un éventuel attaquant
pour retrouver p et q avec l'algorithme de factorisation naïf ?

Exercice 6 : Réexion Synthèse Abstraction (RSA)


Dans tout cet exercice (n, c, d) sont des données RSA ; en particulier l'entier n, dit modulus RSA, est
produit de deux premiers distincts, notés p et q .
1. On choisit p = 7 et q = 13, si bien que le modulus RSA n vaut 91. Parmi les entiers 19, 20, 21, 22, 23,
lesquels peuvent-ils être choisis comme clé de chirement avec ce modulus RSA ? Calculer la clé de
déchirement correspondant à la plus grande de ces clés.
2. On choisit p = 7 et c = 5. Parmi les premiers 11, 13, 17, lesquels peuvent-ils être choisis comme
second premier q avec la clé de chirement imposée.
3. On se donne le modulus RSA n = 77 = 7 × 11 et la clé de chirement c = 13.
a. Comment est chiré le message 3 ?
b. Quelle est la clé de déchirement ?
c. Décrire (sans eectuer les calculs) les étapes du déchirement d'un message x ∈ Z/77Z∗ .

Exercice 7 : Chirer pour Déchirer


Dans tout cet exercice (n, c, d) sont des données RSA ; en particulier l'entier n, dit modulus RSA, est
produit de deux premiers distincts, notés p et q .
1. On choisit n = 77 et c = 17.
a. Chirer le message 3.
b. Quelle est la clé de déchirement (la réponse retournée doit être le plus petit entier positif
possible) ?
c. Décrire toutes les étapes du déchirement d'un message x.
2. Dans cette question, on suppose que le premier nombre premier p vaut 7.
a. Si le second nombre premier est q = 23, parmi 10, 11, 12, 13, 14, 15 quels entiers peuvent-ils être
choisis comme clé de chirement ?
b. Si le second nombre premier est q = 11, quel couple (c, d) parmi (7, 43), (13, 5) peut-il être
choisi comme couple clés de chirement/déchirement.

3
c. Si on se xe c = 5 comme clé de chirement, quels premiers q parmi 11, 13, 17, 19 peuvent-ils
être choisis pour que cette clé soit licite avec le modulus RSA n = pq ?
3. On choisit les données RSA :
n = 3782033 = (1110011011010110010001)2 c = 3254021 = (1100011010011100000101)2

chacun des entiers étant donné en base 10 puis 2.


a. Combien de produits sont-ils nécessaires pour chirer un message avec ce protocole RSA ?
b. Sachant les deux premiers dont n est le produit sont de tailles égales (à un bit près), quel est
l'ordre de grandeur de la taille de ces deux premiers ?
c. Combien d'opérations au maximum devra eectuer un attaquant s'il cherche à déchirer un
message en chirant successivement tous les messages jusqu'à tomber sur le chiré qu'il veut déchirer.

Exercice 8 : Boite à clés


1. On considère le protocole RSA avec n = 91 = 7 × 13 et c = 5 comme clé de chirement.
a. Chirer le message 10.
b. Déterminer la clé de déchirement.
c. Combien de produits sont-ils nécessaires pour déchirer un message ?
2. Pour le même modulus RSA, n = 91, donner toutes les clés de chirement possibles entre 15 et 20
compris.
3. Parmi les triplets (n, c, d) suivants :
(a) (105, 11, 29) (b) (35, 11, 13) (c) (91, 5, 29)

identier le(s) triplet(s) respectant les contraintes d'une donnée RSA.


4. a. Quel est l'ordre de grandeur du nombre d'opérations requises pour le chirement d'un message
avec un protocole RSA dont le modulus, ainsi que la clé de chirement comptent 128 bits ?
b. On considère un modulus RSA n = pq avec p < q deux premiers ayant chacun 128 bits.
Quel est l'ordre de grandeur du nombre de divisions qu'il faut eectuer pour calculer p en divisant n
par 2, 3, 4, 5 . . . p ?

Exercice 9 : RSA poursuit son analyse


Soit n = 2773 un entier RSA, c'est-à-dire de la forme p × q avec p et q premiers.
1. a. Sachant que ϕ(n) = 2668, calculer p + q.
b. Donner le polynôme de degré 2 dont p et q sont les racines (on ne demande pas de résoudre ce
polynôme).
2. On garde la même valeur de n et on choisit comme clé de chirement c = 59.
a. Sachant que la clé de déchirement vaut d = 407 et que cd − 1 = 4 × 6003, expliquer la stratégie
qui peut nous conduire à p et q .
b. Sachant que 26003 ≡ 471 (mod n) et que 212006 ≡ 1 (mod n), calculer p et q .

Exercice 10 : Sur le divan pour une cryptanalyse


1. On choisit n = 437 comme modulus RSA et on dévoile la valeur ϕ(n) = 396.
a. Donner le polynôme X 2 + aX + b ayant pour racines les deux premiers dont n est le produit.
b. Sachant que le discriminant de ce polynôme vaut 16, retrouver ces deux premiers.
2. Dans cette question on choisit le modulus RSA n = 2993, la clé de chirement c = 43 et on dévoile
la clé de déchirement d = 67. On vérie que cd−1 = 2880 = 26 ×45. On tire x au hasard dans Z/2993Z∗ ,
on pose y = x45 puis on calcule les carrés successifs de y .
a. Au bout de combien de carrés est-on assuré de trouver 1 mod 2993 ?
b. On fournit le trace de calculs suivante :
x x45 x2×45 x4×45 x8×45
26 314 2820 2992 1
27 465 729 1680 1

4
Entre 26 et 27 quel est celui qui permet de factoriser n ?
c. Donner les deux pgcd qui sont égaux aux deux premiers dont n est le produit (on ne demande
pas de les calculer).
3. On choisit le modulus RSA n = 221 avec (c, d) = (79, 175) comme couple clé de chirement, clé de
déchirement. On a c × d − 1 = 29 × 27. Enn on fournit la table comportant les 44 entrées suivantes :
x x27 x2×27 x4×27 x8×27 x16×27 x x27 x2×27 x4×27 x8×27 x16×27
2 8 64 118 1 1 27 105 196 183 118 1
3 92 66 157 118 1 28 216 25 183 118 1
4 64 118 1 1 1 29 40 53 157 118 1
5 164 155 157 118 1 30 38 118 1 1 1
6 73 25 183 118 1 31 112 168 157 118 1
7 31 77 183 118 1 32 60 64 118 1 1
8 70 38 118 1 1 33 135 103 1 1 1
9 66 157 118 1 1 35 1 1 1 1 1
10 207 196 183 118 1 36 25 183 118 1 1
11 148 25 183 118 1 37 109 168 157 118 1
12 142 53 157 118 1 38 64 118 1 1 1
14 27 66 157 118 1 40 209 144 183 118 1
15 60 64 118 1 1 41 99 77 183 118 1
16 118 1 1 1 1 42 53 157 118 1 1
18 86 103 1 1 1 43 168 157 118 1 1
19 8 64 118 1 1 44 190 77 183 118 1
20 109 168 157 118 1 45 216 25 183 118 1
21 200 220 1 1 1 46 57 155 157 118 1
22 79 53 157 118 1 47 174 220 1 1 1
23 90 144 183 118 1 48 27 66 157 118 1
24 31 77 183 118 1 49 77 183 118 1 1
25 155 157 118 1 1 50 135 103 1 1 1

a. Identier les racines carrées non triviales de 1 dans Z/221Z∗ .


b. Donner la liste des tirages de x ∈ Z/221Z∗ qui ne permettent pas de factoriser 221 en utilisant
la connaissance de c et d.
c. Dans cette liste, quelle est la proportion de bons tirages, c'est-à-dire ceux qui conduisent à une
factorisation de 221 ?

Exercice 11 : Encore une séance de cryptanalyse


1. On choisit n = 551 comme modulus RSA et on dévoile la valeur ϕ(n) = 504.
a. Donner le trinôme X 2 + aX + b ayant pour racines les deux premiers dont n est le produit.
b. Sachant que le discriminant de ce polynôme vaut 100, retrouver ces deux premiers.
2. Dans cette question on choisit le modulus RSA, n = 1271, la clé de chirement c = 91 et on
dévoile la clé de déchirement d = 211. On vérie que cd − 1 = 19200 = 28 × 75. Suivant l'algorithme
probabiliste de factorisation de l'entier n en utilisant la connaissance des deux clés c et d, on tire x au
hasard dans Z/1271Z∗ , on calcule x75 puis ses carrés successifs jusqu'à trouver 1. Voici un tableau partiel
avec six tirages de x particuliers.

x x75 x2×75 x4×75 x8×75


100 1 1 1 1
101 776 993 1
102 993 1024 1 1
103 32 1 1
104 495 993 1
105 1 1 1

5
a. Quelle racine carrée non triviale de 1 apparaît-elle dans ce tableau ? Quelle est l'autre racine
carrée non triviale de 1 ?
b. Donner deux pgcd qui sont égaux aux deux premiers dont n est le produit (on ne demande pas
de les calculer).
c. Je vous livre les informations complémentaires suivantes : une seule des deux racines carrées non
triviale de 1 apparaît dans le tableau mais les deux triviales y gurent ; seuls 100 et 105 sont des mauvais
tirages (ils ne permettent pas de factoriser n). Compléter les quatre cases vides du tableau. Expliquer.
d. Le tirage x = 37 est encore gagnant et révèle l'autre racine carrée de 1 avec le minimum d'étapes
de calculs possibles. Décrire l'algorithme de factorisation de n dans ce cas.
3. On choisit le modulus RSA n = 323 avec (c, d) = (19, 91) comme couple clé de chirement, clé de
déchirement. On a c × d − 1 = 26 × 27. Enn on fournit la table comportant les 40 entrées suivantes :
x x27 x2×27 x4×27 x8×27 x16×27 x x27 x2×27 x4×27 x8×27 x16×27
1 1 1 1 1 1 23 39 229 115 305 1
2 246 115 305 1 1 24 286 77 115 305 1
3 75 134 191 305 1 25 172 191 305 1 1
4 115 305 1 1 1 26 134 191 305 1 1
5 96 172 191 305 1 27 37 77 115 305 1
6 39 229 115 305 1 28 267 229 115 305 1
7 286 77 115 305 1 29 227 172 191 305 1
8 189 191 305 1 1 30 191 305 1 1 1
9 134 191 305 1 1 31 265 134 191 305 1
10 37 77 115 305 1 32 94 115 305 1 1
11 267 229 115 305 1 33 322 1 1 1 1
12 227 172 191 305 1 35 1 1 1 1 1
13 208 305 1 1 1 36 229 115 305 1 1
14 265 134 191 305 1 37 75 134 191 305 1
15 94 115 305 1 1 39 96 172 191 305 1
16 305 1 1 1 1 40 56 229 115 305 1
18 18 1 1 1 1 41 303 77 115 305 1
20 58 134 191 305 1 42 172 191 305 1 1
21 132 305 1 1 1 43 134 191 305 1 1
22 113 172 191 305 1 44 20 77 115 305 1

a. Identier les racines carrées non triviales de 1 dans Z/323Z∗ .


b. Calculer les premiers p et q dont n = 323 est le produit.
c. Donner la liste des tirages de x ∈ Z/323Z∗ qui ne permettent pas de factoriser 323 en utilisant
la connaissance de c et d.
d. Dans cette liste, quelle est la proportion de bons tirages, c'est-à-dire ceux qui conduisent à une
factorisation de 323 ?

Exercice 12 : Cryptanalysons
1. On choisit n = 589 comme modulus RSA et on dévoile la valeur ϕ(n) = 540.
a. Donner le trinôme X 2 + aX + b ayant pour racines les deux premiers dont n est le produit.
b. Sachant que le discriminant de ce polynôme vaut 144, retrouver ces deux premiers.
2. Dans cette question on choisit le modulus RSA, n = 1189, la clé de chirement c = 19 et on dévoile
la clé de déchirement d = 59. On vérie que cd − 1 = 25 × 35. Suivant l'algorithme probabiliste de factori-
sation de l'entier n en utilisant la connaissance des deux clés c et d, on tire x au hasard dans Z/1189Z∗ , on
calcule x35 puis ses carrés successifs jusqu'à trouver 1. Voici un extrait des traces d'exécution de quelques

6
tirages.
x x35 x2×35 x4×35 x8×35
2 911 1 1
3 273 811 204 1
16
31 737 1 1
a. Identier une racine carrée non triviale de 1 dans Z/1189Z, puis donner la valeur de l'autre.
b. Sachant que le tirage x = 31 permet de factoriser n, quelles sont les valeurs possibles dans la
case vide de la ligne correspondante.
c. Sachant que le tirage x = 2 ne permet pas de factoriser n, quelles sont les valeurs possibles
dans la case vide de la ligne correspondante.
d. Sachant que pour le tirage x = 16, l'algorithme ne rentre même pas dans la boucle des carrés,
compléter la ligne correspondante.
e. Indépendamment de ces exemples, combien de carrés successifs doit-on calculer au maximum
avant de trouver 1 dans l'algorithme.
f. Donner les pgcd qui permettent de calculer les deux premiers dont n est le produit, puis calculer
ces premiers.
3. On choisit le modulus RSA n = 1763 avec (c, d) = (47, 143) comme couple clé de chirement, clé
de déchirement. On a c × d − 1 = 26 × 105. Enn on fournit la table comportant les 40 entrées suivantes :
x x105 x2×105 x4×105 x8×105 x x105 x2×105 x4×105 x8×105
1 1 1 1 1 21 173 1721 1 1
2 1590 1721 1 1 22 601 1549 1721 1
3 85 173 1721 1 23 1721 1 1 1
4 1721 1 1 1 24 560 1549 1721 1
5 214 1721 1 1 25 1721 1 1 1
6 1162 1549 1721 1 26 1203 1549 1721 1
7 85 173 1721 1 27 601 1549 1721 1
8 214 1721 1 1 28 1719 173 1721 1
9 173 1721 1 1 29 85 173 1721 1
10 1 1 1 1 30 85 173 1721 1
11 1678 173 1721 1 31 1721 1 1 1
12 1719 173 1721 1 32 1590 1721 1 1
13 44 173 1721 1 33 1590 1721 1 1
14 1162 1549 1721 1 34 1719 173 1721 1
15 560 1549 1721 1 35 560 1549 1721 1
16 1 1 1 1 36 1549 1721 1 1
17 1162 1549 1721 1 37 42 1 1 1
18 42 1 1 1 38 1678 173 1721 1
19 1203 1549 1721 1 39 214 1721 1 1
20 1590 1721 1 1 40 1721 1 1 1

a. Identier les racines carrées non triviales de 1 dans Z/1763Z∗ .


b. Donner la liste des tirages de x ∈ Z/1763Z∗ qui ne permettent pas de factoriser 1763 en utilisant
la connaissance de c et d.
c. Dans cette liste, quelle est la proportion de bons tirages, c'est-à-dire ceux qui conduisent à une
factorisation de 1763 ?

Exercice 13 : Distributeur de p,q


1. On choisit le modulus RSA n = 437 et on divulgue l'indicateur d'Euler ϕ(n) = 396.
a. Donner un polynôme X 2 + bX + c dont les racines sont les deux premiers dont n est le produit.
b. Sachant que le discriminant ∆ de ce polynôme vaut 16, calculer ces deux premiers.

7
2. On choisit le modulus RSA n = 1189 avec la clé de chirement c = 87 et on dévoile la clé de
déchirement d = 103. On a c × d − 1 = 28 × 35. Voici quelques questions autour de l'algorithme qui
permet de calculer les premiers p et q dont n est le produit, à partir de la connaissance de c et d.
a. On tire au hasard l'élément x = 3. Décrivez les étapes de l'algorithme et son issue pour ce
tirage, sachant que y = x35 = 273 mod 1189 et en vous aidant de la table des puissances modulo 1189
ci-dessous.
i 1 2 3 4 5 6 7 8 9 10
273i mod 1189 273 811 249 204 998 173 858 1 273 811
i 11 12 13 14 15 16 17 18 19 20
i
273 mod 1189 249 204 998 173 858 1 273 811 249 204
b. Quelles sont les deux racines carrées non triviales de 1 modulo 1189 ?
c. Donner les deux pgcd égaux à p et q et calculer l'un des deux premiers p et q .
d. Sachant qu'il faut calculer deux carrés pour se rendre compte que 2 est un mauvais tirage,
remplir les cases vides de la table suivante :
x x35 x2×35 x4×35 x8×35 x16×35
2 911

e. Sachant qu'il sut de calculer un seul carré pour se rendre compte que 42 est un bon tirage et
sachant qu'il ne mène pas à la même racine carrée non triviale de 1 que le tirage 3, remplir les cases vides
de la table suivante :
x x35 x2×35 x4×35 x8×35 x16×35
42
f. Combien de carrés faudra-t-il au maximum pour se rendre compte si un tirage est bon ou non.
3. Dans cette question le modulus RSA est 3233. Le couple clés de chirement/déchirement est (c, d) =
(47, 863) et il vérie c × d − 1 = 24 × r avec r impair. On fournit la table suivante :

x xr x2×r x4×r x xr x2×r x4×r x xr x2×r x4×r


2 1719 3232 1 12 3051 794 1 22 3051 794 1
3 182 794 1 13 1 1 1 23 560 3232 1
4 3232 1 1 14 2256 794 1 24 743 2439 1
5 2256 794 1 15 1 1 1 25 794 1 1
6 2490 2439 1 16 1 1 1 26 1719 3232 1
7 1536 2439 1 17 2490 2439 1 27 2256 794 1
8 1514 3232 1 18 560 3232 1 28 1697 2439 1
9 794 1 1 19 182 794 1 29 2490 2439 1
10 1697 2439 1 20 977 794 1 30 1719 3232 1
11 2490 2439 1 21 1514 3232 1 31 2673 3232 1

a. Identier les racines carrées non triviales de 1 modulo 3233.


b. Donner la liste des tirages qui ne permettent pas de factoriser 3233.
c. Donner une paire de pgcd égale à la paire des premiers dont n est le produit.
d. Quelle est la proportion de tirages permettant de factoriser 3233.

Vous aimerez peut-être aussi