我正在开发一个网络应用程序。现在从安全角度来看,密码从客户端发送到服务器时需要加盐哈希。 现在我的问题是,如果我随机生成一个盐,将其附加到密码并散列组合,如何验证该密码。由于生成的盐是随机的,因此盐+密码组合的哈希每次都会不同。 如果我将与用户凭据一起生成的相同盐发送到服务器,这将暴露盐。暴露的盐会产生类似的麻烦,因为试图破解密码的人可以将暴露的盐附加不同的密码以获取哈希并匹配它。我检查了许多网站和有关堆栈溢出的问题,但没有一个完全符合我的需要。
有一些工具可以读取浏览器的内存并窃取输入的密码。因此,客户端也需要加盐哈希。