HTTPS加密协议详解:HTTPS性能与优化

这篇具有很好参考价值的文章主要介绍了HTTPS加密协议详解:HTTPS性能与优化。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、HTTPS性能损耗

前文讨论了HTTPS原理与优势:身份验证、信息加密与完整性校验等,且未对TCP和HTTP协议做任何修改。但通过增加新协议以实现更安全的通信必然需要付出代价,HTTPS协议的性能损耗主要体现如下:

(1).增加延时

分析前面的握手过程,一次完整的握手至少需要两端依次来回两次通信,至少增加延时2* RTT,利用会话缓存从而复用连接,延时也至少1* RTT*。

(2).消耗较多的CPU资源

除数据传输之外,HTTPS通信主要包括对对称加解密、非对称加解密(服务器主要采用私钥解密数据);压测 TS8 机型的单核 CPU:对称加密算法AES-CBC-256 吞吐量 600Mbps,非对称 RSA 私钥解密200次/s。不考虑其它软件层面的开销,10G 网卡为对称加密需要消耗 CPU 约17核,24核CPU最多接入 HTTPS 连接 4800;

静态节点当前10G 网卡的 TS8 机型的 HTTP 单机接入能力约为10w/s,如果将所有的HTTP连接变为HTTPS连接,则明显RSA的解密最先成为瓶颈。因此,RSA的解密能力是当前困扰HTTPS接入的主要难题。

2、HTTPS接入优化

(1).CDN接入

HTTPS 增加的延时主要是传输延时 RTT,RTT 的特点是节点越近延时越小,CDN 天然离用户最近,因此选择使用 CDN 作为 HTTPS 接入的入口,将能够极大减少接入延时。CDN 节点通过和业务服务器维持长连接、会话复用和链路质量优化等可控方法,极大减少 HTTPS 带来的延时。

(2).会话缓存

虽然前文提到 HTTPS 即使采用会话缓存也要至少1*RTT的延时,但是至少延时已经减少为原来的一半,明显的延时优化;同时,基于会话缓存建立的 HTTPS 连接不需要服务器使用RSA私钥解密获取 Pre-master 信息,可以省去CPU 的消耗。如果业务访问连接集中,缓存命中率高,则HTTPS的接入能力将明显提升。当前TRP平台的缓存命中率高峰时期大于30%,10k/s的接入资源实际可以承载13k/的接入,收效非常可观。

(3).硬件加速

为接入服务器安装专用的SSL硬件加速卡,作用类似 GPU,释放 CPU,能够具有更高的 HTTPS 接入能力且不影响业务程序的。测试某硬件加速卡单卡可以提供35k的解密能力,相当于175核 CPU,至少相当于7台24核的服务器,考虑到接入服务器其它程序的开销,一张硬件卡可以实现接近10台服务器的接入能力。

(4).远程解密

本地接入消耗过多的 CPU 资源,浪费了网卡和硬盘等资源,考虑将最消耗 CPU 资源的RSA解密计算任务转移到其它服务器,如此则可以充分发挥服务器的接入能力,充分利用带宽与网卡资源。远程解密服务器可以选择 CPU 负载较低的机器充当,实现机器资源复用,也可以是专门优化的高计算性能的服务器。当前也是 CDN 用于大规模HTTPS接入的解决方案之一。

(5).SPDY/HTTP2

前面的方法分别从减少传输延时和单机负载的方法提高 HTTPS 接入性能,但是方法都基于不改变 HTTP 协议的基础上提出的优化方法,SPDY/HTTP2 利用 TLS/SSL 带来的优势,通过修改协议的方法来提升 HTTPS 的性能,提高下载速度等。文章来源地址https://www.toymoban.com/news/detail-697769.html

