Vous êtes sur la page 1sur 24

UNIVERSITÉ CADI AYYAD

École Normale Supérieur

Arithmétique dans Z et cryptographie

3ème année licence en éducation,mathématiques


Réalisé par Encadré par

DRIOUCH Khalid Pr. MADKOUR Abderrahim


1. Remerciements
Au terme de ce travail, je tiens à exprimer ma profonde gratitude
à notre cher professeur et encadrant Abderrahim Madkour.pour son
suivi et pour son énorme soutien, qu’il n’a cessé de nous prodiguer tout
au long de la période du projet.

Je ne laisserai pas cette occasion passer, sans remercier tous les


enseignants et le personnel de l’Ecole Normale Supérieur., et parti-
culièrement ceux de la section mathématiques pour leur aide et leurs
précieux conseils et pour l’intérêt qu’ils portent à ma formation.

Enfin, mes remerciements à tous ceux qui ont contribué de prés ou


de loin au bon déroulement de ce projet

1
Table des matières

1 Remerciements 1
2 Introduction 4
3 Divisibilité 6
4 Diviseur commun 6
5 Plus grand diviseur commun (PGCD) 6
6 Plus petit multiple commun (PPCM) 6
7 Nombres premiers 6
8 Décomposition en facteurs premiers 6
9 Congruence 7
10Inverse modulaire 7
11Théorème de Bézout 9
12Théorème de Gauss 9
13Théorème de Fermat 9
14Les équations Diophantiennes 10
15La résolution des équations de congruence 10
16Théorème des restes chinois : 11
17L’indicatrice d’Euler 14
17.1Propriétés de l’indicatrice d’Euler . . . . . . . . . . . . . 14
18Théorème d’Euler 14
19Chiffrement de César 16
20Chiffrement de Vigenère 16
21RSA (Rivest,Shamir,Adleman) 17

2
22Annexes 19
22.1BAC 2021 . . . . . . . . . . . . . . . . . . . . . . . . . . 19
22.22019 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
22.3BAC 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . 20
22.4BAC 2017 . . . . . . . . . . . . . . . . . . . . . . . . . . 21
22.5BAC 2016 . . . . . . . . . . . . . . . . . . . . . . . . . . 21
22.6BAC 2015 . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3
2. Introduction
L’arithmétique dans Z, l’ensemble des entiers relatifs, est une branche
fondamentale des mathématiques qui étudie les propriétés des nombres
entiers et les opérations qui peuvent être effectuées sur eux. Elle joue un
rôle crucial dans de nombreux domaines, y compris la cryptographie,
qui est l’étude des techniques de communication sécurisée.
La cryptographie est une discipline qui vise à protéger l’informa-
tion en la rendant illisible pour ceux qui ne sont pas autorisés à y
accéder. Elle est essentielle dans de nombreux aspects de notre vie
quotidienne, tels que les transactions bancaires en ligne, les communi-
cations sécurisées et la protection des données sensibles.
Dans ce document, nous explorerons la relation entre l’arithmétique
dans Z et la cryptographie, en mettant l’accent sur certains des concepts
clés et des méthodes utilisées. Nous discuterons notamment de la fac-
torisation des nombres premiers, du théorème des restes chinois, des
congruences et des systèmes cryptographiques basés sur ces principes.
La première partie de ce document présentera les bases de l’arithmétique
dans Z, en expliquant les propriétés des entiers, les opérations fonda-
mentales telles que l’addition, la soustraction, la multiplication et la
division, ainsi que les notions de nombres premiers et de factorisation.
Ensuite, nous aborderons les concepts cryptographiques liés à l’arithmétique
dans Z. Nous étudierons le chiffrement à clé publique et à clé privée, en
mettant en évidence des algorithmes populaires tels que RSA (Rivest-
Shamir-Adleman)
Enfin, nous discuterons des applications pratiques de la cryptogra-
phie, y compris la sécurisation des communications, la protection de la
vie privée et la vérification de l’authenticité des données. Nous explo-

4
rerons également les défis et les avancées récentes dans ce domaine en
constante évolution.
En conclusion, l’arithmétique dans Z et la cryptographie sont des do-
maines étroitement liés qui jouent un rôle crucial dans la sécurisation
de l’information. En comprenant les principes mathématiques sous-
jacents, nous pouvons mieux appréhender les techniques cryptogra-
phiques modernes et leur impact sur notre vie quotidienne.

5
3. Divisibilité
Soient a et b deux entiers. On dit que a divise b (ou que b est
divisible par a) s’il existe un entier k tel que b = ak. On note cette
relation comme a | b.

