关于(Web)应用程序中的哈希密码,已经提出了许多问题,但是我遇到了另一个问题。我知道我当前正在处理的应用程序做得不够安全(只是sha1没有盐或任何东西),但是突然更改它有点困难。
我将必须找到一种为所有(±50.000)用户实施新算法的方法。我一直在考虑一些解决方案,但是听起来都不对。
1)使用新密码在用户表中添加第二列。每次用户通过身份验证时,我都会用新的哈希值存储密码,并丢弃旧的哈希值。实际上,这将意味着sha1逐步淘汰将需要数年时间。
1.1)执行上述操作,但会刺激用户重新登录我们的系统以进行安全更新,但这确实让您感觉到了(以前)存在的安全漏洞。那不是我管理层的喜好。
2)重新验证所有用户并丢弃所有密码。这非常严格,也给用户带来了痛苦。
您将如何应对这个问题?
您可以通过将sha1散列用作新的改进的哈希实现的输入来扩展现有解决方案,在其中可以添加salt等。新解决方案将包括sha1步骤+您可能需要的任何改进。
这样,您可以从已有的哈希值中计算出新的哈希值,但同时可以改进解决方案。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句