📐 Définition
Soient a, b et n des entiers, avec n ≠ 0.
a ≡ b (mod n) ⟺ n | (a - b)
⟺ ∃k ∈ ℤ, a = b + kn
🎯 Propriétés Fondamentales
↺
Réflexive
a ≡ a [n]
Tout nombre est congru à lui-même
⇄
Symétrique
a ≡ b [n] ⟹ b ≡ a [n]
La relation est bidirectionnelle
⟹
Transitive
a ≡ b [n] et b ≡ c [n]
⟹ a ≡ c [n]
💡 Point clé : La congruence modulo n est une relation d'équivalence qui partitionne ℤ en n classes.
⚙️ Opérations sur les Congruences
Si
a ≡ a' [n] et
b ≡ b' [n], alors :
- Addition : a + b ≡ a' + b' [n]
- Soustraction : a - b ≡ a' - b' [n]
- Multiplication : a × b ≡ a' × b' [n]
- Puissance : ak ≡ a'k [n]
🔄 Algorithme d'Euclide
Calcul rapide du PGCD de deux nombres a et b :
→
2
Si b ≠ 0
PGCD(a, b) = PGCD(b, r)
→
3
Répéter jusqu'à
reste = 0
Exemple : PGCD(96, 81)
96 = 81 × 1 + 15
81 = 15 × 5 + 6
15 = 6 × 2 + 3
6 = 3 × 2 + 0
⟹ PGCD = 3
🔗 Identité de Bézout
Théorème : Si d = PGCD(a, b), alors il existe u, v ∈ ℤ tels que :
au + bv = d
🎓 Théorème de Bézout : a et b sont premiers entre eux ⟺ ∃u, v ∈ ℤ : au + bv = 1
📊 Fonction Indicatrice d'Euler
φ(n) = nombre d'entiers ∈ {1, 2, ..., n-1} premiers avec n
Propriétés :
- Si p est premier : φ(p) = p - 1
- Plus généralement : φ(pk) = pk-1(p - 1)
- Si PGCD(m, n) = 1 : φ(mn) = φ(m) × φ(n)
⚡ Petit Théorème de Fermat
Si p est premier et p ∤ a
alors ap-1 ≡ 1 [p]
🎯 Théorème d'Euler
Si PGCD(a, n) = 1
alors aφ(n) ≡ 1 [n]
⚠️ Attention : Ces théorèmes sont fondamentaux pour la cryptographie RSA !
🔑 Création des Clés
1
Choisir p, q
Nombres premiers distincts
n = pq
→
2
Calculer φ(n)
φ(n) = (p-1)(q-1)
Choisir e premier avec φ(n)
→
🔓 Clé Publique : (n, e)
🔒 Clé Privée : (n, d)
📨 Chiffrement & Déchiffrement
Chiffrement : C ≡ Me [n]
Déchiffrement : M ≡ Cd [n]
🔬 Preuve du Déchiffrement
Cd = (Me)d = Med = M1+kφ(n) = M × (Mφ(n))k
Or par le théorème d'Euler : Mφ(n) ≡ 1 [n]
Donc : Cd ≡ M × 1k ≡ M [n]
🛡️ Sécurité RSA :
- La sécurité repose sur la difficulté de factoriser n
- Taille recommandée : au moins 2048 bits
- Sans p et q, impossible de calculer φ(n) et donc d
Données : p = 53, q = 11, e = 3
| Étape |
Calcul |
Résultat |
| Module |
n = 53 × 11 |
n = 583 |
| Phi d'Euler |
φ(n) = 52 × 10 |
φ(n) = 520 |
| Clé privée |
3d ≡ 1 [520] |
d = 347 |
Chiffrement du message M = 123 :
C = 1233 mod 583 = 1860867 mod 583 = 166
💡 Vérification :
166347 mod 583 = 123 ✓
🎯 Essentiel pour l'examen :
- Congruences : Relation d'équivalence, opérations autorisées
- Algorithme d'Euclide : Calcul du PGCD par divisions successives
- Bézout : PGCD(a,b) = 1 ⟺ ∃u,v : au + bv = 1
- Euler : φ(n) et aφ(n) ≡ 1 [n]
- Fermat : ap-1 ≡ 1 [p] si p premier
- RSA : Clés (n,e) et (n,d), chiffrement Me, déchiffrement Cd
🧮 Formules Essentielles :
a ≡ b [n] ⟺ n | (a-b)
φ(pk) = pk-1(p-1)
ed ≡ 1 [φ(n)]
C = Me mod n
⚠️ Pièges Classiques :
- Ne pas confondre PGCD et φ(n)
- Vérifier que e est premier avec φ(n)
- Utiliser l'algorithme d'Euclide étendu pour trouver d
- Bien calculer les restes modulo n