Bibm@th

Forum de mathématiques - Bibm@th.net

Bienvenue dans les forums du site BibM@th, des forums où on dit Bonjour (Bonsoir), Merci, S'il vous plaît...

Vous n'êtes pas identifié(e).

#1 13-03-2018 00:05:24

Moon
Membre
Inscription : 12-03-2018
Messages : 4

Attaque par faute sur le DES

Bonjour,
Je travaille sur une attaque par faute contre le DES. La faute a eu lieu au niveau de R15, et comme je possède le chiffré juste et le chiffré faux j'arrive à élaborer un système d'équations pour trouver la clé K16. Maintenant je ne sais pas comment retrouver K. Est ce qu'il faut que je retrouve toutes les sous clés ou bien il y a une autre manière de trouver K?

Merci d'avance.

Hors ligne

#2 13-03-2018 20:17:42

Rossignol
Membre
Inscription : 19-06-2015
Messages : 290

Re : Attaque par faute sur le DES

Bonsoir,

Si vous connaissez K16, vous pouvez facilement en déduire 48 bits de la clé K.
Voir le "key schedule" du DES.

Au round 16 les deux moitiés de PC2 sont revenues à l'état initial (l'état juste avant le premier décalage qui donne K1). C'est dû au fait que la somme des décalages des 16 rounds est exactement 28. Il suffit alors d'inverser PC1 pour retrouver 48 des 56 bits actifs de K.

Pour trouver les 8 bits qui manquent, le plus simple est de faire une attaque par force brute.
La complexité étant de $2^8$, c'est à la portée d'un ordinateur bourrin.

@+

Hors ligne

#3 14-03-2018 23:08:49

Moon
Membre
Inscription : 12-03-2018
Messages : 4

Re : Attaque par faute sur le DES

Bonsoir,

Donc une fois que je trouve K16, je fais PC1-1(K16) pour trouver les 48 bits de K?

Pour trouver K16, je comptais ce système d'équations en le codant:
.P-1(L16⊕L*16)1-4=[ S1(E(R15)⊕K16)1-6⊕(S1(E(R*15)⊕K16)1-6;
.
.
.
.
.P-1(L16⊕L*16)29-32=[ S1(E(R15)⊕K16)43-48⊕(S1(E(R*15)⊕K16)43-48;


J'arrive à ce système parce que je possède le chiffré juste: C et le chiffré faux C*. Mais est ce qu'il serait possible de faire de faire une meilleur recherche de K16, si je dispose de plusieurs chiffrés faux en plus?.

Merci d'avance.

Hors ligne

#4 16-03-2018 17:00:58

Rossignol
Membre
Inscription : 19-06-2015
Messages : 290

Re : Attaque par faute sur le DES

Bonjour,

Pour déterminer les 48 bits de $K$ il faut calculer $PC_1^{-1}(PC_2^{-1}(K_{16}))$.

J'ai fait un scan d'une page du livre de Knudsen et Robshaw The Block Cipher Companion.

Le tableau donne les indices des bits de la clé $K$ pour chacune des 16 sous-clés $K_n$.

J'ai écrit un bout de code Python pour vérifier ces tables.

Voilà les indices de la sous-clé $K_{16}$ :

18, 59, 42,  3, 57, 25, 41, 36, 10, 17, 27, 50,
11, 43, 34, 33, 52,  1,  2,  9, 44,  5, 26, 49,
30,  5, 47, 62, 45, 12, 55, 38, 13, 61, 31, 37,
 6, 29, 46,  4, 23, 28, 53, 22, 21,  7, 63, 39

Le bit 1 de $K_{16}$ est le bit 18 de $K$,
le bit 2 de $K_{16}$ est le bit 59 de $K$, ...etc.
Les 8 bits indéterminés de $K$ sont ceux d'indices 14, 15, 19, 20, 51, 54, 58, 60.

Concernant votre deuxième question, je ne peux rien dire.

Je n'ai jamais fait d'attaque par faute.
Il faut sortir la gégène, la lampe à souder,...etc pour torturer une malheureuse puce électronique et lui faire cracher le morceau.

Des images insoutenables circulent sur le net !

Je n'ai pas une âme de tortionnaire :-))

@+

Hors ligne

#5 20-03-2018 22:28:20

Moon
Membre
Inscription : 12-03-2018
Messages : 4

Re : Attaque par faute sur le DES

D'accord, Merci beaucoup.
Je vais faire en sorte de résoudre le système pour trouver K16.

Hors ligne

#6 30-03-2018 14:12:49

Monsieur L. GOUBIN
Invité

Re : Attaque par faute sur le DES

Bonjour,
je vous rappelle que les recherches sont personnelles et que c'est a rendre avant le 03/04 a minuit.
Bon courage.

Cordialement,

Votre professeur.

Réponse rapide

Veuillez composer votre message et l'envoyer
Nom (obligatoire)

E-mail (obligatoire)

Message (obligatoire)

Programme anti-spam : Afin de lutter contre le spam, nous vous demandons de bien vouloir répondre à la question suivante. Après inscription sur le site, vous n'aurez plus à répondre à ces questions.

Quel est le résultat de l'opération suivante (donner le résultat en chiffres)?
sept moins un
Système anti-bot

Faites glisser le curseur de gauche à droite pour activer le bouton de confirmation.

Attention : Vous devez activer Javascript dans votre navigateur pour utiliser le système anti-bot.

Pied de page des forums