使用 Mcrypt 加密和解密文件:一种现代方法
简介
Mcrypt,一次一个流行的 PHP 加密库,已被弃用,不再推荐使用。为了安全可靠的文件加密,OpenSSL 或 Sodium PHP 等现代替代方案提供了强大的解决方案。
加密函数
这是使用 OpenSSL 的更新加密函数:
function encryptFile($fileData, $key) { $iv = openssl_random_pseudo_bytes(openssl_cipher_iv_length('AES-256-CBC')); $encryptedData = openssl_encrypt($fileData, 'AES-256-CBC', $key, OPENSSL_RAW_DATA, $iv); return base64_encode($iv . $encryptedData); }
解密函数
类似地,以下解密函数利用新库:
function decryptFile($encryptedData, $key) { $ivSize = openssl_cipher_iv_length('AES-256-CBC'); $iv = substr($encryptedData, 0, $ivSize); $encryptedData = substr($encryptedData, $ivSize); $decryptedData = openssl_decrypt($encryptedData, 'AES-256-CBC', $key, OPENSSL_RAW_DATA, $iv); return $decryptedData; }
用法
要加密文件,请读取其将内容保存到变量中,使用内容和加密密钥调用 encryptFile 函数,并将加密数据保存到输出文件。
要解密,请将加密文件的内容读取到变量中,使用加密数据和解密密钥调用decryptFile 函数,并将解密数据写入输出文件。
结论
通过利用现代加密库,您可以安全地加密和解密 PHP 中的文件,确保敏感信息的机密性和完整性数据。
以上是如何使用现代库安全地加密和解密 PHP 中的文件?的详细内容。更多信息请关注PHP中文网其他相关文章!