Bonjour à tous,
Je souhaite pouvoir afficher le resultat d'un AES_ENCRYPT en format string et non dans son "interpretaion" binaire.
Quand on fait
cela done
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SELECT AES_ENCRYPT( 'text', 'paswword' );
: ??P0 ?g蚶E???
Comme c'est ecrit dans la doc mysql, il faut stocker le resultat dans un blob donc
Dans la colonne ENCRYPT2, il y a ö½¨Ü·øÍJ/ª¼Tf€D.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 CREATE TABLE `encrypt` ( `ID` INT( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , `ENCRYPT` BLOB NOT NULL , `ENCRYPT2` VARCHAR( 255 ) NOT NULL ) TYPE = MYISAM ; INSERT INTO `encrypt` ( `ID` , `ENCRYPT` , `ENCRYPT2` ) VALUES ( NULL , AES_ENCRYPT( 'text', 'password' ) , AES_ENCRYPT( 'text', 'password' ) );
Hors quand je fais un dump, il donne:
c'est cette valeur en 0x... que je veux car j'ai vu que cela passait pour faire un comparaison (genre WHERE ENCRYPT=0xf6bd0fa8dcb7f8cd4a2faabc54668044).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 INSERT INTO `encrypt` VALUES (1, 0xf6bd0fa8dcb7f8cd4a2faabc54668044, 'ö½¨Ü·øÍJ/ª¼TfD');
J'ai essayé
mais non il veut pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT substring( `ENCRYPT` , 1 ) FROM `encrypt` WHERE 1
Sinon
marche tres bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT AES_DECRYPT( `ENCRYPT` , 'password' ) FROM `encrypt` WHERE 1
J'avoue je n'ai pas de super connaissance en binaire/mysql mais la je ne vois pas.
Le but étant simplement de pouvoir crypter un mail pour pouvoir créer un lien de confirmation et ensuite pouvoir decrypter le mail avec la clé.
Merci de m'avoir lu !!!!!!![]()
Partager