当前位置: 首页 > web >正文

HTTPS优化简单总结

性能损耗

  1. 选择椭圆曲线,并生成椭圆曲线的计算耗时
  2. CA证书验证的耗时
  3. 计算pre-master的耗时

硬件优化

HTTPS是计算密集型任务,不是IO密集型任务

所以硬件最好买更高级的CPU,而不是网卡,磁盘


协议优化

  1. ECDHE代替RSA,因为ECDHE可以在 TLS 协议的第 3 次握手后,第 4 次握手前,发送加密的应用数据
  2. 强制选择性能高的椭圆曲线
  3. 安全性要求不高时,强制选择性能高的对称加密算法
  4. TLS1.2升级成TLS1.3,TLS 1.3第一次握手把 Hello 和公钥交换这两个消息合并成了一个消息,于是这样就减少到只需 1 RTT 就能完成 TLS 握手

证书优化

  1. 证书传输优化:减少证书大小,降低网络IO负担。对于服务器的证书应该选择椭圆曲线(ECDSA)证书而不是 RSA 证书,因为在相同安全强度下,ECC 密钥长度比 RSA 短的多
  2. 证书验证优化:证书验证需要访问CA然后下载官方数据
    从 使用证书吊销列表CRL,下载一大个列表再判断证书有效性

    OCSP在线证书协议实时查询每一张证书的有效性
  3. CA验证网络开销优化:服务器向 CA 周期性地查询证书状态,获得一个带有时间戳和签名的响应结果并缓存它

会话复用

TLS握手的目的就是为了算出最终的会话密钥,那把会话密钥缓存起来就好了

Session ID:

SessionID为key,会话密钥为Value缓存到服务器里面

缺点:

  1. 客户端增多,服务器内存压力增大
  2. 现在是多节点负载均衡的,服务器缓存可用性不高

Session Ticket:
客户端缓存【加密的会话密钥Ticket】,客户端再次连接服务器时,客户端会发送 Ticket

服务器解密后就可以获取上一次的会话密钥,然后验证有效期,如果没问题,就可以恢复会话了

对于集群服务器的话,要确保每台服务器加密「会话密钥」的密钥是一致的,这样客户端携带 Ticket 访问任意一台服务器时,都能恢复会话

Session ID 和 Session Ticket 都不具备前向安全性,所以会话复用要有一定的时间限制

因为一旦加密「会话密钥」的密钥被破解或者服务器泄漏「会话密钥」,前面劫持的通信密文都会被破解


什么是重放攻击

重放攻击的危险之处在于,如果中间人截获了某个客户端的 Session ID 或 Session Ticket 以及 POST 报文

而一般 POST 请求会改变数据库的数据

中间人就可以利用此截获的报文,不断向服务器发送该报文,这样就会导致数据库的数据被中间人改变了,而客户是不知情的

避免重放攻击的方式就是需要对会话密钥设定一个合理的过期时间

http://www.xdnf.cn/news/20550.html

相关文章:

  • Unity UI 中最干净的点击区域实现:RaycastZone 完整实战讲解
  • Knex 和 Schema 是什么?
  • 从 “Hello AI” 到企业级应用:Spring AI 如何重塑 Java 生态的 AI 开发
  • 像素图生成小程序开发全解析:从图片上传到Excel图纸
  • Spring Cloud Alibaba快速入门02-Nacos(上)
  • java社交小程序源码支持APP多端springboot部署与功能模块详解
  • *和->的区别
  • FC平台安装Windows Server2016并连接V6存储
  • C++并发编程指南 std::async 介绍使用
  • 使用 n8n 结合通义千问大模型构建业务数据库分析智能体
  • %前置模糊查询优化
  • shell脚本作业
  • 4.6 多个光源
  • 【数论】P10580 [蓝桥杯 2024 国 A] gcd 与 lcm|普及+
  • MapStruct详解
  • Linux RCU (Read-Copy-Update) 机制深度分析
  • leetcode 912 排序数组(快速排序)
  • 【CV】Opencv图像处理——①几何变换 (1)
  • 神马 M66S+ 282T矿机参数详解:SHA-256算法与Hydro冷却技术
  • 贪心算法应用:食品生产线排序问题详解
  • 继承详解(c++)
  • langchain源码概览
  • Java全栈开发面试实录:从基础到实战的深度解析
  • 【牛客刷题-剑指Offer】BM18 二维数组中的查找:一题四解,从暴力到最优
  • Python元组:不可变但灵活的数据容器
  • LwIP入门实战 — 3 以太网外设 (ETH)
  • 什么是JQ
  • solidity函数篇2
  • Netty从0到1系列之EventLoop
  • 魅族 Note 16 解锁 BL 及 Root 官方刷机包下载Flyme 12.0.1.5A 型号 M521Q