zoukankan      html  css  js  c++  java
  • COOKIE

    一、什么是cookie

    http是一个无状态的协议,但是互联网产品的发展,需要记住用户的操作行为习惯

    cookie:主要是存储用户操作行为的数据,在早期的互联网产品中,用户登陆系统的凭证都是由cookie来进行记录的,但是由于存储在客户端的(本机的电脑),所以是不安全的,基本目前登录认证的凭证不会再使用cookie的技术了

    session:由于cookie是存储在客户端的,并不安全,所以session是把登录成功后的数据存储在服务端

    token:本质是session的原理,可以理解为一个令牌,每次登录成功后,返回的token都是随机的字符串,通过jwt技术来实现

    二、session流程

    1、客户端输入账户和密码,点击登录

    2、登陆成功后,会在服务端把用户登录成功后的信息生成一个sessionID的凭证,并且存储在服务端

    3、服务端通过响应头中的set-cookie把生成的sesson返回给客户端

    4、客户端再次查看个人主页,客户端会通过请求头中的cookie,把set-cookie返回的sessionID带上,发送给服务端

    5、服务端接收到客户端发送的sessionID,和存储在服务端的sessionID做一个对比

    6、如果对比一致,用户可以继续访问系统的任何功能;如果对比不一致,立刻跳转到登陆的页面

     实战:一品威客

    三、token流程

    1、客户端输入账户和密码,点击登录

    2、登陆成功后,会在服务端把用户登陆成功的信息生成一个Token的凭证,同时存储在服务端

    3、服务端会通过响应数据或者响应头中的set-cookie返回给客户端

    4、那么客户端再次向服务端发送请求,会在请求参数或者请求头中的Authuration中带上返回来的token发送给服务端

    5、服务端接收到客户端发送的Token,和存储在服务端的Token做一个对比

    6、如果对比一致,用户可以继续访问系统的任何功能,如果对比不一致,立刻跳转到登录的页面

    实战:考虫

    四、 HTTPS

    1、HTTP的协议是存在缺陷的,这些缺陷主要为

          1)通信内容是明文,内容可能被第三方获取到

          2)不验证通信方的身份信息,容易被伪装

          3)无法证明请求头的完整性

    基于HTTP存在这些缺陷,也就有了HTTP的协议,我们可以把HTTPS汇总为:HTTPS=HTTP+加密+认证+完整性保护

    由于这样一层的设计,相对来说还是比较安全的,HTTPS不是全新的协议,他只是HTTP的协议基础上新增SSL和TLS。我们知道HTTP是和TCP直接通信,那么在HTTPS中,HTTP先和SSL通信,SSL再和TCP来进行通信

    2、HTTP认证体系HTTP/1.1版本中,使用的认证方式具体为

          BASIC认证是基于认证DIGEST认证,也就是摘要认证SSL客户端认证FormBase认证,类似于表单认证

    我们使用的微信是auth2.0的认证体系

    五、BASIC

    1、BASIC

    基于认证采用Base-64编码方式,但不是加密的处理方式,不需要附加任何信息就可对其进行解码。所以在HTTP等非加密通信的线路上进行BSCIC认证的过程中,很容易被人进行获取信息,安全体系不够高

    2、DIGEST

    DIGEST的认证体系是为了解决BASIC的缺陷之一的,也是采用质询/响应的模式,但是不会直接发送明文密码。所谓质询/响应模式指的是一开始一方先发送认证要求给另外一方,接着使用从另一方那接受到的质询计算生成响应码,最后将响应码返回给对方进行认证的方式

    实战:页面提示401状态

  • 相关阅读:
    PHP数据库备份文件分卷导入的实现思路
    用delphi如何实现启动停止windows服务
    【创意logo】第23个世界无烟日 让烟草远离女性
    修改“windows xp资源管理器”的默认打开路径
    PHP百行代码快速构建简易聊天室
    简单的方法实现判断Mysql内某个字段Fields是否存在
    Blackhand的插件管理部分
    PHP 与 ASP.NET 正面交锋
    C语言运算符
    功能齐全的发送邮件类
  • 原文地址:https://www.cnblogs.com/Kaylee/p/15764988.html
Copyright © 2011-2022 走看看