我写了摘要授权的客户端javascript实现,我遇到了麻烦。成功登录后,我将授权标头参数放入cookie中以进行嵌套请求。但如果uri被更改,md5哈希变为无效。我可以重新计算授权,但我没有明确的文本密码。我想浏览器实现会重新计算。我对吗?如果这是真的,我该怎么办?出于安全原因,将明文密码存储在变量中并不是一个好主意。
答案 0 :(得分:0)
我找到了一半解决方案。 response
md5哈希计算为两个哈希值的组合:ha1和ha2。 ha1取决于username
,realm
和password
。 ha2取决于method
和uri
。所以我可以将ha1存储在浏览器的本地存储中,并在response
重新计算中使用它。这种方式不能解决原始问题,但是犯罪者不可能重新计算response
其他realm
的内容。