在PHP7及以上版本中,mcrypt_解密的替代解决方案是什么?
我正在尝试将我的函数从PHP5.5版本更新到PHP7。但这两个函数的返回结果是不同的。PHP5.5结果正确,PHP7结果错误。此代码的替代解决方案是什么?。有人知道这个功能吗 PHP5.5-结果正确在PHP7及以上版本中,mcrypt_解密的替代解决方案是什么?,php,mcrypt,Php,Mcrypt,我正在尝试将我的函数从PHP5.5版本更新到PHP7。但这两个函数的返回结果是不同的。PHP5.5结果正确,PHP7结果错误。此代码的替代解决方案是什么?。有人知道这个功能吗 PHP5.5-结果正确 public function decrypt($input){ $input = base64_decode($input); $result = mcrypt_decrypt(MCRYPT_DES, $this->key3,$input, MCRYPT_MODE_CB
public function decrypt($input){
$input = base64_decode($input);
$result = mcrypt_decrypt(MCRYPT_DES, $this->key3,$input, MCRYPT_MODE_CBC, $this->iv);
return $result;
}
PHP7.1.0结果不正确
public function decrypt($input){
$inputs = base64_decode($input);
$result = openssl_decrypt($input,'AES-256-CBC', $this->key3, OPENSSL_RAW_DATA, $this->iv);
return $result;
}
mycrypt调用使用DES尝试和解密,但openssl调用使用AES尝试和解密。毫不奇怪,它们不会产生相同的结果…@ADyson,你能解释一下吗?PHP7中的MCRYPT_DES的替代解决方案是什么?它们是不同的加密密码,因此显然,如果使用一个密码对某个内容进行了加密,则无法使用其他密码对其进行解密。我建议你用谷歌搜索“php mycrypt替换”或类似的术语,关于这个话题有很多现有的答案。如果你仍然无法从之前的文章中解决这个问题,请发布更多信息。DES可以用具有现代计算能力的蛮力破解。因此,如果您可以控制此数据的加密过程,我们建议您使用更强大的加密密码。@ADyson,我尝试了很多选项。我最近三天在玩这个代码。但我无法解决。您需要哪些信息?