密码哈希方法

时间:2018-05-21 14:30:30

标签: security encryption hash

  

我需要在用户第一次注册到系统时将散列密码存储在数据库中。标准方法是采用Passwordsalt,附加它们并使用其输出保存在数据库中的哈希算法。

     

我将使用Cryptographically Secure Pseudo-Random Number Generator (CSPRNG)来生成salt。正如我从源Link中读到的那样,使用CSPRNG生成的盐非常安全,可以生成salts。由于salt非常难以预测,因此使用MD5进行哈希最终String(Password || salt)是一个很好的决定还是有更好的选择?

注意:

  

我正在考虑选择哈希算法的参数:
  1)安全性应该相当好   2)散列算法应该足够快,不会妨碍用户体验。

1 个答案:

答案 0 :(得分:5)

这已经在互联网上一次又一次地被覆盖,但是我们再来一次......

使用bcrypt,argon2或PBKDF2。使用CSPRNG生成盐。使用哈希存储盐是很好的。如果没有有意的迭代次数,请不要使用MD5,SHA256或其他任何内容。