首頁 >後端開發 >php教程 >如何使用現代函式庫安全地加密和解密 PHP 中的檔案?

如何使用現代函式庫安全地加密和解密 PHP 中的檔案?

DDD
DDD原創
2024-11-19 14:55:02876瀏覽

How Can I Securely Encrypt and Decrypt Files in PHP Using Modern Libraries?

使用Mcrypt 加密和解密檔案:一種現代方法

簡介

Mcpt🎜>簡介

Mcpt,一次一個流行的PHP 加密庫,已被棄用,不再建議使用。為了安全可靠的檔案加密,OpenSSL 或 Sodium PHP 等現代替代方案提供了強大的解決方案。

加密函數

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);
}

這是使用 OpenSSL 的更新加密函數:

解密函數

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn