Vous êtes sur la page 1sur 28

Chiffrement à clé

asymétrique: Le
cryptosystème RSA
RÉALISÉ PAR:
Numéro d’inscription : MK283M
• NAJMI ABDELHAMID
ENCADRÉ PAR: Omar Ibn Khattab

• SADDIKI HASSANE 2020/2021


Plan : 2

 Procédés de la cryptographie asymétrique


 Cryptosystème asymétrique classique.
 Génération d’une paire de clés: publique et privée.
 Algorithme de la RSA
 Cryptosystème optimisé: authenticité.
 Attaque de factorisation : méthode de Fermat
 Concrétisation de la robustesse du cryptosystème RSA
 Comparaison qualitative entre RSA et RSA-AES
3
Procédés de la cryptographie asymétrique

– B décode le message
– A transmet le
– A a la clé –A encode le à l’aide de la clé privée
message codé à
publique de B. message E(M ) qu’il est le seul à
B.
connaitre D(E(M ))
https://sectigostore.com/blog/ecdsa-vs-rsa-everything-you-need-to-know/ 4
Transmission d’un message 5

Source: https://www.preveil.com/blog/public-and-private-key
6
Génération d’une paire de clés : publique et privée

La procédure de génération d’une clé privée et d’une clé publique


associée est la suivante :
 Choisir aléatoirement deux nombres premiers p et q (grands)
 Calculer n = p · q
 Choisir un petit entier impair e premier avec (p − 1)(q − 1).
 Calculer d, inverse de e modulo (p − 1)(q − 1) : e.d ≡ 1 [(p − 1)(q − 1)]
 La clé publique est le couple (e, n)
 La clé privée est le couple (d, n).
7

 Pour notre programme, nous utiliserons deux nombres premiers pas


assez grands, soient p = 881 et q = 727. (En pratique les nombres
utilisés contiennent de 1024 à 2048 chiffres)

 Le nombre n = 640487 = p*q


 La clé publique est (e,n) = (7, 640487)
 La clé privée est (d,n) = (456343, 640487)
 Remarque : pour un temps d’éxecution plus faible, la clé publique qui
effectue le chiffrement est choisie petite.
Algorithme RSA (Ronald Rivest, Adi 8
Shamir et Leonard Adleman)
• L’algorithme de chiffrement retourne le message ‘message’ en liste qui contient
le code ASCII chiffré de chaque caractère.
• Pour les clés précédentes et le message ‘message’ on trouve:

• L’algorithme de déchiffrement déchiffre les codes ASCII chiffrés par le premier


algorithme et retourne le message clair original
• Pour les clés précédentes et le message ‘message’ on trouve:
Cryptosystème optimisé: Authenticité 9

 Une étape supplémentaire qui consiste en le chiffrement


du message par la clé privée pour pouvoir le déchiffrer
grâce à la clé publique.
 Un message chiffré par la clé privée est déchiffré par la
clé publique et vice-versa.
 Un message déchiffré par la clé publique n’aura de sens
que s’il a été chiffré par la clé privée associée.
10
11
12
13
14
15

Source : https://www.youtube.com/user/Computerphile
Application de l’algorithme 16

 Pour cette partie, utilisons les clés (e,d,n) suivantes:


 Key 1 = (3,7,33)
 Key 2 = (7,43,77)
 Utilisons par exemple le chiffre 5
 Pour le chiffrement on obtient :

 Quant au déchiffrement, le programme retourne:


Attaque de factorisation: 17
méthode de Fermat
 En arithmétique modulaire, la méthode de factorisation
de Fermat est un algorithme de décomposition en
produit de facteurs premiers d'un entier naturel.

 Son principe est d’essayer d’écrire l’entier N comme


différence de deux carrés, et puis factoriser simplement
en utilisant la 3e identité remarquable.
Exemple avec un nombre premier 18

relativement grand
 Pour donner un exemple, utilisons un nombre grand comparé à
ceux qu’on avait utilisés pour le chiffrement et déchiffrement, soit
n = 100895598169

 Le programme retourne :
