在数据库中存储密码和信息时是否应该对用户名进行哈希处理?

mcb*_*eav 7 mysql security

只是想知道在存储用户信息(例如密码等)时,将散列的用户名存储在数据库中是否是一个好习惯。

Nis*_*ant 4

对用户名进行加密/散列是一种矫枉过正的做法。如果您担心安全性,只需使用带有随机盐的SHA256进行哈希。

加密用户名没有意义,因为您可能会根据用户名、部分用户名进行搜索。加密只会让搜索变得困难。


好吧,我一生都在使用 SHA256 加盐,认为它是最强的。Rein Henrichs对这篇文章的好评表明SHA256可能不是最安全的。您可能想使用bcrypt,但我猜它非常慢。我会做一些概念证明,如果速度很慢那么我会继续使用 SAH256+hash。

感谢您的链接。

  • SHA 不是一个足够复杂的哈希函数,无法抵御暴力攻击。请参阅http://codahale.com/how-to-safely-store-a-password/ (2认同)