一、概述

1.1、密码学要解决的三大问题

  • 加密、防止被窃听

  • 验证通信人的身份

  • 内容没有被篡改

1.2、Http的缺点

http传输信息是不加密的,因此密码学要解决的三大问题它都存在

image.png

1.3、常见加密方式

在学习HTTPS加密方式之前,有必要了解几种常见的加密方式,如:

  • 对称加密
  • 非对称加密

二、常见加密方式

2.1、对称加密

2.1.1、对称加密精要

通信双方使用同一个秘钥,进行加密解密数据

2.1.2、图解具体实现

image.png

2.1.3、优缺点

【优势】

计算量小、加密速度快、加密效率高

【弊端】

用户拿到秘钥即可随意获取和修改传输内容(不安全)

2.2、非对称加密

2.2.1、非对称加密精要

传输双方均有自己的一对密钥(也就是双方每方均有:公、私密钥各一把,双方加起来共4把),使用公钥加密的只能用私钥解密,使用私钥加密的数据只能用公钥解密。

因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。

2.2.2、图解具体实现

image.png

2.2.3、优缺点

【优势】

比对称加密安全性高

【弊端】

传输公钥时,公钥被替换,则可以随意获取和修改传输内容

三、证书

3.1、概述

  • 非对称加密的核心问题

非对称性加密之所以不安全,是应为客户端不知道,这把公钥是不是服务器的。因此,我们需要找到一种策略来证明这把公钥就是服务器的,而不是别人冒充的。

  • 证书

证书是需要申请的,并由专门的数字证书认证机构(CA)通过非常严格的审核之后颁发的电子证书 (当然了是要钱的,安全级别越高价格越贵)。

颁发证书的同时会产生一个私钥和公钥。私钥由服务端自己保存,不可泄漏。公钥则是附带在证书的信息中,可以公开的。证书本身也附带一个证书电子签名,这个签名用来验证证书的完整性和真实性,可以防止证书被篡改

3.2、查看网站证书

Chrome 浏览器点击地址栏锁标志再点击证书可以看到证书详细信息

image.png

3.3、证书验证失败/证书过期

image.png

四、Https加密方式

4.1、Https加密精要

采用非对称加密方式发送对称加密的秘钥,采用证书判定公钥是不是服务器的,采用对称加密的方式传输数据。

4.2、图解具体实现

image.png