是否有必要在DB中存储盐

Sib*_*ibu 0 php md5

我试图附加一个随机生成的盐以及我的md5生成的密码.那么我们如何重新检查盐渍密码呢?我们是否需要在Db中保存盐和密码.这是一个好方法.

$pass='password';
$salt = substr(str_shuffle('0123456789abcdefghijklmnopqrstuvwxyz'), 0, 12);
echo md5($pass.$salt);
Run Code Online (Sandbox Code Playgroud)

还请告诉我这是否是正确的腌制方式???

Jac*_*ink 8

盐的一点是避免彩虹表攻击或预先计算的密码哈希值.为了检查旧密码,您需要使用与其相同的盐,因此您需要将其存储在例如DB中.

Md5不是一个强大的加密哈希,你可能最好使用bcrypt.有一个免费的PHP实现http://www.openwall.com/phpass/.

这将有更强的腌制和散列.


You*_*nse 7

我们是否需要在Db中保存盐和密码.

是.

另请注意,所有这些浪漫的散列腌制内容与您的网站安全完全无关