(chap8 确认访问用户身份的认证) DIGES认证(摘要认证)

Posted thefist11

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(chap8 确认访问用户身份的认证) DIGES认证(摘要认证)相关的知识,希望对你有一定的参考价值。

1. 定义

为了弥补BASIC不加密的缺点,DIGEST同样适用质询/响应的方式,但不会像BASIC直接发送明文,给对方的只是相应摘要以及知讯码产生的计算结果,所以比起BASIC认证,密码泄露的可能性较小。
在这里插入图片描述

2. 步骤
在这里插入图片描述

step1.

请求需认证的资源时,服务器会随着状态码401 Authorization Required,返回带 www-Authenticate首部字段的响应。该字段内包含质问响应方式认证所需的临时质询码(随机数,nonce )。

  • 首部字段www-Authenticate 内必须包含realm和 nonce这两个字段的信息。客户端就是依靠向服务器回送这两个值进行认证的。

  • nonce
    一种每次随返回的401响应生成的任意随机字符串。该字符串通常推荐由Base64编码的十六进制数的组成形式,但实际内容依赖服务器的具体实现。

step2

接收到401状态码的客户端,返回的响应中包含DIGEST认证必须的首部字段Authorization信息。 首部字段Authorization 内必须包含username、realm .nonce. uri和 response的字段信息。

  • realm和 nonce就是之前从服务器接收到的响应中的字段。
  • username是realm限定范围内可进行认证的用户名。
  • uri ( digest-uri)即 Request-URI 的值,但考虑到绘代理转发后Request-URI的值可能被修改,因此事先会复制一份副本保存在uri内。
  • response 也可叫做Request-Digest,存放经过MD5运算后的密码字符串,形成响应码。
    响应中其他的实体请参见第6章的请求首部字段Authorization。

step3

接收到包含首部字段Authorization请求的服务器,会确认认证信息的正确性。认证通过后则返回包含Request-URI资源的响应。
并且这时会在首部字段Authentication-Info写入一些认证成功的相关信息。

3. 特点

  • DIGEST认证提供了高于BASIC认证的安全等级,但是和HTTPS的客户端认证相比仍旧很弱。
  • DIGEST认证提供防止密码被窃听的保护机制,但并不存在防止用户伪装的保护机制。
  • DIGEST认证和 BASIC认证一样,使用上不那么便捷灵活,且仍达不到多数Web 网站对高度安全等级的追求标准。因此它的适用范围也有所受限。

以上是关于(chap8 确认访问用户身份的认证) DIGES认证(摘要认证)的主要内容,如果未能解决你的问题,请参考以下文章

(chap8 确认访问用户身份的认证) SSL客户端认证

(chap8 确认访问用户身份的认证) DIGES认证(摘要认证)

读《图解HTTP》有感-(确认访问用户身份的认证)

确保web安全的https确认访问用户身份的认证(第七章第八章)

5分钟搞懂:基于token的用户认证

keystone认证服务