HTTP笔记8确认访问用户身份的认证

确认访问用户身份的认证

常见的认证信息如下:

  • 密码:只有本人才会知道的字符串信息
  • 动态令牌:仅限本人持有的设备显示的一次性密码
  • 数字证书:仅限本人(设备)持有的信息
  • 生物认证:指纹和虹膜等本人的生理信息
  • IC卡等

HTTP使用的认证方式

HTTP/1.1使用的认证方式如下:

  • BASIC认证(基本认证)
  • DIGEST认证(摘要认证)
  • SSL客户端认证
  • FormBase认证(基于表单认证)

BASIC认证

Basic认证的步骤:

BASIC认证使用上不够便捷灵活,安全性低,因此并不常用

DIGEST认证

DIGEST认证同样使用质询/响应的方式,但不会像BASIC那样直接发送明文密码。
DIGEST认证的步骤:

说明:
response是由username、realm、password等信息经过MD5加密后的字符串,形成响应码

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

SSL客户端认证

SSL客户端认证是借由HTTPS的客户端证书完成认证的方式,凭借客户端证书认证,服务器可确认访问是否来自合法的客户端
SSL客户端认证的步骤:
(见上一篇)

多数情况下,SSL客户端认证不会仅依靠证书认证,一般和基于表单认证组合形成一种双因素认证来使用

SSL客户端认证需要一些必要的费用,除了从认证机构购买客户端证书的费用,服务器运营者为保证自己搭建的认证机构安全运营业要花费费用

基于表单认证

大多数Web网站的认证是基于用户名/密码的表单认证,一般会使用Cookie来管理Session

基于表单认证的登录信息及认证过程都无标准化的方法,服务器端应如何保存用户提交的密码等登录信息也没有标准化

通常,一种安全的保存方法是,先随机生成一个字符串,然后将随机字符串与目标字符串连接生成散列值后保存,这种增加额外信息叫做给密码加盐(salt)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前面两篇文章中关于 HTTP 相关知识基本上介绍的差不多了,这篇文章是对 HTTP 协议的补充,主要介绍以下三点内...
    lijiankun24阅读 5,120评论 2 3
  • 1. 网络基础TCP/IP HTTP基于TCP/IP协议族,HTTP属于它内部的一个子集。 把互联网相关联的协议集...
    yozosann阅读 8,770评论 0 20
  • 某些Web页面只想让特定的人浏览,为达到这个目标,必不可少的就是认证功能。 何为认证 为了弄清究竟是谁在访问服务器...
    杰哥长得帅阅读 8,676评论 0 3
  • 一、概念(载录于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434阅读 12,706评论 6 152
  • 工作流程 一次HTTP操作称为一个事务,其工作过程可分为四步: 1)首先客户机与服务器需要建立连接。只要单击某个超...
    保川阅读 10,083评论 2 14

友情链接更多精彩内容