【发布时间】:2021-05-05 08:19:14
【问题描述】:
我有以下用php编写的函数
function encrypt($string) {
//Key
$key = "key";
//Encryption
$cipher_alg = MCRYPT_TRIPLEDES;
$iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher_alg,MCRYPT_MODE_ECB), MCRYPT_RAND);
$encrypted_string = mcrypt_encrypt($cipher_alg, $key, $string, MCRYPT_MODE_ECB, $iv);
return base64_encode($encrypted_string);
return $encrypted_string;
}
桌面应用程序使用相同的方案来解密生成的字符串。较新版本的 PHP 不支持 mcrypt。如何替换此代码以达到相同的结果?
【问题讨论】:
-
@Topaco 谢谢..我检查了你提到的帖子。加密的结果不一样。
-
在链接代码中,如果你返回
_encrypt_openssl()中的密文不是十六进制,而是base64编码,那么密文将与你发布的代码生成的密文相同(假设明文和密钥相同) )。如果您得到不同的结果,请发布一个示例以进行复制。 -
@Topaco 非常感谢 :) 它解决了这个问题。
标签: php encryption mcrypt