标签: sql database security hash passwords
我想存储带有随机盐的哈希密码。在两个不同的sql-tables 中,哈希值应该是唯一的。
salt由随机字符和数字组成,密码和登录名中不允许使用斜杠。
为了确保我想要附加分隔符和唯一登录的唯一性。
示例(伪代码):
hash(salt + password + “/” + login)
这个想法是避免在两个不同的表中搜索独特的随机盐。
如果我以这种方式构建存储的哈希,那么安全性会降低吗?
答案 0 :(得分:0)
听起来我没有使用正确类型的“哈希”函数来“哈希”你的密码,因为如果你是,那么你就不需要问这个问题了。
普通哈希函数(如SHA系列)不适用于保护密码。问题是它们的计算速度太快,这意味着密码可能是强制性的。有关详细信息,请阅读this。
你应该使用的是像bcrypt这样的函数(或者如果它不可用,至少使用pbkdf2),它将盐和密码作为输入作为单独的参数输出您存储在数据库中的“哈希”。
我将代表加密和安全社区为这个令人困惑的单词"hash"使用道歉。不幸的是,它似乎不会很快得到修复。