Temps nécessaire pour casser la RSA 19
Le meilleur algorithme permettant de factoriser n est celui de Richard Schroeppel (non
publié)
La factorisation par cette méthode se fait en 𝑒 ln(𝑛)⋅ln(ln(𝑛)) étapes

NB : ceci en considérant que chaque opération s’effectue en une microseconde


Concrétisation de l’energie nécessaire pour 20
casser la cryptographie asymetrique

Cette énergie constitue l’énergie consommée par un ordinateur pour factoriser le nombre
‘n’ en ses deux facteurs premiers, d’où trouver la clé privée.
Comparaison qualitative entre 21
RSA et RSA-AES
AES AES-RSA RSA
Algorithme Symétrique Symétrique Asymétrique
Chiffrement Très rapide Rapide Lent
Déchiffrement Très rapide Rapide Lent
Sécurité Sécurité fragile Sécurité Sécurité robuste
moyenne

Donc le choix du cryptosystème convenable dépend fortement du cahier de charges et donc


des exigences demandées.
Annexe 1 :(RSA 22
classique)
Annexe 2 : (RSA optimisé)
23
Annexe 3 :Mathématiques derrière 24

la cryptographie asymétrique
Soit M ∈ Z/nZ (M doit etre assez petit pour qu’on soit sûrs de toujours
avoir : M < n).
On a alors :
D(E(M )) ≡ E(D(M )) ≡ Med [n]
Soit M‘ ≡ Me [n].
Alors ∃k ∈ Z, M’ = Me + kn
De plus, comme ed ≡ 1 [(p − 1)(q − 1)], alors :
∃k’ ∈ Z, ed = 1 + k’(p − 1)(q − 1).
Developpons M ‘d = (Me + kn)d avec la formule du binôme de Newton:
25
𝑗
𝑀′𝑑 = ∑𝑑𝑗=0 𝐶𝑑 𝑀𝑒 𝑗 (𝑘𝑛)𝑑−𝑗
𝑗
De faç̧on triviale, on a : ∀j ∈ [0, d −1], n|(𝐶𝑑 (Me)j (kn)d−j ) donc
𝑗
n| ∑𝑑𝑗=0 𝐶𝑑 𝑀𝑒 𝑗 (𝑘𝑛)𝑑−𝑗
Soit que n|(M − M1+k’(p−1)(q−1) ).
D’après le petit théorème de Fermat, p étant premier, on a :
′𝑞 𝑝 ′𝑞 ′ 𝑝 ′ ′ 𝑞−𝑘 ′ 𝑞−𝑘 ′ +𝑘 ′
𝑀 𝑀 𝑘 𝑀 −𝑘 𝑀 −𝑘 𝑀 𝑘 ≡ 𝑀 1+𝑘 ≡ 𝑀[𝑝] donc:
M1+k’(p−1)(q−1) ≡ M [p]
′ 𝑝−1 𝑞−1
soit 𝑝 ∣ 𝑀 − 𝑀 1+𝑘 .
26

1+𝑘 ′ (𝑝−1)(𝑞−1)
De même, 𝑞 ∣ 𝑀 − 𝑀 donc

𝑝𝑞 = 𝑛 ∣ 𝑀 − 𝑀1+𝑘 (𝑝−1)(𝑞−1)
soit enfin 𝑛 ∣ 𝑀 − 𝑀𝑒𝑑 .
𝑗
Finalement, 𝑛 ∣ 𝑀 − ∑𝑑𝑗=0 𝐶𝑑 𝑀𝑒 𝑗 (𝑘𝑛)𝑑−𝑗
donc 𝑛 ∣ 𝑀 − 𝑀′𝑑
𝑒
d'où : 𝑀′𝑑 ≡ 𝑀𝑒 𝑑 ≡ 𝑀 𝑑 ≡ 𝑀[𝑛]
Annexe 4 : (Méthode de Factorisation Fermat)
27
Méthode de factorisation de Fermat
28

Vous aimerez peut-être aussi