次のファイル暗号化用コードは、ローカルのxamppサーバで完全に動作しています。しかし、アップロードされ、aws ec2サーバーで動作している間は、動作していません
stream_filter_append($fcrypt, 'mcrypt.rijndael-128', STREAM_FILTER_WRITE, $opts)
コードです。ファイルは暗号化されていません。どうすればこの問題を解決できますか?stream_filter_append awsサーバでPHPが動作しない
$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);
}
それはmcryptのを使用するのが最善ではありません、それはアバンダンあり、年間で更新されていないだけでない、標準PKCS#7(旧姓のPKCS#5)パディングをサポートしていません。バイナリデータでも使用できない標準のヌルパディング。 mcryptには、2003年にさかのぼる多くの傑出した[バグ](https://sourceforge.net/p/mcrypt/bugs/)があります。代わりに[defuse](https://github.com/defuse/php-encryption)の使用を検討するか、 [RNCryptor](https://github.com/RNCryptor)、これらは完全な解決策を提供し、維持管理され、正しいものです。 – zaph
私はPHPとアンドロイドの両方で動作するクライターが必要です。どちらが一番良いといいですか? –