HTTPS认证过程总结

858 阅读2分钟

 一、常见的加密算法

1、对称加密简介

​ 采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种 加密方法称为对称加密,也称为单密钥加密。它要求发送方和接收方在安全通信之前,商定一个密钥。对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都可以对他们发送或接收的消息解密,所以密钥的保密性对通信的安全性至关重要。

​ 基于“对称密钥”的加密算法主要有DES、TripleDES、RC2、RC4、RC5和Blow

2、对称加密优缺点

优点:算法公开、计算量小、加密速度快、加密效率高,在保证密钥不泄露情况下加密的数据是很难被破解的。

缺点:需要管理和分发密钥比较困难,不够安全。在使用对称加密算法时,发送方和接收方必须商定好唯一密钥

且必须保管好,一旦密钥泄露加密信息就变得不安全了。

3、非对称加密简介

​ 非对称加密之所以不对称,指的就是加密用一个密钥,而解密的时候用的是另外一个密钥。 两个密钥都可以实现加密数据,而解密就需要相互解密即一个被一个密钥加密过的数据只有另一个密钥可以解密。

主要算法:RSA、Elgamal、背包算法、Rabin、HD,ECC

4、非对称加密优缺点

优点:安全性更高,两个密钥,私钥自己保存,公钥时公开的任何人都可以获取

缺点:加密和解密花费时间长、速度慢,只适合对少量数据进行加密,一对公私钥只能保障单向通信的数据安全。

5、对称加密+非对称加密优缺点

混合加密的的优点:集合合了对称加密和非对称加密优点

缺点:不能防范中间人攻击

中间人攻击过程:中间人在客户端访问网站时冒充目标网站,让客户误认为自己是在和目标网站进行通信,中间人在和客户端建立通信同时也会和目标服务器建立正常的通信并将客户端的请求转发的目标服务器,此时中间人不但知道自己和客户端通信的密钥K,也知道和目标服务器的密钥KK,此时中间人就可以在转发客户端请求时修改请求参数以达到自己的目的。

二、HTTPS认证过程

1、客户端向服务器请求CA证书(此处还涉及到数字签名)

2、客户端验证CA证书是否为合法证书

(操作系统内置了权威认证机构的CA与获取的证书进行对比,验证证书是否被修改过)

3、如果找不到或者验证不通过则可能是非法证书,一般会给出提示或者直接屏蔽掉

4、如果是合法的,就使用对应CA的公钥解密出服务器的公钥

5、客户端生成一个随机字符串K作为与服务通信的密钥并使用服务器的公钥加密后发给服务器

6、服务端接收到之后使用私钥解密出随机字符串K并校验

7、服务器通知客户端可以使用字符串K作为对称加密的密钥进行通信

8、此时客户端与服务端之间的通信就使用对称加密算法密钥就是K

欢迎大家关注我的订阅号,会定期分享一些关于软件测试相关的文章,有问题也欢迎一起讨论学习!
在这里插入图片描述

\