# Autres langages > Autres langages > VHDL >  AES 128 bits

## bibi-C-Moi

Bonjour,
J'espre que je suis sur le bon forum...
J'ai un soucis dans mon developpement VHDL.
Quelqu'un a-t-il un source pour le decryptage AES? J'ai trouv le cryptage :
http://islab.oregonstate.edu/koc/ece...egarajan-Park/
qui fonctionne trs bien d'ailleurs...
Mais a pas dcryptage sur le net  ::?:   Ou j'ai mal cherch...

Voila, j'ai rutilis la base encrypt pour faire le decrypt puisque ce ne sont que des inversions mais je n'obtiens pas mon plaintext d'origine. Par contre, ma S-box inverse est bonne, j'en ai encore mal aux yeux  force de l'avoir vrifi  ::P:  



Dans la routine Mix Column de mon algo, il y a des multiplications  effectuer sur des polynmes reprsents par des vecteurs.


Je prend un vecteur pour exemple : V[7..0]
Multiplication du vecteur par 2 : quivalent  un dessalage  gauche.
J'obtiens donc un vecteur d'un bit plus grand :


```
V[7..0] = 10110011 ==> RESULTAT[8..0] = 101100110
```

Multiplication du vecteur par 3 : equivalent  un decalage a gauche suivi d'un XOR avec le vecteur d'origine.


```

```

Comme vous pouvez constater, on ajoute un 0 en tete du vecteur d'origine pour respecter le format 9 bits.

Cet algo fonctionne trs bien.


Alors, l o a coince, c'est pour le dcryptage :
Je dois effectuer des multiplications par 9, 11, 13 et 14...

Pour le 9, j'ai pens  l'opration suivante :
- multiplication par 8 (dessalage a gauche de 3 bits)
- XOR avec le vecteur d'origine
Mais j'ignore si c'est correct, je ne peux malheureusement pas faire des tests simples aussi profondment dans le code, je n'ai qu'un rsultat final dterministe "brut de pomme" en sortie du systme (j'ai le rsultat thorique).

Pour les 11, 13 et 14, je sche...

Mes questions :
Pourriez-vous m'clairer sur le fonctionnement du XOR dans ce contexte?
Comment auriez-vous fait? (mme une ide vague est bienvenue)

Merci d'avance.



PS : Je peux vous fournir des codes dtaills si vous voulez; j'ai essay dlaguer un peu dans ce paragraphe. Pour toute prcision supplmentaire, je reste dispo.

PS 2 : je vous donne des liens vers la doc que j'utilise:

http://islab.oregonstate.edu/koc/ece...egarajan-Park/
Module "mix_column.vhd"

http://www-id.imag.fr/~svarrett/ense...Projet_AES.pdf
Page 9

----------


## Mark Havel

Habituellement, toutes les techniques et algorithmes de cryptages sont fournies avec la mthode pour dcrypter. Sinon, cela n'aurait pas beaucoup d'intrt, du moins, pas dans le cadre de communications o  la fin, le destinataire est suppos pouvoir lire en clair le message. 
Donc es-tu sr que le lien que tu as trouv ne propose pas quelque part une mthode de dcryptage ?

----------


## bibi-C-Moi

Le lien
http://islab.oregonstate.edu/koc/ece...egarajan-Park/
ne propose pas de decryptage, il le disent dans l'intro.
Finallement, le decryptage revient a faire les oprations inverses dans un ordre diffrent, c'est pourquoi ils n'ont pas jug utile de le mettre en ligne, je pense...

En effet, il m'a fallu une dixaine de minutes pour modifier les oprations. ( part la matrice du subByte qui m'a pris pas mal de temps  :;): )

Le problme est que j'ai l'impression de bloquer sur un problme tout bte dans le mix_column...
Sinon, du nouveau : j'abandonne leur ide du xor bizarre. J'ai donc inclus des composants multiplicateurs. Ca prend plus de place sur le FPGA mais au moins c'est clair ::king::  . Design in progress... Result soon
Merci d'avoir rpondu.

----------


## bibi-C-Moi

AES_spec.pdf page 3 : 2.3 Multiplication by repeating shifts
Procedure sympa mais pas vident au premier coup d'oeil...
Bye ::yaisse2::

----------

