现在的位置: 首页 > web前端 > 正文

HTTP与HTTPS有什么区别和联系?

2020年02月03日 web前端 ⁄ 共 1324字 ⁄ 字号 评论关闭

  HTTP与HTTPS有什么区别和联系?简单来说,HTTPS就是HTTP的加强版,这样子是不是好理解多了?当然啦,仔细分析下来,HTTP与HTTPS的区别和联系不止于此,下面是详细分析。

  一、HTTP和HTTPS的基本概念

  1、HTTP(HyperText Transfer Protocol:超文本传输协议)是一种用于分布式、协作式和超媒体信息系统的应用层协议。简单来说就是一种发布和接收 HTML 页面的方法,被用于在 Web 浏览器和网站服务器之间传递信息。

  HTTP默认工作在 TCP 协议 80 端口,用户访问网站http://打头的都是标准 HTTP 服务。

  HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。

  2、HTTPS(Hypertext Transfer Protocol Secure:超文本传输安全协议)是一种透过计算机网络进行安全通信的传输协议。HTTPS 经由 HTTP 进行通信,但利用 SSL/TLS 来加密数据包。HTTPS 开发的主要目的,是提供对网站服务器的身份认证,保护交换数据的隐私与完整性。

  HTTPS默认工作在 TCP 协议443端口,它的工作流程一般如以下方式:

  1、TCP 三次同步握手

  2、客户端验证服务器数字证书

  3、DH 算法协商对称加密算法的密钥、hash 算法的密钥

  4、SSL 安全加密隧道协商完成

  5、网页以加密的方式传输,用协商的对称加密算法和密钥加密,保证数据机密性;用协商的hash算法进行数据完整性保护,保证数据不被篡改。

  二、HTTP和HTTPS的联系:

  一般情况,HTTP 和 HTTPS 是相同的,因为采用的基础协议一样。作为 HTTP 或 HTTPS浏览器,设立连接到 Web 服务器指定的端口,当服务器接收到请求,通过资源定位器 URI 模式,资源可以被唯一指定,此时便返回一个状态码以及响应消息,这个响应消息可能是用户需要的信息信息、也有可能是指示某个错误信息(由http协议状态码得到某种 )。

  三、HTTP与HTTPS区别

  HTTP明文传输,数据都是未加密的,安全性较差,HTTPS(SSL+HTTP) 数据传输过程是加密的,安全性较好。

  使用 HTTPS 协议需要到 CA(Certificate Authority,数字证书认证机构) 申请证书,一般免费证书较少,因而需要一定费用。证书颁发机构如:Symantec、Comodo、GoDaddy 和 GlobalSign 等。

  HTTP页面响应速度比 HTTPS 快,主要是因为 HTTP 使用 TCP 三次握手建立连接,客户端和服务器需要交换 3 个包,而 HTTPS除了 TCP 的三个包,还要加上 ssl 握手需要的 9 个包,所以一共是 12 个包。

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

  HTTPS其实就是建构在 SSL/TLS 之上的 HTTP 协议,所以,要比较HTTPS比HTTP要更耗费服务器资源。

  以上就是HTTP与HTTPS的区别和联系,大家都弄清楚了吗?

抱歉!评论已关闭.