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

我在之前的文章中给大家介绍过HTTP,接下来给大家详细的介绍一下HTTPS

HTTPS相当于HTTP的孪生兄弟~,HTTPSHTTP的基础之上,引入了一个加密层。

在上篇介绍HTTP的文章中,和大家介绍过运营商劫持事件,可能很多小伙伴没看过之前的文章,在这里就给大家再简单的介绍一下

大家有时候在网站上下载东西的时候应该遇到过这样一种情况吧,明明我点击下载的时候是正经的程序,却老是下载到别的乱七八糟的软件。
在这里插入图片描述
在这里插入图片描述

之前介绍的HTTP是明文传输,传输的数据,是容易被获取的,也容易被篡改的,引入HTTPS ,对数据加密,也就能更好的保护数据的安全。

加密是一个非常复杂的事情,计算机领域中专门有一个学科,叫做“密码学”,在密码学真的成为一个现代学科之前,其实还是比较单纯简单的,那时候基本上都是“古典加密”。密码学与其说是一个和计算机相关的学问,不如说是一个和数学相关的学问。
基本的流程大概就是有三个部分:
明文:要传输的原始信息
密文:整个奏折~~即使被别人获取到了,拿着密文,别人也看不出有啥毛病
密钥:通过密钥,就可以将明文转换成密文,或者把密文转换成明文。

加密和解密这件事情,本身是一个和数学密切相关的事情,咱们此处,只能简单讨论“流程”,无法讨论加密解密的“实现细节”,加密之后,也不是就绝对安全,只能说破解起来计算量很大,成本很高。有些数据经过加密之后,哪怕使用当前最牛逼的计算机,破解起来也需要个几十年甚至上百年,这种我们就默认为是安全的~只要破解成本高于数据本身的价值,就是安全的,就比如你印假钞,造一个100块钱的假钞,但是你实际的成本是110,你说你还会去造吗?

HTTPS中引入的加密层,称为SSL/TLS
在SSL里面,涉及到的加密操作,其实主要是两种方式
1.对称加密:使用同一个密钥,既可以进行加密操作,也可以进行解密操作。
2.非对称加密~~

我们先来看看对称加密:

在这里插入图片描述
对称性加密可靠性不强,很容易被黑客攻击,因为密钥很容易就被黑客拿到了。
在这里插入图片描述
经过上面的简单分析,就明确了,使用对称加密,最大的问题,在于说密钥得能够传递过去,如果明文传递,是不行的,必须针对这个密钥再进行加密~~这里解决问题的关键,就是需要引入,非对称加密了。

非对称加密:

有两个密钥,分别叫做公钥和私钥。
公钥,就是人人都能获取到的
私钥,就是只有自己才知道的~
这样的话,我们就可以使用公钥来加密,再使用私钥来解密。或者是使用私钥来加密,使用公钥来解密,
基于非对称加密,就可以让服务器自己生成一对公钥和私钥,公钥发出去(人人都能拿到),私钥自己保存,客户端生成一个对称密钥,客户端就可以使用服务器的公钥,对对称的密钥进行加密,然后把数据传给服务器,服务器再通过私钥进行解密~
在这里插入图片描述
现在可能有的小伙伴就在想了既然非对称加密这么好使,还要对称加密干啥呢?直接非对称加密一把梭不就好了吗?
但是实际现实中,对称加密的计算开销《《 对称加密的~
如果只是少来少去的用用这个非对称加密,成本还好,但是如果所有的数据都走非对称加密,这个事成本就太大了

中间人攻击

上述的非对称加密除了多花开销以外,貌似就很完美了,其实不然,这里还存在一个非常巨大的漏洞,服务器要把自己的公钥放回给客户端,在这个操作中,就可能会涉及到一个非常经典的”中间人攻击“
在这里插入图片描述
既然存在中间人攻击,如何解决这个问题??关键要点,得让客户端能够确认,当前得公钥确实是来自于服务器,而不是黑客伪造的~~

想想看,生活中其他的场景是怎么样验证的??例如,你去网吧上网或者去住小旅馆,需要进行身份登记,如何验证你的身份?显然是身份证呀,网管就会拿着你的身份证刷一下,这一刷其实就是再访问公安局的相关服务器,验证你的信息,因此,就需要引入一个第三方公信机构,来证明这个公钥是一个合法的公钥~~因为我们是信任这个机构的,就像我们信任JC叔叔一样,公信机构说这个公钥ok,我们就认为这个公钥可信。
在这里插入图片描述

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-07-04 23:19:41  更:2022-07-04 23:19:52 
 
开发: 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年5日历 -2024/5/6 5:59:58-

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