以下文件加密代码在我的本地xampp服务器中运行良好。但是在aws ec2服务器上传和运行时它不能正常工作
stream_filter_append($fcrypt, 'mcrypt.rijndael-128', STREAM_FILTER_WRITE, $opts)
代码。文件没有加密。我该如何解决这个问题?
$fin = fopen($input_stream, "rb");
$fcrypt = fopen($aes_filename, 'wb');
$opts = array('iv'=>'','key'=>$key, 'mode'=>'ctr');
if(!stream_filter_append($fcrypt, 'mcrypt.rijndael-128', STREAM_FILTER_WRITE, $opts)){
echo "encryption failed";
exit;
}else{
while (!feof($fin))
{
fwrite($fcrypt, fread($fin, 8192));
}
fclose($fcrypt);
fclose($fin);
}
答案 0 :(得分:0)
RNCryptor可跨平台使用,对于多种语言,它还具有随机IV,密码扩展和加密认证。在当前的发展和支持下,它经过了很好的审查。
答案 1 :(得分:0)
我的代码无法正常工作的实际问题与流过滤器名称&mffpt.rijndael-128'有关,我刚刚安装了' mcrypt'使用以下代码到我的aws服务器。
sudo yum install php56-mcrypt
sudo service httpd restart
现在它完美运作