在表中存储密码和摘要式身份验证

Rem*_*anu 9 security authentication

关于如何在表中存储网站用户密码的主题在SO上出现了几次,一般的建议是存储密码的哈希,最终是HMAC哈希.这适用于基本身份验证或基于表单的身份验证(实际上是相同的).我的问题是我必须提供摘要式身份验证,针对连接到我的服务的自动化工具.我一直在看这个问题,正如我所看到的,我可以存储的唯一哈希是摘要HA1部分:哈希username : realm : password.这样我就可以验证Basic/forms和Digest.

我的问题是,我认为没有任何好处.现在,如果攻击者获取了我的密码表(因为他只有哈希值并且需要发送清除密码),攻击者确实无法使用基本或基于表单的身份验证,但是没有什么能阻止他使用摘要式身份验证并提供有效的响应对我的服务挑战:他只是从表中的预先计算的HA1开始,并继续从那里制作响应(即我在后端验证用户的同样的事情).

我错过了什么吗?添加摘要要求是否基本上使散列密码的存储成为安全pov的无操作,最好是混淆?

Alm*_*mad 7

我使用预先计算的哈希值的原因不是防止攻击,而是保护用户隐私.

攻击者确实可以进行身份​​验证,但他不能(轻松)查看我的宝贵用户的密码并破坏他们正在使用的其他服务等.