je suis un tout petit débutant, veuillez m'excuser pour mes erreurs.
j'ai déjà utilisé le triple des, je lis le rfc et divers liens, je vois globalement ce qu'elle fait, mais j'essaye de comprendre comment elle marche, avec peut etre l'ambition de faire un prog 3des en c pour maitriser.
J'ai compris le début, mais quand j'arrive à l'expansion, je me pose des questions
1) permutation - On prend un bloc de 64 bits, on permute le permier bit de chaque bloc 8 bit avec le 1er bloc . - On eclate en deux bloc de 32 bits G0 et D0, les bit paire du premier bloc de 8 bit initial sont dans G0, les bits impaires dans le bloc de 32 bits D0
ok, j'ai pas de souci
2) extension
On prend le bloc de 32 bits D0, on va faire un michoui avec une extension sur 48 bit dans une matrice, les bits sont de nouveau permutés, dupliqués aléatoirement pour certains.
Voila ma 1ere question, la ou c'est pas clair, comment il reparti les bit dupliqués ? un random sur l indice des des 32 bits de D0 ?
Après il fait un OU eXclusif sur la matrice pour obtenir un nouveau D'0 etendu
Voila ce que je lis.
Les 32 bits du bloc D0 sont étendus à 48 bits grâce à une table (matrice) appelé table d'expansion (notée E), dans laquelle les 48 bits sont mélangés et 16 d'entre eux sont dupliqués :
Ainsi, le dernier bit de D0 (c'est-à-dire le 7ème bit du bloc d'origine) devient le premier, le premier devient le second, ... De plus, les bits 1,4,5,8,9,12,13,16,17,20,21,24,25,28 et 29 de D0 (respectivement 57, 33, 25, l, 59, 35, 27, 3, 6l, 37, 29, 5, 63, 39, 31 et 7 du bloc d'origine) sont dupliqués et disséminés dans la matrice
A chaque "round", 48 bits extraits de la clé sont pris en compte; ils sont combinés par XOR avec le résultat de l'expansion E, avant de passer dans les S-box.
Noter que les 48 bits pris en compte change d'un round à l'autre, et sont pris dans des ordres différents. Au total, 56 bits de la clé (sur 64) influencent le résultat.
> dans les 16 iterations sur D0 avec les matrices de compression et > de substitution contenant la cle, une matrice de 4x16 bit par bloc ?
> ils sont combinés par XOR avec le résultat de l'expansion E, > avant de passer dans les S-box.
Ok, apres le resulat de l'expansion, j'avais loupé, je comprends mieux, Merci beaucoup :-))
> Noter que les 48 bits pris en compte change d'un round à l'autre, > et sont pris dans des ordres différents. Au total, 56 bits de la > clé (sur 64) influencent le résultat. >> dans les 16 iterations sur D0 avec les matrices de compression et >> de substitution contenant la cle, une matrice de 4x16 bit par bloc ? > Non. Les 48 bits sont organisés en 8 x 6 (8 S-box, 6 bits par entrée > de S-box). C'est illustré figure 2 de