SSL卸载技术对于HTTPS应用的优化与思考
迅猛发展的互联网为我们提供了丰富的信息资源,在带来便利的同时也影响着人们工作和生活方式。而让我们无法忽视的是,在开放的互联网所带来的繁荣背后,同时也潜藏着安全方面的隐患。随着人们对网络的依赖愈渐加深,各种加密技术应运而生,用以保障网络信息的安全性。SSL(Secure Sockets Layer)协议,便是在互联网上广泛应用于交易安全性保障的一种主导技术。
SSL属于加密通讯协议,工作在TCP协议和应用层协议之间。在SSL加密通道内可以运行很多的上层协议,如HTTP通过SSL封装后的协议通常标示为HTTPS。在一般情况下,HTTP采用明文的方式在互联网上进行传输,但是对于认证口令等敏感信息而言,会存在被非法窃听的风险。为了消除这一方面的隐患,可采用SSL协议对HTTP协议进行加密(即HTTPS),以确保在整个数据传输过程中的信息安全性。在SSL通信过程中,首先采用非对称密钥技术交换认证信息,并交换服务器和浏览器之间用于加密数据的会话密钥,然后利用该密钥对通信过程中的信息进行加密和解密。 当前面临的问题 借助SSL加密机制,但凡涉及敏感信息的互联网服务,便可利用数据传输加密来增强其安全性。诸如电子商务、账单支付、纳税申报、股票与证券交易等线上业务,纷纷得以通过互联网实现安全交付。然而,任何事物都具有一体两面的特性,SSL的联机加密运算不可避免会消耗服务器的处理性能,在相同的硬件性能下,处理SSL加密数据所消耗的时间是处理明文数据的5倍。换而言之,一台服务器启用SSL加密之后,其性能往往只达到原来的20%,其余80%的计算性能都消耗在了SSL的加密运算方面。如此可以预见到,与日俱增的SSL通信量,将会给网络服务器带来严重的负担。
为了缓解服务器的性能压力,一度较为流行的方法是安装SSL加速卡。但是加速卡对SSL数据的处理还是建立在服务器主机之上,并且过分注重于加速SSL数据处理,而不是完全卸除系统负荷。随着网络应用的日益丰富、数据流量的迅猛增长、线上用户数量的不断增加,单纯的SSL加速卡已经越来越难以胜任。另一方面,SSL加速卡一般都存在系统兼容性不佳、性能受制于总线技术瓶颈、对主机的依赖性大等问题,越来越无法满足大型应用的需求。
SSL卸载解决方案
日益增长的SSL通信量已经对系统设计者们提出了前所未有的挑战,尤其是大型网站和数据中心的场景中,往往需要同时处理数以万计的安全交易。这时候我们发现,传统的SSL加速解决方案在面对如此规模信息处理的时候,显得是那么的苍白无力。此外,由于SSL对应用层数据进行了加密,各种网络设备对这些内容也就变得难以处理,例如负载均衡器无法提取用户会话中的cookies、URL、路径等信息进行细化的分发调度。
问题已经显而易见,要实现高性能的SSL处理,涉及到两个方面的改进。一方面通过SSL和TCP/IP包处理的一体化设计,全面卸除系统负荷,另一方面要将SSL数据处理融入新型网络设备,以便于保持与一般网络结构有良好的契合性。在这段时间里,市场上也不断涌现出一系列的创新技术,用以改善通过网络交付业务应用的效率。负载均衡方面的创新也从专注于基础设施效率的单纯网络技术,转移到了业务应用的性能优化和安全方面,由此诞生了应用交付这样一个触及网络、服务器、应用乃至安全方面的产品。
配备SSL卸载功能的应用交付设备,可以充当起SSL代理服务器的角色,将专用的SSL应用程序置于网络服务器的前端,不影响后台服务器主机的CPU资源,从而全面卸除SSL数据处理的负荷。当客户端发起的HTTPS连接,经过应用交付设备处理后,变成明文的HTTP数据,即可被WEB服务程序(例如IIS、APACHE)直接读取,无需特殊的驱动程序来传送和接受网络数据。
当前应用场景与今后发展
现如今,越来越多提供线上服务的组织机构,如电子商务和金融服务等行业,纷纷选择通过部署应用交付设备的解决方案,在保障应用系统稳定性的同时,从后台服务器端卸除SSL数据处理的性能负荷。 西部证券股份有限公司是经中国证券监督管理委员会批准设立,于2001年元月正式注册开业的证券经营机构。公司出于应用安全方面考虑,对官网上使用HTTP传输的应用,采用了HTTPS加密的访问方式,以防止数据传输过程中的泄密或被篡改。鉴于SSL加密运算对服务器的计算资源占用极大,如果由应用服务器来做加密的话,会对应用服务器的业务处理能力造成很大的影响。因此,公司采用了深信服科技的应用交付解决方案,对于发布门户业务网站的Web集群,利用深信服AD设备实现服务器负载均衡,在处理用户登录账户的界面时,通过AD设备完成SSL加密计算,并将后台的HTTP服务转化为安全的HTTPS服务,整合解决安全性和稳定性的问题。
在不同的应用场景中,应用交付设备的SSL卸载功能也有着相应的侧重点。某些在安全性方面有特殊要求的用户,除了利用应用交付设备处理与客户端的SSL通讯之外,还可以配置与后台服务器之间采用弱加密的SSL进行通讯。这种场景也许在不久的将来便会遇到,随着人们对线上应用的安全性要求不断提升,现今采用1024-bit密钥加密的CA证书将在2013年停用,取而代之的是等级更高的2048-bit密钥加密。对于通过互联网交付业务的组织机构而言,将不得不考虑这对于应用系统乃至网络基础设施的性能影响。届时,利用应用交付设备处理来自客户端的2048-bit密钥SSL通讯,而后台服务器仍然延用1024-bit密钥。不仅能满足行业合规性的要求,也可降低网络设备升级带来的成本和负担,不失为一种平滑过渡的方案。
SSL卸载技术对于HTTPS应用的优化与思考的更多相关文章
- 《Spark大数据处理:技术、应用与性能优化》【PDF】 下载
内容简介 <Spark大数据处理:技术.应用与性能优化>根据最新技术版本,系统.全面.详细讲解Spark的各项功能使用.原理机制.技术细节.应用方法.性能优化,以及BDAS生态系统的相关技 ...
- 《Spark大数据处理:技术、应用与性能优化》【PDF】
内容简介 <Spark大数据处理:技术.应用与性能优化>根据最新技术版本,系统.全面.详细讲解Spark的各项功能使用.原理机制.技术细节.应用方法.性能优化,以及BDAS生态系统的相关技 ...
- 网站启动SSL, http变为https后,session验证码错误解决方法
网站启动SSL, http变为https后,session验证码错误解决方法 最近公司需要后台启动安全证书,证书安装完毕后,后台老提示 验证码错误,经过几天的研究,此问题已经得到有效解决,现把方法 ...
- 《Spark大数据处理:技术、应用与性能优化 》
基本信息 作者: 高彦杰 丛书名:大数据技术丛书 出版社:机械工业出版社 ISBN:9787111483861 上架时间:2014-11-5 出版日期:2014 年11月 开本:16开 页码:255 ...
- StartSSL免费SSL证书成功申请-HTTPS让访问网站更安全
StartSSL免费SSL证书成功申请-HTTPS让访问网站更安全 一.StartSSL个人证书登录申请 1.StartSSL官网: 1.官方首页:http://www.startssl.com/ 2 ...
- CentOS6.5 下在Nginx中添加SSL证书以支持HTTPS协议访问
参考文献: 1. NginxV1.8.0安装与配置 2. CentOS下在Nginx中添加SSL证书以支持HTTPS协议访问 3. nginx配置ssl证书的方法 4.nginx强制使用https访问 ...
- 全面解密QQ红包技术方案:架构、技术实现、移动端优化、创新玩法等
本文来自腾讯QQ技术团队工程师许灵锋.周海发的技术分享. 一.引言 自 2015 年春节以来,QQ 春节红包经历了企业红包(2015 年).刷一刷红包(2016 年)和 AR 红包(2017 年)几个 ...
- 通用技术 mysql 亿级数据优化
通用技术 mysql 亿级数据优化 一定要正确设计索引 一定要避免SQL语句全表扫描,所以SQL一定要走索引(如:一切的 > < != 等等之类的写法都会导致全表扫描) 一定要避免 lim ...
- 秋色园QBlog技术原理解析:性能优化篇:缓存总有失效时,构造持续的缓存方案(十四)
转载自:http://www.cyqdata.com/qblog/article-detail-38993 文章回顾: 1: 秋色园QBlog技术原理解析:开篇:整体认识(一) --介绍整体文件夹和文 ...
随机推荐
- Git 常用场景操作
git init 在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹. git clone 获取一个u ...
- hql 多对多查询
这种查询,hibernate 建议用 From Dealer s inner join fetch s.carSerieses cs 实现,注意这种实现只支持b.c,不支持b.cs. 如果要用b.c ...
- 我猜你不会使用try-catch
我猜你不会用try-catch,废话不说,首先看看大多数的人是怎么用的吧,或许你会躺枪哦. 请问.看到上面的代码,你的第一印象是啥.我猜你会说,"我不想看,我不想看,看不懂".事实 ...
- python(26)- 面向对象补充Ⅱ
一 isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)判断obj是否是类 cls 的对象 class Foo(object): ...
- Android_动态权限管理的解决方式
本博文为子墨原创.转载请注明出处! http://blog.csdn.net/zimo2013/article/details/50478201 1.前言 (1).因为MIUI等部分国产定制系统也有权 ...
- qt-mingw530-opencv-开发配置
1.安装好Qt和Qtcreator 2.解压OpenCV源码到一个目录下.路径不能带空格和中文. 3.把E:\Qt\qtcreator-2.1.0\mingw\bin添加到系统环境变量中. 4.安装C ...
- caffe训练自己的图片进行分类预测--windows平台
caffe训练自己的图片进行分类预测 标签: caffe预测 2017-03-08 21:17 273人阅读 评论(0) 收藏 举报 分类: caffe之旅(4) 版权声明:本文为博主原创文章,未 ...
- 简单的HTML5音乐播放器(带歌词滚动)
// // 0) { this.lrcArr.push(item); } } frag = document.createDocumentFragment(); for(i = 0,len = t ...
- commons io上传文件
习惯了是用框架后,上传功能MVC框架基本都提供了.如struts2,springmvc! 可是假设项目中没有使用框架.而是单纯的使用jsp或servlet作为action,这时我们就能够使用commo ...
- IOS之禁用UIWebView的默认交互行为
本文转载至 http://my.oschina.net/hmj/blog/111344 UIKit提供UIWebView组件,允许开发者在App中嵌入Web页面.通过UIWebView组件 ...