Bonjour tout le monde.

Je cherche à crypter des données coté client (en javascript) pour les utiliser par la suite coté serveur (donc les décoder avant).

Je passe par le cryptage type AES en mode ECB (pour éviter de passer par un vecteur d'initialisation)

Pour cela, coté serveur, j'utilise ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
$chaine = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $clef, $string, MCRYPT_MODE_ECB);
 
Cela me donne ceci : 
SLo1D1a6ftVmDt6mWm19T1GMRugcuXei8TlZyGPbaumwiz6pLqTZA%2F9vvnKCzXoPRieTya4Kw5RVbKy85Ibh74umEGRzd44mVt1lDGzEHaN1gEkq3G8PRxGVj%2F3Vz%2BG3AEojHPZXo7rRTDTnXsf5VUIjZgGcFNMn
Coté javascript, j'utilise cette implémentation :
http://javascript.about.com/library/blencrypt.htm

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
var plaintext = 'le_texte_a_encoder'; # le meme qu'en PHP
var key = hexToByteArray('098f6bcd4621d373cade4e832627b4f6'); # la cle, la meme qu'en PHP
var mode = 'ECB'; # la méthode d'encryptage
var ciphertext =  byteArrayToString(rijndaelEncrypt(plaintext,key, mode));
document.write(encodeBase64(ciphertext)); # encodage en base64
Mais cela me renvoit :
p5ElrSnbn/h/PSr6EWaHlKkrMLUWXuiGh5d5WSI54TxWcjfSYlI00pmJaX2aaA76b4tCgOmW9FrBnzP+BJTmn6Xra+2P6PraTpcjuyTglDxVZgwVh/jEjQdfl8oXjaPuDaK+DherQYuNMY8KzZ1R56IwUndHz4qSP1tqHBpkrO

Donc en gros, pas la meme chose...
J'ai pas mal galéré sur le script en js (je considère que le script PHP est correct), passé ma chaine en hexa etc ... impossible d'avoir le même résultat.

SI quelqu'un a une idée, je serai vraiment preneur.
Merci