我在PHP 7中使用mcrypt_decrypt
转换为openssl_decrypt
时遇到旧的PHP 5.6脚本时遇到问题。
以下是以前的工作:
$decrypted = trim(
mcrypt_decrypt(MCRYPT_RIJNDAEL_128,
substr(sha1($this->key), 0, 32),
base64_decode($params),
MCRYPT_MODE_CBC,
base64_decode($iv)), "\0..\32");
以下是我的尝试:
$decrypted = openssl_decrypt(
base64_decode($params),
'AES-256-CBC', //have tried AES-128-CBC with no luck
substr(sha1($this->key), 0, 32),
OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING,
base64_decode($iv)
);
代码实际上是Web框架的一部分,所以当我print_r
解密数据时,我得到了这个:
我几乎没有关于加密的想法,所以会感激一些帮助! : - )