到了这里,关于HTTPS加密协议详解:HTTPS性能与优化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • SpringBoot + Vue2项目打包部署到服务器后,使用Nginx配置SSL证书,配置访问HTTP协议转HTTPS协议

    配置nginx.conf文件,这个文件一般在/etc/nginx/...中,由于每个人的体质不一样,也有可能在别的路径里,自己找找... 证书存放位置,可自定义存放位置 两个文件 后端配置 把.pfx拷贝到resource下,然后配置一下yml

    2024年02月02日
    浏览(75)
  • SSL/TLS协议详解 - https为什么比http更安全

    SSL/TLS是世界上应用最广泛的密码通信方法。比如,在网上商城输入信用卡卡号时,Web浏览器就会使用SSL/TLS进行密码通信。使用SSL/TLS可以对通信对象进行认证,还可以确保通信内容的机密性。TLS相当于SSL的后续版本。 SSL (Secure Sockets Layer)安全套接层协议 :由Netscape公司开发

    2024年02月05日
    浏览(50)
  • 前端面试:【网络协议与性能优化】HTTP/HTTPS、TCP/IP和WebSocket

    嗨,亲爱的Web开发者!在构建现代Web应用时,了解网络协议是优化性能和确保安全性的关键。本文将深入探讨HTTP/HTTPS、TCP/IP和WebSocket这三个网络协议,帮助你理解它们的作用以及如何优化Web应用的性能。 1. HTTP/HTTPS协议: HTTP(超文本传输协议): HTTP是用于在Web上传输数据的

    2024年02月11日
    浏览(51)
  • 什么是https 加密协议?https证书安装部署

    HTTPS协议是安全超文本传输协议,是一个安全通信通道,它基于HTTP开发用于在客户计算机和服务器之间交换信息。它使用安全套接字层(SSL)进行信息交换,简单来说它是HTTP的安全版,是使用TLS/SSL加密的HTTP协议。 HTTP协议采用明文传输信息,存在信息窃听、信息篡改和信息劫持

    2024年02月04日
    浏览(50)
  • Tomcat配置https,JAVA生成ssl证书,http和https双向配置

    1、java生成ssl证书 首先要确认环境是否安装JDK;必须安装JDK才能生成SSL证书 1.1、服务器生成证书 服务器生成证书: 使用keytool为Tomcat生成证书,假定目标机器的域名是“127.0.0.1”,keystore文件存放在“D:omcat.keystore”,口令为“123456”,validity为证书有效时间当前为90天  生成命

    2024年02月01日
    浏览(39)
  • springboot添加SSL证书,支持https与http

    将证书文件放在/resource目录下 修改配置文件

    2024年02月10日
    浏览(43)
  • http升级https图文,免费证书ssl下载安装

    登录数字证书管理服务控制台》点击 立即购买 (免费)》购买成功后》 创建证书 》 申请证书 》申请成功后》 下载证书 ***注意 **** 1.先登录阿里云官网 2.再访问该网址

    2024年02月12日
    浏览(170)
  • 【Linux 网络】 HTTPS协议原理 && 对称加密 && 非对称加密 && 数字证书

    HTTPS 协议和 HTTP 都是应用层协议,不过HTTP 协议内容在传输时都是以文本方式进行明文传输的,这就可能导致在传输过程中,数据被泄漏和篡改等问题。所以HTTPS 协议是在HTTP 基础上引入了一个加密层。 HTTPS (全称:Hypertext Transfer Protocol Secure ),是以安全为目标的 HTTP 通道,

    2024年02月14日
    浏览(43)
  • Nginx 域名SSL证书配置(网站 http 升级为 https) acme.sh 申请免费SSL永久证书(自动续期)

    小编这里用的是godaddy购买的域名 服务器是aws acme.sh GitHub地址  https://github.com/acmesh-official/acme.sh 配合nginx进行部署,后面会贴上nginx.conf 我这里是多个域名用同一个证书    首先你得在自己服务器上面进行部署nginx,如果不知道怎么操作的,可以参考我这一篇博客,执行到这一

    2024年01月24日
    浏览(60)
  • HTTP、HTTPS、SSL协议以及相关报文讲解

    目录 HTTP/HTTPS介绍 HTTP/HTTPS基本信息 HTTP如何实现有状态 HTTP请求与应答报文 HTTP请求报文 HTTP响应报文 SSL协议 SSL单向认证 SSL双向认证 HTTP连接建立与传输步骤 HTTP访问全过程相关报文(以访问www.download.cucdccom为例子) DNS报文解析 TCP三次握手连接 进行HTTP交互(明文) HTTPS连接

    2024年02月04日
    浏览(62)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包