Vous êtes sur la page 1sur 4

Université Sultan Moulay

Slimane
Faculté polydisciplinaire
-Beni Mellal-
TD 2 : Chiffrement symétrique

Exercice 1

On considère le LFSR de polynôme de rétroaction X4 + X + 1 initialisé à (s3=1, s2=0, s1=0, s0=0)


(clé).

1) Décrire complètement le flux de clé sortant de ce LFSR.

Soit le message binaire suivant M=100111010010100,

2) Chiffrez le message M en utilisant le LFSR précédant et comme germe la clé s3s2s1s0=1000.


3) Déchiffrez le cryptogramme C= 111100001010100, sachant qu’il a été chiffré par le même
cryptosystème précédant et le germe 0100(clé).

Exercice 2

We conduct a known-plaintext attack on an LFSR-based stream cipher. We know that the


plaintext sent was:

M=1001 0010 0110 1101 1001 0010 0110

By tapping the channel we observe the following stream:

C=1011 1100 0011 0001 0010 1011 0001

1) What is the degree m of the key stream generator?


2) What is the initialization vector?
3) Determine the feedback coefficients of the LFSR.
4) Draw a circuit diagram and verify the output sequence of the LFSR.

Exercice 3

Soit EA le chiffrement de Hill, ( ), et M = BADFATED.

1) Trouver C = EA(M) en utilisant le mode d’opération


a. ECB,
b. CBC (avec IV = XY),
c. CFB (avec IV = XY),
d. OFB (avec IV = XY).
2) Rappeler les définitions des déchiffrements de ces modes d’opérations et vérifier les
déchiffrements de vos textes chiffrés.

Exercice 4

Page 1 / 4
Université Sultan Moulay
Slimane
Faculté polydisciplinaire
-Beni Mellal-
Ek: {0,1}2 → {0,1}2
(m1,m2) → S1((m1 ⊕k1,m2 ⊕k2)) où la fonction S1 est décrite ci-dessous

1) Chiffrer le message M = [0,1,1,1,0,1] avec la clef K = [1,0], (avec IV=0,0)


a. En utilisant le mode ECB
b.En utilisant le mode OFB
2) Déchiffrer le message C = [0,1,1,1,0,1] dans le cas où il a été chiffré avec la clef K = [1,1] et
a. en utilisant le mode CBC,
b.en utilisant le mode CFB.

Exercice 5 (Schéma de Feistel).

On considère un chiffrement de Feistel à deux rondes défini par

 La longueur des blocs est 8.


 La clef K = [k1,...,k8] est de longueur 8, les deux clefs de rondes sont K1 = [k1,...,k4] et
K2= [k5,...,k8], les ki étant les bits de la clef K.
 La fonction V = f(U,U’) est définie par l’expression des bits vi de V = [v1,...,v4] en
fonction de ceux de U = [u1,u2,u3,u4] et U’ = [u’1,u’2,u’3,u’4].
v1 = u1u’4 ⊕u2u’3 ⊕u4u’3,
v2 = u1u’2 ⊕u3u’1,
v3 = u1u’4 ⊕u1u’3,
v4 = u3u’3 ⊕u1u’1.
Soit la clef
K = [1,0,1,1,0,0,1,0],
et le message
M = [0,1,0,0,0,1,1,1].

1. Calculer le chiffré de M à travers le schéma de Feistel précédent.


2. Déchiffrer le message C = [0,1,1,1,0,0,1,1] qui a été chiffré avec la même clef.

Exercice 6 (MiniDES).
Le cryptosystème MiniDES est décrit dans un document annexe. Calculer le chiffrement du
message (en hexadécimal)
M = A0E0
après une ronde ou deux rondes du miniDES et la clef (en hexadécimal)

Page 2 / 4
Université Sultan Moulay
Slimane
Faculté polydisciplinaire
-Beni Mellal-
K = 07E:
******************************

Annexe : MiniDES
L’algorithme MiniDES est un chiffrement par bloc suivant le schéma de Feistel. Il chiffre des
messages de 16 bits en un autre bloc de 16 bits avec une clé de longueur 12 bits.

Page 3 / 4
Université Sultan Moulay
Slimane
Faculté polydisciplinaire
-Beni Mellal-

Page 4 / 4