Buonasera. Ho l'esigenza di criptare una stringa in formato alfanumerico tramite la funzione mcrypt_encrypt AES 256bit.
Questo è il mio codice:
Codice PHP:
$secret_key = "09be3e2ce39c84b5c04bfbba090b63bc";
$iv = mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC), MCRYPT_RAND);
function encrypt($src){ global $iv, $secret_key;
return mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $secret_key, $src, MCRYPT_MODE_CBC, $iv);
}
function decrypt($src){ global $iv, $secret_key;
return mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $secret_key, $src, MCRYPT_MODE_CBC, $iv);
}
Purtroppo non produce una stringa alfanumerica ma una serie di caratteri non comprensibili.
Dove sbaglio?
EDIT: Usando la base64 ottengo ciò che voglio ma decriptando la stringa ottengo caratteri non voluti.
EDIT2: Ho risolto utilizzando: trim($var, "\0");