IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> HTTPS验证流程 -> 正文阅读

[网络协议]HTTPS验证流程

HTTPS验证流程

1.HTTPS简介

? 由于HTTP在网络中是明文传输的,所以数据在传输过程中很容易被截取,这时就会有一些加密算法及方式出来,比如对称加密、非对称加密等方式,在HTTPS中加密其实是在TCP和HTTP之间加了一层SSL/TLS协议用于加密。
在这里插入图片描述

2.对称加密

2.1 对称加密的工作流程

? 对称加密其实就是发送方和接收方都拥有一把相同的密钥,发送方在发送之前会对数据通过密钥进行加密,然后传输到接收方,接收方会通过密钥进行解密获取数据。

? 在浏览器和服务器之间交互也是这样的,服务端拥有这把密钥,客户端需要请求服务端获取这个密钥,获取到密钥之后就会按照对称密钥加密流程进行工作,以下为正常运行过程:
在这里插入图片描述

2.2 对称加密的问题

? 在对称加密中,浏览器需要先向服务器请求获取密钥,在获取密钥的过程中就需要传输密钥,而HTTP本身就是铭文的,密钥就会暴露在网络传输当中,黑客就会截取这个密钥窃取数据甚至篡改数据,如下图:
在这里插入图片描述

3.非对称加密

3.1 非对称加密的工作流程

? 非对称加密是有两个密钥,分别是公钥私钥,公钥会暴露在网络传输当中,而私钥只能存在于发送方,并且非对称加密中的加密及解密规则如下:

  • 私钥加密,公钥可以解密
  • 公钥加密,私钥可以解密
  • 私钥加密,私钥可以解密

【注意】:公钥加密,公钥不可以解密

? 在浏览器和服务器中,公钥和私钥都在服务器中,浏览器需要先请求服务器获取公钥,服务器发送数据通过私钥进行加密,浏览器通过公钥进行解密获取数据。
在这里插入图片描述

3.2 非对称加密的问题
3.2.1 效率低

? 在非对称加密中需要使用两个密钥,公钥和私钥,在非对称加密中效率就会变得很低,所以一般会选择先用非对称加密传的形式传输对称加密的密钥,后面使用对称加密来传输。

3.2.2 不安全

? 在非对称加密中,服务器公钥和服务器私钥都存在于服务器端,所以客户端先要请求服务器获取服务器公钥,但是,HTTP是明文传输的,所以在获取服务器公钥时会被黑客截取,造成安全问题,如下图:
在这里插入图片描述

4.CA机构

? 在非对称加密中,安全问题主要是服务器如何向客户端传输服务器公钥,所以就有了CA机构,这些机构是被信任的,CA机构也是拥有其CA公钥及CA私钥的,并且CA公钥存在于操作系统内,即当安装操作系统时就会带有CA公钥,因此会使用CA机构来进行非对称加密的验证,如下图:
在这里插入图片描述

4.1 证书

? 服务器将自己的服务器公钥给CA机构,CA机构会使用服务器公钥及服务器信息制作证书,证书中几个重要信息如下:

  • 数字签名:CA机构使用CA私钥对服务器公钥进行加密,生成数字签名

  • 摘要:CA机构使用hash算法对服务器公钥进行加密,生成摘要

  • 哈希算法:生成摘要的哈希算法也保存在证书中

    证书制作完成之后,CA机构会使用CA私钥对证书进行加密,将加密后的证书发送给服务器,流程如下图:
    在这里插入图片描述

4.2 服务器和客户端验证过程

? 有了CA机构后,服务器就会把服务器公钥存在证书中,通过证书进行传输,客户端拿到证书之后会对其进行验证,验证过程如下:

  1. 使用CA公钥对证书解密,获取证书中的信息
  2. 使用CA公钥对数字签名解密,获得服务器公钥
  3. 使用第二步获得的服务器公钥通过哈希算法加密,生成摘要
  4. 将第三步的摘要和证书中的摘要进行比对验证
  5. 验证成功之后,客户端会随机生成字符串(即对称密钥),通过服务器公钥进行加密成密文,发送给服务器
  6. 服务器使用服务器私钥进行解密,获得对称密钥,此后发送数据就是用这个对称密钥加密
    在这里插入图片描述

5.HTTPS真的安全吗?

在这里插入图片描述

? 根据上图可以看到最开始访问的jd.com是一个http请求,会被重定向到https的一个网站,那如果在重定向之前拦截这个请求,然后仿照一个和京东一模一样的网站,是不是就可以钓鱼了呢?

【注意】:对于本文的任何意见和建议,欢迎大家在评论区批评指正。

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-04-15 00:40:35  更:2022-04-15 00:41:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 3:34:33-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码