什么是更好的? Password_hash vs. SHA256 vs. SHA1 vs. md5

问题描述 投票:8回答:2

使用salt进行密码存储有什么好处?

MD5:

$hash = md5($password . $salt);

Password_hash:

$hash = password_hash($password, PASSWORD_DEFAULT, $salt);

SHA1:

$result = sha1($salt.$string);
md5 store sha1 sha256 password-hash
2个回答
23
投票

您应该绝对使用password_hash()函数而不提供自己的salt:

$hash = password_hash($password, PASSWORD_DEFAULT);

该功能将自行生成安全盐。其他算法的方法太快,无法散列密码,因此太容易暴力(大约每秒8 Giga MD5)。


3
投票

当你存储大量密码时,盐很棒,否则它们相当无用,因为它们以明文形式存储。如果攻击者设法获得您的哈希密码,那么假设他们可以获取您的盐。使用SHA-256,因为它是一个加密强大的哈希函数,并使用salt。但最重要的是,只需使用强密码和强哈希算法。

© www.soinside.com 2019 - 2024. All rights reserved.