4. Diviseur commun
Soient a et b deux entiers. Un diviseur commun de a et b est un
entier qui divise à la fois a et b.

5. Plus grand diviseur commun (PGCD)


Le plus grand diviseur commun de deux entiers a et b, noté gcd(a, b),
est le plus grand entier positif qui divise à la fois a et b. Le PGCD peut
être calculé en utilisant l’algorithme d’Euclide.

6. Plus petit multiple commun (PPCM)


Le plus petit multiple commun de deux entiers a et b, noté lcm(a, b),
est le plus petit entier positif qui est un multiple commun de a et b.

7. Nombres premiers
Un nombre premier est un entier p supérieur à 1 qui n’a aucun divi-
seur positif autre que 1 et lui-même.
La décomposition en facteurs premiers d’un nombre peut être représentée
comme suit :

8. Décomposition en facteurs premiers


La décomposition en facteurs premiers d’un entier n consiste à l’ex-
primer comme un produit de nombres premiers élevés à certaines puis-
sances.

6
9. Congruence
Soient a, b et m des entiers avec m > 0. On dit que a est congru
à b modulo m si m divise la différence a − b. On note cette relation
comme a ≡ b (mod m).

10. Inverse modulaire


Soit a un entier et m un entier positif. L’inverse modulaire de a
modulo m, noté a−1 (mod m), est un entier x tel que ax ≡ 1
(mod m).

Supposons que nous souhaitons trouver l’inverse modulaire de a mo-


dulo m. Considérons a = 9 et m = 26.
a=9
m = 26
26 = 2 ·9 + 8
9=1·8+1

En remontant l’algorithme d’Euclide étendu, nous obtenons :


1 = 9 - 1 ·8
= 9 − 1 · (26 − 2 · 9)
= 3 · 9 − 1 · 26

Maintenant, pour obtenir l’inverse modulaire, nous réduisons le résultat


modulo m :
1 ≡ 3 · 9 − 1 · 26 (mod 26)
≡3·9 (mod 26)

7
≡ 27 (mod 26)
≡1 (mod 26)

Ainsi, l’inverse modulaire de 9 modulo 26 est 3.

8
11. Théorème de Bézout
Le théorème de Bézout énonce que pour deux entiers a et b, il existe
des entiers x et y tels que ax + by = gcd(a, b), où gcd(a, b) est le plus
grand commun diviseur de a et b.

12. Théorème de Gauss


Le théorème de Gauss, également connu sous le nom de lemme de
Gauss, affirme que si un entier premier p divise le produit de deux
entiers a et b, alors p divise au moins l’un des deux entiers a ou b.
Exemple : Supposons que p = 7, a = 9 et b = 14. Nous pouvons
vérifier que p divise a × b car 9 × 14 = 126 est divisible par 7. Par
conséquent, selon le théorème de Gauss, 7 doit diviser l’un des entiers
9 ou 14, ce qui est correct car 7 divise 14.

13. Théorème de Fermat


Le théorème de Fermat, ou le petit théorème de Fermat, stipule que
si p est un nombre premier et a est un entier non divisible par p, alors
ap−1 ≡ 1 (mod p).

Exemple : Prenons p = 13 et a = 5. Selon le théorème de Fer-


mat, 512 ≡ 1 (mod 13). Calculons 512 en utilisant les congruences
successives : 52 ≡ 25 ≡ 12 (mod 13), 54 ≡ (52)2 ≡ 122 ≡ 144 ≡ 1
(mod 13), 58 ≡ (54)2 ≡ 12 ≡ 1 (mod 13), 512 ≡ (58)2 ≡ 12 ≡ 1
(mod 13). Donc, 512 ≡ 1 (mod 13), ce qui confirme le théorème de
Fermat.

9
14. Les équations Diophantiennes
Les équations Diophantiennes sont des équations polynomiales dont
les solutions recherchées doivent être des entiers. Par exemple, l’équation
ax + by = c, où a, b, c, x et y sont des entiers, est une équation Dio-
phantienne.

Exemple : Considérons l’équation Diophantienne suivante : 3x+5y =


17. Pour trouver les solutions entières, nous pouvons utiliser l’algo-
rithme d’Euclide étendu. En utilisant cet algorithme, nous trouvons
qu’une solution particulière est x = 2 et y = 3. Ensuite, nous pou-
vons obtenir toutes les solutions en ajoutant un multiple de la solution
de l’équation homogène associée. Les solutions entières de l’équation
donnée sont donc données par x = 2 + 5t et y = 3 − 3t, où t est un
entier.

