Crypto Cour4
Crypto Cour4
Crypto Cour4
Cryptographie asymétrique
Omar
Ali
Message
Chiffré
Principe du chiffrement/déchiffrement asymétrique
Nombres premiers
Un nombre premier p est un nombre différent de 1 qui n’admet
pas d’autres diviseurs que 1 et lui-même.
Un nombre qui n’est pas premier est appelé nombre composé.
Congruence dans Z
Les entiers relatifs a et b sont congrus modulo n s’ils ont même
reste par la division par n. Il revient au même de dire que b-a
est multiple de n.
On note : a bn ou a b(mod n )
pgcd(84,30) =6
Algorithme d’Euclide étendu
L’algorithme d’Euclide étendu permet de déterminer d = pgcd(a,b)
ainsi que deux entier u et v vérifiant : d = au + bv
Exemple
a=172 ; b=31 1=3-2
172=5x31 + 17 1 = 3 – (14 - 4x3)
31=1x17 + 14 1 = -14 + 5x3
17= 1x14 + 3 1 = -14 +5(17 – 14)
14=4x3 + 2 1 = 5x17 - 6x14
3=1x2 + 1 1 = 5x17 – 6(31 – 17)
2=2x1 + 0 1 = -6x31 + 11x17
1 = -6x31 + 11(172 – 5x31)
1 = 11x172 -61x31
pgcd(172,31) =1 u = 11 ; v= -61
Théorèmes de Fermat et d’Euler
a p a (mod p )
n = pq et (n) = ( p − 1)(q − 1)
1 d (n)
ed = 1 mod
(n)
La clé publique d’Ali est (n,e) et sa clé secrète est (n,d ).
Principe de fonctionnement du RSA
Etape 2: Chiffrement du message
Omar récupère la clé publique (n,e) d’Ali et souhaite lui envoyer la version
cryptée d'un texte en clair, représenté par la donnée d'un entier m tel que :
Omar calcule :
c = me mod n
Etape 3: Déchiffrement du message
13506641086599522334960321627880596993888147560566
70275244851438515265106048595338339402871505719094
41798207282164471551373680419703964191743046496589
274256239341020864383202110372958725762358509643110
56407350150818751067659462920556368552947521350085
287941637732853390610975054433499981115005697723689
0927563
Jusqu'en 2007, factoriser ce nombre valait 100 000 $, il
n'est toujours pas factorisé en 2013. Cependant, on semble
proche d'y arriver, il est désormais recommandé d'utiliser
RSA-2048 …
Exercice
Prenons p = 29; q = 31 et e = 13: Utilise le protocole RSA
pour chiffrer et déchiffrer M = 123
Solution
Les variables étant données, p = 29; q = 31; e = 13;m = 123;
Nous calculons : n = p q = 899
(p - 1) (q - 1) = 840
d = 517 car e.d = 13 . 517 = 8.840 + 1
Pour chiffrer,
c = 123^13 mod 899 = 402
Et pour déchiffrer,
m = 402^517 mod 899 = 123