已弃用的 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中文网其他相关文章!