已棄用的mcrypt 密碼加密擴展的替代方案
先前用於密碼加密的mcrypt 擴展已棄用並將被刪除完全使用PHP 7.2。這引起了人們對尋找安全密碼加密的適當替代方案的擔憂。
建議方法:密碼雜湊
作為最佳實踐,強烈建議對密碼進行雜湊處理,而不是對它們進行加密。雜湊將密碼轉換為不可逆的值,使攻擊者即使獲得對您的資料庫或檔案的存取權限,也無法恢復原始密碼。
替代加密方法
但是,如果您需要對密碼進行加密並需要解密它們的能力,則以下選項是推薦:
程式碼範例
要使用其中一種替代方案,您可以遵循與原始 mcrypt類似的結構程式碼:
// Generate a secure random initialization vector $iv = random_bytes(16); // Encrypt the password using AES-256 in CBC mode // Note: Replace key with a securely generated encryption key $encrypted = openssl_encrypt($string, 'aes-256-cbc', $key, OPENSSL_RAW_DATA, $iv); // Store the encrypted password and initialization vector for later decryption
解密
可以使用相同的函式庫和金鑰執行解密:
// Decrypt the encrypted password using AES-256 in CBC mode $decrypted = openssl_decrypt($encrypted, 'aes-256-cbc', $key, OPENSSL_RAW_DATA, $iv);
以上是用於密碼加密和解密的已棄用 mcrypt 擴充的安全替代方案是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!