以下代码创建一个 MD5散列然后用 SHA-1 再次散列它– 这安全吗?
$user = $_POST['username'];
$username = mysqli_real_escape_string($mysqli, $user);
$pass = md5($_POST['password']);
$password = sha1($pass);
这会增加碰撞的可能性吗?
是否有任何其他方法可以散列并非常快速地处理密码?
最佳答案
与单一哈希相比没有实际优势。
请注意,MD5 现在被认为已损坏,因为它容易受到许多实际攻击,并且不建议将 SHA1 等算法用于密码哈希。
有专门为密码散列设计的算法,例如 PBKDF2。您应该使用 PBKDF2 作为您的散列 - 请参阅 this question on security.stackexchange.com. .
关于php - 使用 MD5 和 SHA-1 进行双重哈希,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22030282/