Théorie des nombres et arithmétique modulaire : exercices corrigés pas à pas
Aussi appelé : arithmétique modulaire · algorithme d’Euclide
Exercices gratuits sur Théorie des nombres et arithmétique modulaire avec schémas, indices et corrigés complets. De nouvelles valeurs à chaque fois, à trois niveaux : pgcd et restes, inverses et congruences, puissances modulaires et RSA.
Comment résoudre les exercices de Théorie des nombres et arithmétique modulaire
Réduisez d’abord chaque nombre modulo n ; les restes sont compris entre 0 et n − 1.
Pour un pgcd, divisez plusieurs fois avec l’algorithme d’Euclide ; le dernier reste non nul est le pgcd.
Pour un inverse, appliquez l’algorithme étendu et gardez le coefficient de a ; ajoutez n s’il est négatif.
Résolvez a·x ≡ b en multipliant par a⁻¹ ; combinez deux congruences en écrivant x = r₁ + m₁k.
Pour les puissances, écrivez l’exposant en binaire et élevez au carré à répétition ; en RSA, d = e⁻¹ mod φ(n) avec φ(n) = (p − 1)(q − 1).
Erreurs fréquentes
Donner un reste négatif pour un nombre négatif.
S’arrêter au premier reste dans l’algorithme d’Euclide.
Laisser l’inverse négatif au lieu d’ajouter n.
Prendre l’exposant RSA d modulo n au lieu de φ(n).
Réduire l’exposant modulo p au lieu de p − 1 avec le théorème de Fermat.
Formules clés
Division avec reste
a = q·n + r, 0 ≤ r < n
Euclide
gcd(a, b) = gcd(b, a mod b)
Plus petit commun multiple
lcm(a, b) = a·b/gcd(a, b)
Inverse
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
Congruence linéaire
a·x ≡ b → x ≡ a⁻¹·b (mod n)
Indicatrice d’Euler
φ(n) = n·∏(1 − 1/p), φ(pᵏ) = pᵏ − pᵏ⁻¹
Fermat
aᵖ⁻¹ ≡ 1 (mod p)
RSA
n = pq, φ = (p − 1)(q − 1), d = e⁻¹ mod φ, c = mᵉ mod n, m = cᵈ mod n
Apprendre Théorie des nombres et arithmétique modulaire depuis zéro
1Restes et congruences
Diviser a par n donne un quotient q et un reste r : a = q·n + r avec 0 ≤ r < n. Le reste se note a mod n. Pour un nombre négatif q est aussi négatif : −3 = −1·7 + 4, donc −3 mod 7 = 4.
Deux nombres sont congrus modulo n, a ≡ b (mod n), quand ils ont le même reste, c’est-à-dire quand n divise a − b.
On peut réduire les restes à chaque étape, ce qui garde les nombres petits :
(a + b) mod n = ((a mod n) + (b mod n)) mod n, et de même pour a·b
Par exemple 47·58 mod 9 : 47 ≡ 2 et 58 ≡ 4, donc 47·58 ≡ 8 (mod 9).
Auto-évaluation Que vaut −17 mod 5 ?
2
3
−2
−3
Réponse: 3. −17 = −4·5 + 3, donc le reste est 3. La réponse 2 est 17 mod 5 ; un reste n’est jamais négatif.
2Algorithme d’Euclide
Le plus grand commun diviseur pgcd(a, b) est le plus grand nombre qui divise les deux. L’algorithme d’Euclide utilise pgcd(a, b) = pgcd(b, a mod b) :
Divisez : a = q·b + r.
Remplacez (a, b) par (b, r).
Répétez jusqu’à ce que le reste soit 0. Le dernier reste non nul est le pgcd.
Le plus petit commun multiple s’en déduit : ppcm(a, b) = a·b / pgcd(a, b).
Auto-évaluation Que vaut pgcd(84, 36) ?
12
252
4
6
Réponse: 12. 84 = 2·36 + 12 et 36 = 3·12 + 0, donc le pgcd est 12. 252 est le plus petit commun multiple, 84·36/12.
3Inverses et algorithme étendu
L’inverse de a modulo n est le nombre x tel que a·x ≡ 1 (mod n). Il existe exactement quand pgcd(a, n) = 1.
L’algorithme d’Euclide étendu applique Euclide à (n, a) et garde un coefficient t pour chaque reste, de sorte que chaque reste r ≡ t·a (mod n). Commencez avec t = 0 pour n et t = 1 pour a ; chaque nouveau t est le t de deux lignes plus haut moins q fois le t d’une ligne plus haut. Quand le reste 1 apparaît, son t est l’inverse.
Avec l’inverse, une congruence a·x ≡ b (mod n) se résout par x ≡ a⁻¹·b. Quand d = pgcd(a, n) est supérieur à 1, il y a d solutions si d divise b, et aucune sinon.
Deux congruences à modules premiers entre eux, x ≡ r₁ (mod m₁) et x ≡ r₂ (mod m₂), ont exactement une solution modulo m₁·m₂ (théorème des restes chinois). Écrivez x = r₁ + m₁k et résolvez pour k.
Le carré répété calcule rapidement aᵏ mod n : écrivez k en binaire, trouvez a, a², a⁴, a⁸, … mod n en élevant au carré et en réduisant, et multipliez les puissances dont le bit vaut 1.
Petit théorème de Fermat : pour un nombre premier p qui ne divise pas a, aᵖ⁻¹ ≡ 1 (mod p). On peut donc réduire l’exposant modulo p − 1.
Le RSA construit une clé à partir de deux nombres premiers p et q :
n = p·q et φ(n) = (p − 1)(q − 1).
Choisissez e avec pgcd(e, φ(n)) = 1 ; (n, e) est la clé publique.
Calculez d = e⁻¹ mod φ(n) : la clé privée.
Chiffrer c = mᵉ mod n ; déchiffrer m = cᵈ mod n.
L’indicatrice d’Euler φ(n) compte les nombres de 1 à n premiers avec n : φ(p) = p − 1 pour un nombre premier, φ(pᵏ) = pᵏ − pᵏ⁻¹, et φ est multiplicative pour des facteurs premiers entre eux.
Auto-évaluation Une clé RSA utilise p = 5, q = 11 et e = 3. Que vaut d ?
13
27
37
3
Réponse: 27. φ(n) = 4·10 = 40, et 3·27 = 81 = 2·40 + 1, donc d = 27. L’inverse de 3 modulo n = 55 serait 37, mais d se prend modulo φ(n).
5Erreurs fréquentes
Donner un reste négatif pour un nombre négatif : −17 mod 5 vaut 3, pas −2.
S’arrêter dans Euclide au premier reste au lieu du dernier reste non nul.
Oublier d’ajouter n à un coefficient négatif de l’algorithme étendu.
Calculer l’exposant RSA d modulo n au lieu de modulo φ(n).
Réduire un exposant modulo p au lieu de p − 1 avec le théorème de Fermat.
6À quoi ressemblent les questions d’examen
Facile : pgcd et restes. Vous appliquez l’algorithme d’Euclide pour un pgcd ou un ppcm, trouvez les restes de nombres négatifs, et réduisez des sommes et des produits modulo n.
Moyen : inverses et congruences. Vous trouvez des inverses modulaires avec l’algorithme étendu, résolvez des congruences linéaires, combinez deux congruences avec le théorème des restes chinois, et calculez φ(n) d’Euler.
Difficile : puissances modulaires et RSA. Vous utilisez le carré répété et le théorème de Fermat, résolvez des congruences à plusieurs solutions, et trouvez des exposants privés RSA, des chiffrés et des messages déchiffrés.
Trouvez (914·953) mod 11 sans développer les grands nombres : réduisez d’abord.
n = 11
Calculer (914·953) mod 11
Afficher les indices
(x·y) mod n = ((x mod n)·(y mod n)) mod n, et il en va de même pour les sommes.
914 mod 11 = 1, 953 mod 11 = 7.
Réduisez le produit des restes modulo 11.
Afficher la réponse et la solution pas à pas
Divisibilité et restes : a mod n est le reste r avec 0 ≤ r < n et a = q·n + r, y compris quand a est négatif. L’algorithme d’Euclide trouve pgcd(a, b) en répétant a = q·b + r et en remplaçant (a, b) par (b, r) ; le dernier reste non nul est le pgcd. Ensuite ppcm(a, b) = a·b/pgcd(a, b). On peut réduire les restes à chaque étape : (a + b) mod n et (a·b) mod n ne dépendent que de a mod n et b mod n.
Réduire chaque nombre
914 ≡ 1, 953 ≡ 7 (mod 11)
Combiner
1·7 = 7 ≡ 7 (mod 11)
Réponse
(914·953) mod 11 = 7
Exemple 2Moyen
Trouvez l’indicatrice d’Euler φ(637), le nombre d’entiers de 1 à 637 premiers avec 637.
n = 637 = 72·13
Calculer φ(637)
Afficher les indices
Décomposez n en facteurs premiers : 637 = 72·13.
φ est multiplicative pour des facteurs premiers entre eux, et φ(pᵏ) = pᵏ − pᵏ⁻¹.
φ(n) = n·∏(1 − 1/p).
Afficher la réponse et la solution pas à pas
Inverses et congruences : a a un inverse modulo n exactement quand pgcd(a, n) = 1. L’algorithme d’Euclide étendu écrit 1 = s·n + t·a, et alors a⁻¹ ≡ t (mod n). Une congruence a·x ≡ b (mod n) avec pgcd(a, n) = 1 a pour solution x ≡ a⁻¹·b. Deux congruences x ≡ r₁ (mod m₁) et x ≡ r₂ (mod m₂) à modules premiers entre eux ont une solution modulo m₁·m₂ (théorème des restes chinois). L’indicatrice d’Euler φ(n) compte les nombres de 1 à n premiers avec n : φ(n) = n·∏(1 − 1/p).
Facteurs premiers
637 = 72·13
Indicatrice
φ(637) = φ(49)·φ(13) = 42·12 = 504
Réponse
φ(637) = 504
Exemple 3Difficile
Une clé RSA utilise p = 13, q = 37 et e = 23. Déchiffrez le chiffré c = 225 : trouvez le message m.
p = 13q = 37e = 23c = 225
Calculer m
Afficher les indices
n = 481, φ(n) = 432.
d = e⁻¹ mod φ(n) = 263.
m = cd mod n = 225263 mod 481: utilisez le carré répété.
Afficher la réponse et la solution pas à pas
Puissances modulaires et RSA : calculez aᵏ mod n par carrés répétés : écrivez k en binaire, élevez au carré, réduisez après chaque étape et multipliez les puissances dont le bit vaut 1. Fermat : aᵖ⁻¹ ≡ 1 (mod p) pour un nombre premier p ne divisant pas a, donc l’exposant peut être réduit modulo p − 1. RSA : choisissez des nombres premiers p et q, n = p·q et φ(n) = (p − 1)(q − 1) ; l’exposant public e est premier avec φ(n), et l’exposant privé est d = e⁻¹ mod φ(n). Chiffre avec c = mᵉ mod n et déchiffrez avec m = cᵈ mod n.
Exposant privé
n = 481, φ(n) = 432
d = 23−1 mod 432 = 263
Déchiffrer par carré répété
263 = 256 + 4 + 2 + 1
2251 ≡ 225 (mod 481)
2252 ≡ 120 (mod 481)
2254 ≡ 451 (mod 481)
2258 ≡ 419 (mod 481)
22516 ≡ 477 (mod 481)
22532 ≡ 16 (mod 481)
22564 ≡ 256 (mod 481)
225128 ≡ 120 (mod 481)
225256 ≡ 451 (mod 481)
225263 ≡ 225·120·451·451 ≡ 361 (mod 481)
Message
m = 361
vérification: 36123 mod 481 = 225
Réponse
m = 361
Questions et réponses
Théorie des nombres et arithmétique modulaire : de quoi s’agit-il ?
Diviser a par n donne un quotient q et un reste r : a = q·n + r avec 0 ≤ r < n. Le reste se note a mod n. Pour un nombre négatif q est aussi négatif : −3 = −1·7 + 4, donc −3 mod 7 = 4.
Deux nombres sont congrus modulo n, a ≡ b (mod n), quand ils ont le même reste, c’est-à-dire quand n divise a − b.
Théorie des nombres et arithmétique modulaire : comment résoudre les exercices étape par étape ?
Réduisez d’abord chaque nombre modulo n ; les restes sont compris entre 0 et n − 1.
Pour un pgcd, divisez plusieurs fois avec l’algorithme d’Euclide ; le dernier reste non nul est le pgcd.
Pour un inverse, appliquez l’algorithme étendu et gardez le coefficient de a ; ajoutez n s’il est négatif.
Résolvez a·x ≡ b en multipliant par a⁻¹ ; combinez deux congruences en écrivant x = r₁ + m₁k.
Pour les puissances, écrivez l’exposant en binaire et élevez au carré à répétition ; en RSA, d = e⁻¹ mod φ(n) avec φ(n) = (p − 1)(q − 1).
Théorie des nombres et arithmétique modulaire : quelles sont les erreurs fréquentes ?
Donner un reste négatif pour un nombre négatif.
S’arrêter au premier reste dans l’algorithme d’Euclide.
Laisser l’inverse négatif au lieu d’ajouter n.
Prendre l’exposant RSA d modulo n au lieu de φ(n).
Réduire l’exposant modulo p au lieu de p − 1 avec le théorème de Fermat.
Théorie des nombres et arithmétique modulaire : que couvrent les exercices ?
Facile: pgcd et restes
Moyen: inverses et congruences
Difficile: puissances modulaires et RSA
Chaque exercice a de nouvelles valeurs : vous apprenez la méthode, pas une réponse. Bloqué ? Ouvrez d’abord un petit indice, et l’explication complète seulement si vous en avez besoin.
Comment fonctionne l’entraînement
Chaque exercice a de nouvelles valeurs : vous apprenez la méthode, pas une réponse.
Bloqué ? Ouvrez d’abord un petit indice, et l’explication complète seulement si vous en avez besoin.
Votre progression, vos erreurs et vos exercices enregistrés sont conservés pour que vous puissiez réviser avant l’examen.