Cryptage et libmcrypt

Résolu
cs_metos Messages postés 168 Date d'inscription vendredi 18 janvier 2002 Statut Membre Dernière intervention 19 octobre 2009 - 25 janv. 2008 à 09:05
cs_metos Messages postés 168 Date d'inscription vendredi 18 janvier 2002 Statut Membre Dernière intervention 19 octobre 2009 - 25 janv. 2008 à 15:36
Bonjour,

j'aimerais utiliser du cryptage AES en php avec la fonction :  mcrypt_module_open. Lors du chargement de la page l'erreur suivante se produit : Call to undefined function mcrypt_module_open(). J'ai php 5.2.5 (installé avec xamp) et je charge les 2 librairies  extension=php_mcrypt.dll
extension=libmcrypt.dll

es ce qu'il faut rajouter une info dans le php.ini?
merci d'avance

metos

8 réponses

codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
25 janv. 2008 à 13:51
C'est ptete un probleme d'encodage, mais c'est pas sur (le chiffrement fait des choses bizares :p)

Pour etre sur tu enregistre sur un fichier sans preter attention aux charactères, ensuite tu lis le fichier et tu déchiffre, si tu trouve pas pareil, essaye avec les fonction utf8_encode/utf8_decode. Mais à mon avis tu n'en aura pas besoin ! :)

Walawala
3
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
25 janv. 2008 à 13:22
Yop :)

Pour que cela fonctionne, il te faut libmcrypt 2.4.x or 2.5.x, c'est le cas ?
Fait un phpinfo.php et regarde la partie mcrypt, quelle version c'est. Car apparement la fonction mcrypt_module_open n'est pas reconnue par Php
0
cs_metos Messages postés 168 Date d'inscription vendredi 18 janvier 2002 Statut Membre Dernière intervention 19 octobre 2009
25 janv. 2008 à 13:31
En fait je modifié php.ini se trouvant dans le répertoire \php\ et c'était celui de \apache\bin qu'il fallait modifié.
autre question : quand on code une chaine, la valeur codée lorsque je l'affiche ou l'enregistre dans un fichier, me sort du n'importe quoi, apparement il faut appliquer une conversion du genre ascii ou autre. Genre il m'affchie des carré avec des ?.

merci d'avance

metos
0
cs_metos Messages postés 168 Date d'inscription vendredi 18 janvier 2002 Statut Membre Dernière intervention 19 octobre 2009
25 janv. 2008 à 14:15
J'ai testé comme tu me l'as proposé et ca fonctionne.
en fait quand j'utilise C# pour codé mon string j'ai cette chaine en sortie :
dHNlsc1i/JKP7AzU1PqirXyezNxdAHVMDuh9Ija/AJCTbMTCYZM9RPXf/kUPe3snCO7ac5d3JpLIYmDiBS34KA==

alors qu'en php même avec utf8_encode sans change pas grand chose:
õ%l\Xµ9žˆ�B;�1B;ƒeª¿\øë�3;�15;_†äS#uá-Oó–äjêî.æµ´Ê�16;]½\â¢�C;v)kð›+�F;ۏ}í/
&JÕ|8#C;©Ú¢¡Fô�19;Í)

voilà niveau du code $string est la chaine que je code. J'ai enlever l'iv et la clé ;) :

$string = utf8_encode($string);
$key = 'supersecret';

/* Open module, and create IV */
$td = mcrypt_module_open('rijndael-128',
'','cfb', '');
$key = substr($key, 0,
mcrypt_enc_get_key_size($td));
$iv_size = mcrypt_enc_get_iv_size($td);
$iv = mcrypt_create_iv($iv_size,
MCRYPT_RAND);
/* Initialize encryption handle */
if (mcrypt_generic_init($td, $key, $iv) !=
-1) {

/* Encrypt data */
$c_t = mcrypt_generic($td, $string);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
$c_t = $iv.$c_t;
return $c_t;

metos
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
25 janv. 2008 à 14:46
Donc apparement c'est bon ?

Si c'est le cas tu peux valider en cochant sur un des "Réponse acceptés" histoire de l'indiquer ? Merci :)
0
cs_metos Messages postés 168 Date d'inscription vendredi 18 janvier 2002 Statut Membre Dernière intervention 19 octobre 2009
25 janv. 2008 à 14:56
C'est à moitié bon ;)
le cryptage fonctionne, mais je n'arrive pas utiliser le bon apparement.
AES clé 256 bit en C# ne me donne pas le même resultat qu' AES clé 256 bit en php. Le IV fournit en C# pour une clé 256 correspond à une clé 192 bits en php... dur dur le cryptage...

metos
0
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
25 janv. 2008 à 15:03
oula :/
Alors là, ... euh ..., bon probleme ! :p

Là je pourrai pas t'aider :/ Désolé :/
0
cs_metos Messages postés 168 Date d'inscription vendredi 18 janvier 2002 Statut Membre Dernière intervention 19 octobre 2009
25 janv. 2008 à 15:36
merci quand meme ;)
va falloir que je teste un peu tous les modes ...

metos
0
Rejoignez-nous