官方demo解密mdecrypt_generic函数在php7.1之后被废弃了,导致php7以上版本使用不了,使用openssl_decrypt替代解密
decrypt方法中修改如下:
//使用BASE64对需要解密的字符串进行解码
//$ciphertext_dec = base64_decode($encrypted); 注:新方法openssl_decrypt中不需要base64_decode,一个大坑
//$module = mcrypt_module_open(MCRYPT_RIJNDAEL_128, '', MCRYPT_MODE_CBC, '');
$iv = substr($this->key, 0, 16);
//mcrypt_generic_init($module, $this->key, $iv);
//解密
//$decrypted = mdecrypt_generic($module, $ciphertext_dec);
//mcrypt_generic_deinit($module);
//mcrypt_module_close($module);
改成如下
$decrypted = openssl_decrypt($encrypted,'AES-256-CBC',$this->key,OPENSSL_ZERO_PADDING,$iv);