zoukankan      html  css  js  c++  java
  • HTTP、HTTPS 了解一下

    什么是HTTP?

    超文本传输协议,是一个基于请求与响应,无状态的,应用层的协议,常基于TCP/IP协议传输数据,互联网上应用最为广泛的一种网络协议,所有的WWW文件都必须遵守这个标准。设计HTTP的初衷是为了提供一种发布和接收HTML页面的方法。

    缺点:

    1,通信使用明文,内容可能被窃听(重要密码泄露)

    2,不验证通信方身份,有可能遭遇伪装(跨站点请求伪造)

    3,无法证明报文的完整性,有可能已遭篡改(运营商劫持)

    发展历史

    版本 产生时间 内容 发展现状
    HTTP/0.9 1991年 不涉及数据包传输,规定客户端和服务器之间通信格式,只能GET请求 没有作为正式的标准
    HTTP/1.0 1996年 传输内容格式不限制,增加PUT、PATCH、HEAD、 OPTIONS、DELETE命令 正式作为标准
    HTTP/1.1 1997年 持久连接(长连接)、节约带宽、HOST域、管道机制、分块传输编码 2015年前使用最广泛
    HTTP/2 2015年 多路复用、服务器推送、头信息压缩、二进制协议等 逐渐覆盖市场

     

     

     

     

    多路复用:通过单一的HTTP/2连接请求发起多重的请求-响应消息,多个请求stream共享一个TCP连接,实现多留并行而不是依赖建立多个TCP连接。

    HTTP报文格式

    什么是HTTPS?

      即http+加密+认证+完整性保护=https。

    《图解HTTP》这本书中曾提过HTTPS是身披SSL外壳的HTTP。HTTPS是一种通过计算机网络进行安全通信的传输协议,经由HTTP进行通信,利用SSL/TLS建立全信道,加密数据包。HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性。

    PS:TLS是传输层加密协议,前身是SSL协议,由网景公司1995年发布【为了解决http是明文带来的问题】,1999年IETF将SSL标准化,改名为TLS,所以这两者其实就是同一种协议。

    SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层:
    SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。
    SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。


    https并非应用层的一种新协议,只是http通信接口部分用ssl/tls协议代替而已。通常http直接和tcp通信,当使用ssl时则演变成先和ssl通信,再由ssl和tcp通信。
    所谓https,其实就是身披ssl协议这层外壳的http

    https与http的区别

    1,https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。

    2,http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。

    3,http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

    4,http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

    问题:对称秘钥加密和非对称秘钥加密的区别

    问题:SSL/TLS协议的基本原理。

    参考:https://www.cnblogs.com/jesse131/p/9080925.html

    参考:https://blog.csdn.net/xiaoming100001/article/details/81109617

  • 相关阅读:
    pycharm连接远程服务器(拉取版本)
    Xftp5中文文件乱码
    pycharm连接远程服务器
    Centos中使用virtualenvwrapper
    VNC连接centos图形化界面
    PIP设置镜像源
    Java实现地理坐标判断
    词袋模型和句子相似度
    词向量入门
    《深入理解 Java 虚拟机》读书笔记:类文件结构
  • 原文地址:https://www.cnblogs.com/hfeng007/p/11446460.html
Copyright © 2011-2022 走看看