前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >浅谈HTTPS与HTTP的区别

浅谈HTTPS与HTTP的区别

作者头像
@零一
发布2021-01-29 16:22:03
5520
发布2021-01-29 16:22:03
举报
文章被收录于专栏:前端印象前端印象

浅谈HTTPS与HTTP的区别

引言

因为我的上一篇文章讲解了一下HTTP协议到底是什么, 所以我们这篇文章就来讲解一下HTTPS协议是什么?它到底跟HTTP协议有什么区别。

还有不明白HTTP协议的小伙伴可以去查看一下我的上一篇文章,先简单了解一下,下面放上链接——浅谈HTTP协议的作用过程

  • 公众号:前端印象
  • 不定时有送书活动,记得关注~
  • 关注后回复对应文字领取:【面试题】、【前端必看电子书】、【数据结构与算法完整代码】、【前端技术交流群】

正文

如果有小伙伴已经了解了HTTPS的定义及其请求过程了,可以直接从第三部分开始看

一、HTTPS的定义

HTTPS叫做安全超文本传输协议 。我们能清楚地看到,HTTPS比HTTP多了一个S,这个S就是 TLS/SSL ,TLS/SSL 就是用于加密传输 、身份验证的网络协议。所以在中文名上,HTTPS也比HTTP多了一个安全, 这说明HTTPS协议比HTTP协议更安全。

接下来我们来看一张图

在这里插入图片描述
在这里插入图片描述

HTTP和HTTPS都是用来客户端与服务器端传递信息的, 只不过HTTP是没有加密的,是以明文的方式传递信息; 而HTTPS是会经过加密的,以密文的方式传递信息,相对比较安全。

那么HTTPS是如何加密的呢?它的请求过程是怎么样的?我们来看下一部分。

二、HTTPS请求过程

首先用一张图,让大家大致了解一下HTTPS的请求过程

在这里插入图片描述
在这里插入图片描述

HTTPS协议请求的过程如下: 客户端发送https请求 => 客户端与服务器建立SSL连接,服务器返回证书公钥给客户端 => 客户端验证证书公钥,若验证通过,则利用证书公钥随机生成一个密钥,并发送给服务器 => 服务器接收密钥,并用服务器自己的私钥解密密钥 => 客户端与服务器端传递信息就用密钥来加密

接下来我们来形象地分步骤讲解一下HTTPS协议请求的过程:

  • 客户端与服务器建立SSL连接,服务器返回证书公钥给客户端

客户端发送https请求, 首先要与服务器建立SSL连接,简单来说就是客户端和服务器端准备商量,等会要用什么方式来给我们传递的信息加密,这样做一个统一。 那么客户端和服务器端要商量加密方式的话,就先由服务器端来提议,所以这时服务器先返回一个证书公钥给客户端, 这个证书公钥就相当于服务器先提出的加密方式的意见。

  • 客户端验证证书公钥

服务器已经提出了自己对于加密方式的意见(返回的证书公钥),客户端需要针对这个意见做个判断,判断是否同意这种加密方式(验证公钥的颁发机构 、过期时间等等),若不同意,则发起抗议(弹出警告框);若同意,则(客户端利用证书公钥加密生成一个随机值生成密钥),然后发送给服务器。

  • 服务器接收密钥,并用服务器自己的私钥解密密钥

服务器接收到客户端传过来的密钥,该密钥是客户端按照服务器传过去的证书公钥来制定的,既然证书公钥是服务器提出的,那么服务器一定知道如何解密这个密钥(用证书私钥解密这个密钥),服务器用证书私钥一解密,就知道客户端提出的暗号是什么了, 那么此时,这个暗号就只有客户端和服务器端知道了,他们之间传递信息,就只需要对暗号就可以了。

三、HTTPS与HTTP的区别

https 与 http 的区别如下:

  1. http 是明文传输的 ; https 是安全的加密传输
  2. http 的默认端口是80 ; https 的默认端口是443
  3. https 需要申请证书 ; http 不需要

四、HTTPS的优缺点

  • HTTPS的优点
  1. https 是加密传输协议, 他具有一定的安全性,可以在一定程度上保证在传递信息的过程中,信息不被盗取 、修改。
  2. https 协议增加了攻击者的攻击成本
  • HTTPS的缺点
  1. https 也不是绝对的安全,在极少数情况下,还是会有信息被盗取的危险。
  2. https 的请求过程比较长,从而使得客户端接收到请求的数据时间变长,用户体验可能会差一点点
  3. https 协议需要先申请证书,证书是需要花钱购买的,增加了开销。

结束语

好了,对于HTTPS的简单讲解就到这里了,希望对大家有所帮助,喜欢的点个关注点个赞,我是前端Lpyexplore。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-06-01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 浅谈HTTPS与HTTP的区别
  • 引言
  • 正文
    • 一、HTTPS的定义
      • 二、HTTPS请求过程
        • 三、HTTPS与HTTP的区别
          • 四、HTTPS的优缺点
          • 结束语
          相关产品与服务
          SSL 证书
          腾讯云 SSL 证书(SSL Certificates)为您提供 SSL 证书的申请、管理、部署等服务,为您提供一站式 HTTPS 解决方案。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档