24

从性能、安全性和灵活性的角度来看,HTTP 摘要式身份验证和 SSL 有什么区别?

4

3 回答 3

37

HTTP Digest Authentication 的优缺点在有关该主题的 Wikipedia 文章中已进行了非常清楚的解释——您应该阅读!

坦率地说:HTTP Digest Auth 只会保护您免于将明文密码丢失给攻击者(并考虑到 MD5 安全状态,甚至可能不是这样)。

然而,它对中间人攻击是开放的,而且——取决于实现,因为大多数高级特性都是可选的——重放、字典和其他形式的攻击。

但是,HTTPS 连接和受 Digest Auth 保护的 HTTP 连接之间的最大区别在于,前者使用公钥加密对所有内容进行加密,而后者则以明文形式发送内容。

至于性能:从上面提到的几点来看,你应该很清楚你得到了你所付出的(使用 CPU 周期)。

对于“灵活性”,我会选择:嗯?

于 2009-03-01T06:28:04.870 回答
8

摘要式身份验证仅加密身份验证凭据(即您在浏览器的身份验证对话框中键入的用户名和密码)... SSL 加密页面中的所有内容。因此 SSL 的效率会降低,而且设置起来通常也更复杂。但是 SSL 确实有一个优势,它可以让双方验证彼此的身份,如果他们有受信任的证书的话。HTTP 摘要身份验证不这样做,因此当使用不带 SSL 的 HTTP 摘要时,您真的不知道您将登录信息发送到的服务器是正确的服务器还是冒名顶替者。

于 2009-03-01T02:10:05.177 回答
4

HTTP Digest Authentication 的一些服务器实现强制您将明文密码保存在服务器上更好的实现保存username:realm:MD5(username:realm:password)这具有对存储的密码进行加盐的效果,如果攻击者获得了密码文件,则可以提供一定的安全性。

于 2009-03-02T11:09:52.687 回答