(网络)应用层:https协议解析 (https加密流程,详细图解)

这次我们来学习https协议,来看看他如何提高安全性的。

文章目录

  • https协议简介
  • 身份验证
  • 加密传输
    • 对称加密
    • 非对称加密
    • 混合加密



https协议简介

我们知道http是一个字符串明文协议,通信容易被监听劫持,使用起来不安全,因此我们就像加密来提高安全性。

于是https协议诞生了。

https协议并不是一个新的协议,而是加密后的http协议,这里是s指的是ssl(Secure Sockets Layer 安全套接字协议)

那么https加密流程是什么呢?我们接着说。

https加密流程主要分为两个方面
1. 身份验证
2. 加密传输

接下来我们逐个来说


身份验证

身份验证是干嘛呢?

其实就是需要保证与你通信的服务器是否是你想通信的服务器,如果身份不明那势必没有安全一说。

比如我想访问淘宝,但是中间被黑客拦截,黑客伪装了淘宝服务器与我进行通信,那我就处于非常危险的情况之中。

那我们要如何认证呢?

思想:找一个第三方权威机构(双方都信任的)进行身份验证

实现:CA证书(电子认证服务)
需要被验证身份的一方去权威机构获取一个CA证书,里面包含权威机构信息、当前机构信息、有效期、公钥等等信息

在连接建立完毕通信前,需要被认证身份的一方将证书发送给对方。
对方收到证书,解析证书,得到各个元素

  1. 判断权威机构是否是自己信任的机构
  2. 判断现在与我通信的服务器是否是我想要通信的服务器
  3. 如果是,则向权威机构进行当前通信服务器的身份验证
  4. 验证通过后,再进行通信

加密传输

刚刚我们进行的是身份验证,不过就算身份验证通过,你也无法保证你的通信不被黑客监听窃取。

所以我们要对传输的数据进行加密,就算数据被劫持,他也无法对数据进行解密,也无法获取我们的通信数据。

加密过程分为三种:对称加密、非对称加密、混合加密

接下来我们逐个来看

对称加密

对称加密:通信双方采用相同的秘钥进行通信,使用相同的秘钥进行加解密

优点:加解密效率高
缺点:双方进行秘钥协商时,秘钥本身可能被劫持,安全度不高


非对称加密

非对称加密:加密和解密使用不同的秘钥,一方生成一对秘钥(公钥+私钥),使用公钥进行加密,私钥解密

公钥和私钥是通过RSA算法得到的,有兴趣的小伙伴可以去学习~

注意公钥和私钥是成对使用的,只有自己的私钥才能解开自己公钥加的密

通信时,把公钥传递给对方,对方发送数据时使用公钥进行加密,自己收到后使用私钥进行解密
就算中间数据被劫持,但他没有私钥无法解密,仍然是获取不了信息的。

举个栗子:
A和B通信,A生成一对秘钥,通信时A先把自己的公钥传输给B,然后B使用A的公钥对数据进行加密之后发送给A,最后A收到数据后用自己的私钥进行解密。

优点:安全性高
缺点:加解密效率低


混合加密

既然上述两种加密方法各有优劣,那我们就想把两者的优点结合起来,得到了混合加密的方法。

ssl加密采用的就是混合加密

过程:先试用非对称加密算法加密传输过程,传输过程中协商一个对称秘钥,之后的数据通信使用对称加密完成

这么做保证了对称秘钥的协商不会被劫持,往后通信使用对称加密,既保证安全,也保证了效率。

下面来个详细的图解
(网络)应用层:https协议解析 (https加密流程,详细图解)_第1张图片

你可能感兴趣的:(网络,https,网络协议,ssl,安全)