HTTPS如何优化
学习资源 小林coding 2022.4.3
HTTPS 提高了安全性 也带来了性能的消耗
HTTPS 比 HTTP 多出了TLS协议握手的过程 为了通过非对称加密握手协商或者交换出对称加密密钥 时间最长可以花费掉两RTT 接着后续传输的应用数据 都得使用对称加密密钥来加密/解密
分析性能损耗
两个环节:
- TLS协议握手过程
- 握手之后的对称报文加密传输
第一环节: TLS协议握手过程增加了网络延时 (最长2RTT)
握手过程的一些步骤也会产生性能损耗
- 对于ECDHE密钥协商算法 握手过程中客户端和服务端都需要临时生成椭圆曲线的公私钥
- 客户端验证证书时 会访问CA获取 CRL 或者 OCSP 目的验证服务器的证书是否被吊销
- 双方计算 Pre-Master -> 对称加密密钥
硬件优化
HTTPS协议是计算密集型 不是IO密集型 应该将提升方向至CPU
支持 AES-NI 特性的CPU 在指令级别 优化了AES算法 加速传输
软件优化
- 软件升级
- 协议优化
Linux内核
OpenSSL
协议优化
对密钥交换过程进行优化