15. La résolution des équations de congruence


La résolution des équations de congruence consiste à trouver des so-
lutions entières pour des équations de la forme ax ≡ b (mod m).
On utilise souvent l’algorithme d’Euclide étendu pour résoudre ces
équations.

Exemple : Résolvons l’équation de congruence 3x ≡ 7 (mod 11).


Nous pouvons utiliser l’algorithme d’Euclide étendu pour trouver une
solution. En appliquant l’algorithme, nous trouvons que x = 8 est une
solution particulière. La solution générale est donnée par x ≡ 8 + 11t
(mod 11), où t est un entier.

10
16. Théorème des restes chinois :
Soient m1, m2, ..., mn des entiers deux à deux premiers entre eux, et
soit a1, a2, ..., an des entiers quelconques. Alors il existe un entier x tel
que :

x ≡ a1 (mod m1)x ≡ a2 (mod m2)...x ≡ an (mod mn)

De plus, cette solution x est unique modulo M , où M = m1 · m2 ·


... · mn.

11
Exercice :
Trouvez un entier x qui satisfait simultanément les congruences sui-
vantes :
x≡2 (mod 3)
x≡3 (mod 4)
x≡2 (mod 5)

Solution :
Nous pouvons utiliser le théorème des restes chinois pour résoudre
ce système de congruences.
Premièrement, nous observons que les modulos 3, 4 et 5 sont premiers
entre eux, donc nous pouvons appliquer le théorème des restes chinois.
Calculons les résidus r1, r2 et r3 :
r1 = 2
r2 = 3
r3 = 2

Calculons les produits m1, m2 et m3 :


m1 = 4 · 5 = 20
m2 = 3 · 5 = 15
m3 = 3 · 4 = 12

Calculons les inverses modulaires t1, t2 et t3 respectivement :


t1 ≡ 20−1 (mod 3) ≡ 2 (mod 3)
t2 ≡ 15−1 (mod 4) ≡ 3 (mod 4)
t3 ≡ 12−1 (mod 5) ≡ 3 (mod 5)

Ensuite, nous pouvons calculer la solution en utilisant la formule

12
suivante :

x ≡ r1 · m1 · t1 + r2 · m2 · t2 + r3 · m3 · t3 (mod m1 · m2 · m3)

Calculons la solution :

x ≡ 2 · 20 · 2 + 3 · 15 · 3 + 2 · 12 · 3 ≡ 232 (mod 60)

Donc, la solution est x ≡ 232 (mod 60).

13
17. L’indicatrice d’Euler
L’indicatrice d’Euler, notée ϕ(n), est une fonction qui donne le nombre
d’entiers positifs inférieurs à n et premiers avec n. L’indicatrice d’Euler
est utilisée dans de nombreux domaines des mathématiques, notam-
ment la cryptographie.

Exemple : Calculons l’indicatrice d’Euler de n = 12. Pour cela, nous


devons trouver le nombre d’entiers positifs inférieurs à 12 et premiers
avec 12. Les entiers premiers avec 12 sont 1, 5, 7 et 11, car ils n’ont
aucun facteur premier commun avec 12. Donc, ϕ(12) = 4, car il y a 4
entiers premiers avec 12.

17.1 Propriétés de l’indicatrice d’Euler

1. ϕ(p) = p − 1 pour tout nombre premier p.


2. Si a et b sont premiers entre eux, alors ϕ(ab) = ϕ(a) · ϕ(b).
3. Si n et m sont premiers entre eux, alors ϕ(n · m) = ϕ(n) · ϕ(m).

18. Théorème d’Euler


Le théorème d’Euler énonce que si a et n sont premiers entre eux,
alors aϕ(n) ≡ 1 (mod n), où ϕ(n) est l’indicatrice d’Euler de n.

Exemple : Supposons que nous voulons vérifier le théorème d’Euler


pour a = 7 et n = 12. D’abord, calculons ϕ(n) pour n = 12. Nous
décomposons 12 en facteurs premiers : 12 = 22 · 31. En utilisant la
propriété ϕ(pk ) = pk −pk−1, nous avons ϕ(12) = (22 −21)·(31 −30) = 4.
Comme 7 et 12 sont premiers entre eux, nous appliquons le théorème

14
d’Euler : 74 ≡ 1 (mod 12). En effectuant les calculs, nous obtenons
2401 ≡ 1 (mod 12), ce qui confirme le théorème d’Euler.
Le théorème d’Euler est une propriété importante de l’arithmétique
modulaire et a des applications dans la cryptographie, notamment dans
le chiffrement RSA.

15
19. Chiffrement de César
Le chiffrement de César est une méthode de chiffrement par substitu-
tion simple. Chaque lettre du message est décalée d’un certain nombre
de positions dans l’alphabet. Par exemple, en utilisant un décalage de
3, la lettre ’A’ serait chiffrée en ’D’, ’B’ en ’E’, et ainsi de suite.

Exemple : Supposons que nous voulons chiffrer le message ”HELLO”


avec un décalage de 3. Le chiffrement de César donnerait le message
chiffré ”KHOOR”.

20. Chiffrement de Vigenère


Le chiffrement de Vigenère est une méthode de chiffrement par sub-
stitution polyalphabétique. Elle utilise une série de plusieurs chiffres de
César basés sur un mot-clé. Chaque lettre du message est décalée en
utilisant le chiffrement de César correspondant au caractère correspon-
dant du mot-clé.

Exemple : Supposons que nous voulions chiffrer le message ”HELLO”


avec le mot-clé ”KEY”. Nous alignons le mot-clé avec le message :
”HELLO” devient ”KEYKE”. En utilisant le chiffrement de César,
nous obtenons le message chiffré ”JGNNQ”.

16
21. RSA (Rivest,Shamir,Adleman)
RSA est un algorithme de chiffrement asymétrique largement uti-
lisé. Il repose sur la difficulté de factoriser de grands nombres premiers.
L’algorithme utilise une paire de clés, une publique pour le chiffrement
et une privée pour le déchiffrement. Il permet également la signature
numérique. Voici un exemple de génération de clés RSA et de chiffre-
ment/déchiffrement.

Exercice :
Soit p = 17 et q = 11 les deux nombres premiers utilisés dans
l’algorithme RSA. Vous devez effectuer les étapes suivantes :
1. Calculez le module n en utilisant la formule n = p · q. 2. Calculez
la fonction d’Euler φ(n) en utilisant la formule φ(n) = (p − 1) · (q − 1).
3. Choisissez un exposant public e tel que 1 < e < φ(n) et que e soit
premier avec φ(n). 4. Calculez la clé privée d en utilisant l’algorithme
d’Euclide étendu pour trouver l’inverse modulaire de e modulo φ(n).
5. Chiffrez le message M = 8 en utilisant la clé publique (e, n) en
utilisant la formule C = M en. 6. Déchiffrez le message chiffré C en
utilisant la clé privée d en utilisant la formule M = C dn.

17
Solution :
1. Le module n est calculé en utilisant la formule n = p·q = 17·11 =
187.

2. La fonction d’Euler φ(n) est calculée en utilisant la formule φ(n) =


(p − 1) · (q − 1) = (17 − 1) · (11 − 1) = 16 · 10 = 160.
3. Nous choisissons un exposant public e tel que 1 < e < φ(n) et que
e soit premier avec φ(n). Par exemple, nous pouvons prendre e = 7.
4. Pour calculer la clé privée d, nous utilisons l’algorithme d’Euclide
étendu. L’algorithme donne les coefficients de Bézout x et y tels que
ex + φ(n)y = 1. En résolvant cette équation, nous obtenons x = 23
et y = −1. Comme nous voulons d positif, nous prenons d = xφ(n) =
23160 = 23.
5. Pour chiffrer le message M = 8, nous utilisons la clé publique
(e, n) = (7, 187). Le message chiffré C est calculé comme suit : C =
M en = 87187 = 128.
6. Pour déchiffrer le message chiffré C = 128, nous utilisons la clé
privée d = 23 et le module n = 187. Le message d’origine M est
calculé comme suit : M = C dn = 12823187 = 8.
Ainsi, le message chiffré C = 128 est déchiffré en message d’origine
M = 8.

18
22. Annexes
22.1 BAC 2021

19
22.2 2019

22.3 BAC 2018

20
22.4 BAC 2017

22.5 BAC 2016

21
22.6 BAC 2015

22
ici nous allons citer les auteurs par exemple[3] [1] [2]

Références
[1] Dominique Hoareau. Arithmétique dans z.
[2] Jean-Louis Nicolas. Arithmétique et cryptographie. na.
[3] Thomas Plantard. Arithmétique modulaire pour la cryptogra-
phie. PhD thesis, Université Montpellier II-Sciences et Techniques
du Languedoc, 2005.

examens nationaux 2021,2019,2018,2017,2016,2015 session normal,partie


arithmétique.

23

Vous aimerez peut-être aussi