| Age | Commit message (Collapse) | Author |
|
J'étais parti du principe que pour inverser
non-linear layer
r0 linear layer
permutation layer
…
non-linear layer
r31 linear layer
/
Il allait falloir faire
non-linear layer
r0 linear layer
/
…
non-linear layer
r31 linear layer
permutation layer
Mais en fait non, on procède comme au chiffrement : c'est le dernier
tour qui saute la permutation. C'est bien précisé dans
Lilliput (annexe B, figure 8).
✨ MathéMagie ✨
|
|
|
|
tbc-decrypt inbound.
|
|
Toujours conforme au vecteur de test ! Le test passe, du coup.
J'ai un doute sur la gestion des indices de π, ceci dit.
|
|
Toujours conforme au vecteur de test.
|
|
So far so good.
|
|
Plus qu'à implémenter maintenant.
|
|
J'aimerais éviter de trimballer des variables dans toutes mes
fonctions juste pour débugger.
|
|
Implémentation de test-cipher.c en passant.
|
|
Ce nom sera utilisé pour une fonction plus simple qui ne wrappera pas
à 8 octets.
|
|
|
|
Pour que cipher.c puisse s'en servir.
|
|
La gestion de la permutation est probablement pas élégante… 🤷
|
|
I.e. définition des fonctions de haut-niveau ; reste à implémenter les
fonctions en-dessous, et les sorties de debug.
|
|
Notamment de la partie debug du tweakey, pour permettre de ne pas
polluer la sortie des autres tests.
|
|
|
|
Permet d'isoler les paramètres propres à la taille de clé et au mode ;
normalement, le reste du code devrait être strictement identique d'un
dossier à l'autre.
|
|
Permettra d'ajouter un nouveau test plus facilement.
|
|
|
|
|
|
J'avais oublié
- de virer le 33ème tour de null et full,
- de mettre à jour les valeurs de random dans le code C
TODO: lire ces valeurs automatiquement depuis le fichier de référence…
|
|
Aucune idée de si null et full devraient aussi être mis à jour. Pour
null j'ai l'impression que non ; pour full j'ai l'impression que si.
🤷
|
|
… Et bien sûr, les résultats divergent. E.g. pour le vecteur random :
Post permutation Tweakey :
- b4 16 73 a9 ae 56 44 ca
- f3 d1 19 a2 f1 00 13 28
- 25 0e 90 39 33 c5 28 33
- d2 ff 52 a5 12 73 5b 19
- 26 04 0b cf 2d 5e d4 4c
+ b4 73 ae 44 16 ca a9 56
+ f3 19 f1 13 d1 28 a2 00
+ 25 90 33 28 0e 33 39 c5
+ d2 52 12 5b ff 19 a5 73
+ 26 0b 2d d4 04 4c cf 5e
|
|
|
|
Viens de me faire bouffer par un bug de formattage ; il était signalé
par un warning, mais noyé sous la masse. Stop.
|
|
TODO: trouver un linter qui détecte ce genre de bêtises…
|
|
|
|
|
|
Lilliput-AE-Ⅰ-128 d'abord, pour comparer aux vecteurs obtenus par Léo.
|