Il existe une fonction dans Mysql AES_encrypt.Chiffrement AES dans mysql et php
SELECT AES_encrypt("Hello World", "password") AS encrypted_value
Cela donne le résultat: 9438eb79863e7009722fc3f0ad4b7198
Mais quand j'utilise le code en php pour faire AES_ENCRYPT il me donne une autre valeur.
Le code PHP je suis arrivé de stackoverflow - PHP AES encrypt/decrypt
<?php
base64_encode(
mcrypt_encrypt(
MCRYPT_RIJNDAEL_256,
$sSecretKey, $sValue,
MCRYPT_MODE_ECB,
mcrypt_create_iv(
mcrypt_get_iv_size(
MCRYPT_RIJNDAEL_256,
MCRYPT_MODE_ECB
),
MCRYPT_RAND)
)
), "\0"
?>
Le résultat à partir du code PHP est ytip2sEkD87gmRk3IVI09qE7T+RoLr20YK4rJp16NkY=
Y at-il une méthode en php ou CodeIgniter pour qu'il retourne la même valeur.? --Merci.
Le premier est au format HEX et le second en base64? – HamZa
Pour un, mysql utilise 128 bits, et vous utilisez 256 bits dans votre code php. [Référence] (https://dev.mysql.com/doc/refman/5.5/en/encryption-functions.html#function_aes-encrypt) – 1615903