Univers des Nombres
TP 1
Universit´e Blaise Pascal - D´epartement de Math´ematiques
Ann´ee 2010 - 2011
Le but de la cryptographie est de permettre la transmission, par des voies publiques, de messages que
seules les personnes autoris´ees peuvent comprendre. On appelle [texte d’origine] le message `a envoyer et [texte
cod´e] le message r´eellement envoy´e qu’une personne non autoris´ee ne peut pas comprendre. La proedure qui
transforme un texte d’origine en texte coe s’appelle [codage], la proc´edure inverse, qui transforme un texte
cod´e en texte d’origine, s’appelle [ecodage]. Un message est form´e de blocs de klettres appel´es [unit´es].
Dans un alphabet `a Nlettres num´erot´ees 0 `a N1, une unit´e est associ´ee `a un entier de [0, Nk[ de la fa¸con
suivante : si la lettre iest la i-i`eme lettre de l’alphabet, l’unit´e i1· · · ikest associ´ee `a l’entier
k
X
j=1
ijNkj.
On regarde cet entier comme un ´el´ement de (Z/NkZ). [Dans tous les exemples de ce probl`eme, on prend
un alphabet `a 27 lettres, le blanc, not´e L, est num´erot´e 0, les lettres sont num´erot´ees 1`a 26 dans l’ordre
alphab´etique. On n’utilise pas de lettres accentu´ees]
La cryptographie `a cl´e publique regroupe l’ensemble des m´ethodes dans lesquelles tout le monde connaˆıt
le codage mais seules les personnes autoris´ees connaissent le d´ecodage. (Par exemple, tout le monde peut
d´eposer une lettre dans une boˆıte `a lettres, seuls les facteurs peuvent relever cette lettre).
On d´ecrit maintenant le syst`eme RSA (invent´e par Rivest, Shamir et Adleman). On suppose qu’Alice
veut permettre `a tout le monde de lui envoyer des messages cod´es. Alice et le reste du monde utilisent un
mˆeme alphabet `a Nlettres. Les unit´es des messages d’origine contiennent klettres et les unit´es des messages
cod´es contiennent lettres,  > k. Alice choisit deux (grands) nombres premiers et calcule le [module RSA],
n=pq. Elle choisit ces nombres tels que Nk<n<N`: ainsi une unit´e d’origine peut ˆetre vue comme
un ´el´ement de Z/nZet si le codage est une application de Z/nZdans Z/nZ, le message cod´e peut ˆetre vu
comme un ´el´ement de Z/N `Z. Alice choisit un entier etel que e, ϕ(n)= 1. La fonction de codage est alors
c: [[0, n 1]] [[0, n 1]]
m7−memod n.
Alice rend public les entiers n,e,ket . Bob (il ne connaˆıt que les quatre nombres rendus publics), qui
veut envoyer un message m`a Alice, peut donc calculer c(m). Alice peut facilement d´ecoder ce message :
connaissant pet q, elle peut calculer l’inverse e0de emodulo ϕ(n). La fonction de d´ecodage est alors
d:Z/nZZ/nZZ/N kZ
m7→ me07→ me0(mod Nk).
1
Univers des nombres - TP 1 Universit´e Blaise Pascal - 2
[erifier que dc(m)redonne m]. En revanche, si une tierce personne intercepte le message m, ne connaissant
pas la factorisation de n, elle ne peut pas calculer ϕ(n) et donc e0(alors qu’elle connaˆıt net e). C’est ici
qu’il est important que pet qsoient choisis grands. `a l’heure actuelle, on sait factoriser des modules `a 155
chiffres. Le syst`eme RSA n’est donc fiable que dans la mesure o`u le calcul de ϕ(n) est suffisament long pour
ˆetre consid´er´e comme non r´ealisable.).
1. [Calcul de l’inverse] Soit aet bdeux entiers naturels, et δ= (a, b). Il existe uet vtels que au +bv =δ.
Montrer que l’algorithme suivant [igcdex sous Maple] calcule des entiers u,vet δcomme ci-dessus
Si a= 0, renvoyer δ=b,u= 0,v= 1.
On pose x=a,y=b,vx= 0,vy= 1.
Tant que y6= 0 [on pourra v´erifier qu’ici vxbx(mod a)et vyby(mod a)]
trouver q,realisant la division euclidienne x=qy +r.
remplacer (vx, vy)par (vy, vxqvy).
remplacer (x, y)par (y, x qy)[c’est-`a-dire (y, r)]
Renvoyer δ=x,u= (xbvx)/a, et v=vx.
Soit aun entier et bun entier premier `a a. D´eduire de l’algorithme pr´ec´edent un algorithme de calcul
de l’inverse de amodulo b.
2. [Un exemple “`a la main] Sachant que (k, ) = (3,4) et (n, e) = (50689,50021) d´ecoder le message
aakLbinwauyuLvykaliLLszobLdzbmlh
3. Coder la phrase 1
estLorienteLversLlLinnocent
[On pourra commencer par ´ecrire un g´en´erateur de nombres premiers al´eatoires `a l’aide de la commande
rand() de Maple puis utiliser ce g´en´erateur pour construire p,qet e. On choisira ensuite ket .]
1. Les deux messages de ce probl`eme sont les deux premiers vers du po`eme “La derni`ere nuit” de Paul Eluard, tir´e du recueil
Au rendez-vous allemand publi´e aux ´editions de Minuit.
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !