上期我们说到对称加密算法
AES DES
目前使用的几乎都是AES-GCM(DES安全性太差基本处于废弃状态)
那除了这两种还有其他的吗?
答案是有的
ChaCha20
那这种算法与AES-GCM相比有什么特别之处呢?
上图展示的是CHACHA20-Poly1305 与 AES-GCM 两种对称加密算法的加密效率。
从这张图中我们可以看到 ChaCha20的加密速度比AES快了差不多3倍左右。那为什么现在的网站打开都基本上AES-GCM呢?
仔细看图我们可以看到,这是基于ARM架构的移动端CPU的加密速度。CHACHA20虽然在移动端CPU架构上加解密速度非常快,但是在传统>的x86架构上却比AES慢。再加上支持CHACHA20的证书比较难申请的到。所以导致了现在的网站打开都基本上AES-GCM。
不过如果业务主要针对是移动端并且服务端硬件配置比较好且申请到了支持CHACHA20的证书。由于该算法在移动端加解密速度非常快。
所以能够得到较好的用户体验。(虽然从运维的角度来说应该尽量降低服务器的负载,将负载转移到用户端比较好。主要还是看如何取
舍)
关于TLS1.3
首先我们了解下正常的https请求的流程: