Cryptographie et sécurité informatique

Cryptography, RSA, Frequency Analysis · lab

Voir tous les documents en sécurité informatique

Ecole Nationale des Sciences de l’Informatique

Université de La Manouba

II3-Sécurité Informatique

TD1: Cryptographie

Exercice 1 :

Lester  Hill,  mathématicien  cryptographe  (1891‐1961)  propose  en  1929  un  nouveau  type

d'algorithme  de  chiffrement.  Son  idée  n'est  plus  de  coder  lettres  par  lettres,  mais  de  coder

simultanément  des  groupes  de  m  lettres!  Bien  sûr,  plus  m  est  grand,  plus  les  analyses

statistiques deviennent difficiles!

D'abord,  nous  remplaçons  chaque  lettre  par  son  ordre  dans  l'alphabet  ‐1  :  A  devient  0,  B

devient 1,..., Z devient 25. On groupe les nombres ainsi obtenus par m (prenons par exemple

m=2).

Pour  chaque  bloc  de  m  nombres  à  coder  x1x2...xm,  on  calcule  le  texte  codé  en  effectuant  des

combinaisons linéaires (ici m=2) :

y1=ax1+bx2

y2=cx1+dx2

Si  a,b,c,d  sont  des  entiers,  y1  et  y2  seront  aussi  des  entiers.  Pourtant,  si  l'on  souhaite  les

reconvertir  en  lettres,  il  faudrait  qu'ils  soient  compris  entre  0  et  25  ce  dont  on  ne  peut

s'assurer. On les y ramène en prenant leur reste dans la division par 26. Si z1 et z2 sont les restes

respectifs de y1 et y2 dans la division par 26, on peut retransformer z1 et z2 en lettres, et obtenir

le message codé.

1. Codez le mot chiffrer avec le chiffre de Hill, pour m=2, a=3, b=5, c=1 et d=2.

a. Diviser le texte à coder en blocs de m lettres

b. Convertir les lettres en chiffres

c. Calculer les yi

d. Calculer les zi

Publicité

e. Déduire le mot codé

2. Est‐ce qu'une analyse de fréquence des lettres permet de casser ce code? Expliquez.

Exercice 2 :

On utilise les notations habituelles du RSA : p,q, n, (n), e et d

1. Donner  les  formules  qui  définissent  les  variables  n,  (n)  et  d  en  fonction  d'une  ou  de

plusieurs autres variables.

2. On  chiffre  un  message  m  qui  devient  le  message  c  en  utilisant  l’algorithme  de

chiffrement asymétrique RSA

a. Quelle est la formule de chiffrement ?

b. Quelle est la formule de déchiffrement ?

c. Quelles sont les valeurs qui doivent rester secrètes parmi n, p, q, (n), e, d ?

d. Quelles sont les valeurs publiques parmi n, p, q, (n), e, d ?

Page 1 /4

Ecole Nationale des Sciences de l’Informatique

Université de La Manouba

II3-Sécurité Informatique

3. L'algorithme suivant est utilisé pour calculer la clé d.

a. Pourquoi cet algorithme est‐il applicable dans ce cas?

b. Faire  correspondre  les  variables  utilisées  dans  la  définition  de  RSA  et  celles

utilisées dans cet algorithme.

c. En appliquant l'algorithme, calculer d pour p=71, q=131 et e=3.

Exercice 3 :

Dans cet exercice, on considère l'analyse de fréquence, c'est‐à‐dire la méthode qui consiste à

décrypter  un  texte  chiffré  en  se  basant  sur  l'étude  statistique  de  l'apparition  des  caractères

dans une langue.

On considère le texte encrypté suivant :

Publicité

qrznva, qrf y'nhor, n y'urher bh oynapuvg yn pnzcntar,

wr cnegvenv. ibvf-gh, wr fnvf dhr gh z'nggraqf.

w'venv cne yn sberg, w'venv cne yn zbagntar.

wr ar chvf qrzrhere ybva qr gbv cyhf ybatgrzcf.

wr znepurenv yrf lrhk svkrf fhe zrf crafrrf,

fnaf evra ibve nh qrubef, fnaf ragraqer nhpha oehvg,

frhy, vapbaah, yr qbf pbheor, yrf znvaf pebvfrrf,

gevfgr, rg yr wbhe cbhe zbv fren pbzzr yn ahvg.

wr ar ertneqrenv av y'be qh fbve dhv gbzor,

av yrf ibvyrf nh ybva qrfpraqnag iref unesyrhe,

rg dhnaq w'neevirenv, wr zrggenv fhe gn gbzor

ha obhdhrg qr ubhk ireg rg qr oehlrer ra syrhe.

1. Remplir le tableau suivant avec les fréquences des lettres dans le texte.

a  b  c  d  e

f  g  h

i

j

k

l m n o p q r

s

t  u  v  w x

y

z

Fréquence

Lettre d'origine

Page 2 /4

Publicité

Ecole Nationale des Sciences de l’Informatique

Université de La Manouba

II3-Sécurité Informatique

2. D'après  Wikipedia,  la  fréquence  moyenne  d'apparition  des  lettres  en  français  est  la

suivante :

Ce  qui  nous  donne  l'ordre  suivant,  de  la  lettre  la  plus  fréquente  à  la  lettre  la  moins

fréquente : E A I S T N R U L O D M P C V Q G B F J H Z X Y K W

Proposez dans le tableau de la question 1 la correspondance des chiffres et des lettres.

3. Proposez  au  moins  3  astuces  qui  pourraient  vous  aider  à  affiner  votre  solution  (mots

particuliers, suite de lettres, lettres dans des positions particulières, …).

4. Décryptez le texte.

5. Donner un exemple d'algorithme de chiffrement que cette méthode permet de casser

et  un  autre  exemple  d'algorithme  de  chiffrement  contre  lequel  cette  méthode  est

inefficace.

Exercice 4 :

1. En utilisant le chiffre de Vigenère:

a. Chiffrez le message suivant en utilisant le mot clé "UNIVERSITE":

"CET EXERCICE EST FACILE"

b. Dechiffrez le message suivant, en utilisant le mot clé "ETUDIANT" :

" FKUYW CRLX MLHA BVXR "

Exercice 5:

Soit la fonction de Feistel "F" représentée dans le schéma ci‐dessous qui transforme les

deux blocs de texte en clair M1 et M2 en deux blocs de texte chiffré C1 et C2:

M1

M2

F

Publicité

C1

C2

1. Donnez  l'expression  de  la  fonction  de  chiffrement  (c'est‐à‐dire  exprimez  C1  et  C2  en

fonction de M1, M2 et F).

2. Donnez  l'expression  de  la  fonction  de  chiffrement  (c'est‐à‐dire  exprimer  M1  et  M2  en

fonction de C1, C2 et F).

3. Le schéma suivant représente la fonction de Feistel utilisée dans DES:

Page 3 /4

Ecole Nationale des Sciences de l’Informatique

Université de La Manouba

II3-Sécurité Informatique

a. Donner l'expression de la fonction de Feistel F

b. Donner l'expression de chiffrement

c. Donner l'expression de déchiffrement

d. Les  fonctions  utilisées  ont‐elles  besoin  d'être  inversibles  pour  effectuer  le

déchiffrement? Expliquez.

Exercice 6 :

1. Donnez la formule de chiffrement

2. Donnez la formule ET le schéma de déchiffrement

3. Lors du déchiffrement:

a. Quel est l'effet d'une erreur au niveau d'un bloc ci

b. Quel est l'effet de l'inversion de deux blocs ci et ci+1

Plain and Cipher Block Chaining (PCBC)

Page 4 /4