HTTP协议学习笔记九

摘要认证

摘要认证试图修复基本认证协议的如下改进:

1.永远不会以明文方式在网络上发送密码。

2.可以防止恶意用户捕获并重放认证的握手过程。

3.可以有选择地防止对报文内容的篡改。

4.防范其他几种常见的攻击方式。


HTTP协议学习笔记九

1.客户端请求了某个受保护文档。

2.在客户端能够证明其知道密码从而确认其身份之前,服务器拒绝提供文档,服务器向客户端发起质询,

询问用户名和摘要形式的密码。

3.客户端传递了密码的摘要,证明它是知道密码的。服务器知道所有用户的密码,因此可以将客户端提供

的摘要服务器自己计算的摘要进行比较,已验证用户是否知道密码,从而保护密码。


摘要,例图:

HTTP协议学习笔记九


摘要的握手机制,如图:

HTTP协议学习笔记九

HTTP的摘要认证协议在传统首部中添加了一些新的选项,还添加了一个新的可选首部Authorization-Info。

1.服务器会计算出一个随机数。

2.服务器将这个随机数放在WWW-Authenticate质询报文中,与服务器所支持的算法列表一同发往客户端。

3.客户端选择一个算法,计算出密码和其他数据的摘要。

4.将摘要放在一条Authenticate报文中发回服务器。

5.服务器接受摘要,选中算法以及支撑数据,计算出与客户端相同的摘要。然后服务器将本地生成的摘要与

网络传送过来的摘要进行比较,验证其是否匹配。


HTTP认证首部,如图:

HTTP协议学习笔记九