===========================================================

如果有小伙伴已经了解了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 协议增加了攻击者的攻击成本

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

最后

由于篇幅限制,pdf文档的详解资料太全面,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!有需要的程序猿(媛)可以帮忙点赞+点击【学习资料】即可免费领取!

【学习资料】](https://bbs.csdn.net/topics/618191877)即可免费领取!

[外链图片转存中…(img-GrLJlB7B-1712374006014)]

[外链图片转存中…(img-LaRLGc7d-1712374006014)]

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