HTTP摘要身份验证与SSL

HTTP摘要身份验证与SSL,ssl,http-authentication,digest,Ssl,Http Authentication,Digest,从性能、安全性和灵活性的角度来看,HTTP摘要身份验证和SSL之间有什么区别?摘要身份验证仅加密身份验证凭据(即您在浏览器的身份验证对话框中键入的用户名和密码)。。。SSL加密页面中的所有内容。因此SSL的效率较低,而且通常需要更多的设置。但是SSL的优点是,如果双方都有可信的证书,它可以让双方验证对方的身份。HTTP摘要身份验证不能做到这一点,因此,当使用不带SSL的HTTP摘要时,您不知道将登录信息发送到的服务器是正确的还是冒名顶替者。HTTP摘要身份验证的优缺点在中解释得非常清楚--您应该

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

摘要身份验证仅加密身份验证凭据(即您在浏览器的身份验证对话框中键入的用户名和密码)。。。SSL加密页面中的所有内容。因此SSL的效率较低,而且通常需要更多的设置。但是SSL的优点是,如果双方都有可信的证书,它可以让双方验证对方的身份。HTTP摘要身份验证不能做到这一点,因此,当使用不带SSL的HTTP摘要时,您不知道将登录信息发送到的服务器是正确的还是冒名顶替者。

HTTP摘要身份验证的优缺点在中解释得非常清楚--您应该阅读

直截了当地说:HTTP摘要身份验证只会保护您不被攻击者丢失明文密码(考虑到MD5安全性的状态,甚至可能不是这样)

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

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

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


对于“灵活性”,我将使用:嗯?

一些HTTP摘要身份验证的服务器实现强制您将明文密码保存在服务器上更好的实现保存
用户名:领域:MD5(用户名:领域:密码)
这具有存储密码的效果,如果攻击者获得了密码文件,则会提供一定的安全性。

您的问题听起来是否一定像我们在考试?现在我想知道原始密码是什么样子!据我所知,摘要身份验证只包含一个所谓的HMAC,根本不包含任何加密。@mdorseif:我想我不是很精确。我的意思是“加密”,即使某些数据无法理解,无论是否可逆。与Linux上用于散列密码的crypt()函数的意义相同。那么facebook为什么要加密您的凭据呢?还有那么多其他SM网站?