HTTPS性能优化原理与实践——如何优化HTTPS( 四 )

  • 更好的性能: ECC加密算法需要较短的密钥长度来提供更好的安全,例如,256位的ECC密钥加密强度等同于3072位RSA密钥的水平(目前普通使用的RSA密钥长度是2048位) 。其结果是你以更低的计算能力代价得到了更高的安全性 。经国外有关权威机构测试,在Apache和IIS服务器采用ECC算法,Web服务器响应时间比RSA快十几倍 。
  • 更大的IT投资回报:ECC可帮助保护您的基础设施的投资,提供更高的安全性,并快速处理爆炸增长的移动设备的安全连接 。ECC的密钥长度增加速度比其他的加密方法都慢(一般按128位增长,而 RSA则是倍数增长,如:1024 –2048--4096),将延长您现有硬件的使用寿命,让您的投资带来更大的回报 。
  • 不过使用ECC证书有两个问题需要注意:
    1、不是所有类型证书都支持ECC,一般需要商业证书的增强版本中才支持
    2、一些旧的设备或浏览器不支持ECC,可能需要ECC+RSA双证书的模式来使用
    HTTPS性能优化原理与实践——如何优化HTTPS

    文章插图
     
    BrotliBrotli是google于2015年9月推出的无损压缩算法,Brotli通过变种的LZ77算法、Huffman编码以及二阶文本建模等方式进行数据压缩,与其他压缩算法相比,它有者更高的压缩效率 。
    更具Google发布的报告指出,Brotli有一下特点:
    • 针对常见的 Web 资源内容,Brotli 的性能相比 Gzip 提高了 17-25%;
    • 当 Brotli 压缩级别为 1 时,压缩率比 Gzip 压缩等级为 9(最高)时还要高;
    • 在处理不同 HTML 文档时,Brotli 依然能够提供非常高的压缩率 。
    Brotli的支持必须依赖HTTPS,nginx支持Brotli必须编辑添加brotli模块
    brotli模块源码地址https://github.com/eustas/ngx_brotli.git,下载之后,在nginx编译的时候通过编译参数--add-module=/path/to/ngx_brotli进行编译添加 。添加之后通过配置文件中添加配置启用brotli
    HTTPS性能优化原理与实践——如何优化HTTPS

    文章插图
     
    在开发者工具中查看headers:
    HTTPS性能优化原理与实践——如何优化HTTPS

    文章插图
     
    另外还有一些常用的优化配置,比如启用HSTS
    add_header Strict-Transport-Security max-age=15768000
    设置缓存连接凭据
    ssl_session_cache shared:SSL:20m; ssl_session_timeout 60m;
    转自:https://mp.weixin.qq.com/s/vcBEVaSfhrNZ3dYPMZSUQw

    【HTTPS性能优化原理与实践——如何优化HTTPS】


    推荐阅读