一篇文章讲透CDN HTTPS安全加速基本概念、解决方案及优化实践

你们都知道,HTTP 自己是明文传输的,没有通过任何安全处理,网站HTTPS解决方案经过在HTTP协议之上引入证书服务,完美解决网站的安全问题。本文将为你们介绍阿里云CDN HTTPS安全加速传输的基础概念、解决方案、技术优点和优化实践。算法

关于HTTPS的那些基本概念

需求推动技术革命,互联网是如此诞生,HTTPS也是这样。人们有在互联网上分享和浏览信息的需求,因此信息的传输技术由此诞生并不断升级。后来,人们位互联网上的信息传输制定了一些准则,也就是网络协议HTTP。从最先1991年发布的HTTP/0.9版本,直到最新的HTTP/2,传输速度也在不断升级。下面,咱们来看下关于HTTP都有哪些基本的概念。浏览器

HTTP是什么?
HTTP是互联网上应用最为普遍的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可使浏览器更加高效,使网络传输减小。安全

HTTPS是什么?
HTTPS是安全超文本传输协议,英文全称:Hyper Text Transfer Protocol over Secure Socket Layer,它是以安全为目标的HTTP通道,简单讲是HTTP的安全版。它的工做原理是将HTTP用SSL/TLS协议进行封装,主要做用能够分为两种:一种是创建一个信息安全通道,来保证数据传输的安全;另外一种就是确认网站的真实性。服务器

HTTPS_1

SSL是什么?
SSL是Secure Sockets Layer的缩写,它是一个安全套接层。架构于TCP之上的安全通信协定,它能够有效协助Internet应用软件提高通信时的资料完整性以及安全性。后来,标准化以后的SSL名称改成 TLS(是“Transport Layer Security”的缩写),中文叫作“传输层安全协议”。不少相关的文章都把这二者并列称呼(SSL/TLS),由于这二者能够视做同一个东西的不一样阶段。网络

什么是握手?
在加密传输以前,客户端和服务器首先必须创建链接和交换参数,校验经过以后进行协商密钥和传输数据,这个过程叫作握手(handshake)。session

什么是加密和解密?
“加密”的过程,就是把“明文”变成“密文”的过程;反之,“解密”的过程,就是把“密文”变为“明文”。在这两个过程当中,都须要一个关键的东西——叫作“密钥”——来参与数学运算。架构

总结:简单来讲,HTTPS就是HTTP的安全加强版本,是HTTP协议与SSL加密协议的结合,因此也被称为HTTP over SSL。性能


为何要使用HTTPS

HTTPS概念其实已经提出来好多年了,但直到近两年,才开始被主流应用。因此,咱们在给你们介绍CDN HTTPS解决方案以前,要先搞清楚,为何要选择使用HTTPS来替换掉HTTP。优化

第一, HTTPS是更具安全性的传输协议,能够防止网站被篡改和劫持,这是最基本的功能。Chrome和Firefox将来将HTTP标记为不安全的协议。
第二, Apple ATS,要求IOS的 9.0或10.0的版本的APP使用HTTPS传输。
第三, 主流的浏览器已经支持基于TLS的HTTP/2。
第四, Google会给使用了HTTPS的网站进行搜索排名的加权,在鼓励你们使用。
第五, 美英政府的网站官网都已经转向HTTPS。网站

咱们能够看到,从用户需求到整个行业大趋势,都是在推送HTTPS的应用。那么阿里云CDN HTTPS的解决方案是怎样的呢?


CDN HTTPS解决方案

HTTPS可以有效的防止网站内容被篡改被劫持,增强了网站的安全性。因此在阿里云CDN内容分发网络中,咱们已经引入HTTPS安全加速解决方案。
https_2

举个例子,在一个具备两级节点的CDN分发架构中,从Client到L1节点再到L2,再回源到源站,一共具备三段TCP链接,每一段都支持了HTTPS。在这中间,在第一段Client到L1节点的时候,须要用户本身的证书。L1到L2节点的时候使用的是咱们的证书,保证了数据加密。回到源站的时候,若是用户也但愿用HTTPS,咱们也能够经过配置实现整个链路的HTTPS,充分保证了网站内容的防篡改、防劫持。

以上方案,用户须要将证书和私钥传输到CDN的证书管理中心来去处理HTTPS的请求。同时,咱们还有更进一步的方案。对于对本身的证书和私钥敏感性很高的用户,但愿将私钥保存在本身的服务器上,减小泄露的风险。针对这种状况,咱们推出了无私钥解决方案。首先,用户搭建私钥服务器,当CDN和Client之间产生了HTTPS握手的时候,CDN处理的时候会提取SNI,域名配置拿到后,向私钥服务器(KeyServer)请求签名或者解密预主密钥。这个方案,咱们实际上是把私钥的部分剥离出来,经过KeyServer来实现。目前,阿里云已经实现了本身的KeyServer,用户只须要在本身的私钥服务器上安装一下KeyServer的rpm和配置一下便可。

https_3

阿里云CDN 提供HTTPS安全加速方案,仅需开启安全加速模式后上传加速域名证书/私钥,实现全网数据加密传输功能。


CDN HTTPS的技术优点

• 支持HTTP/2功能
HTTP/2是对HTTP/1.x进行增强,阿里云CDN 现已全平台支持 HTTP/2,使用阿里云 HTTPS 加速服务的域名,便可免费享受 HTTP/2服务。HTTP/2是一个二进制的协议,支持头部压缩的功能,多路复用以及服务器推送,可以有效提高传输效率。

• 丰富的HTTPS配置项
阿里云CDN HTTPS能够以实现动态设置。举个例子,在实践中发现有些用户的APP对HTTP/2协议实现的不够完美,一种解法就是用户修改本身的APP,把问题修复。另外一种解法就是CDN经过配置把APP的HTTP/2协议给关掉,走HTTP/1.1协议,给用户足够的选择。

• KeyServer无私钥解决方案
前文提到,对于对本身证书和私钥敏感度很高的用户,可保障证书和私钥安全性,支持自建KeyServer,提供KeyServer解决方案和源码。

• 安全功能
HTTPS协议是由HTTP+SSL协议组合构建的需身份认证的加密传输网络协议,可全方位保障安全性,防止敏感信息泄露,防止传输过程当中流量被劫持,篡改,确保数据的完整性。

• 动态证书
支持动态证书,一个用户,若是想使用HTTPS,在上传完证书和私钥以后,全网1分钟就能够生效了。提供多规格证书,支持免费证书、证书过时提醒、证书属性预览。而且与阿里云证书中心CAS联动,能够申请免费证书。

• 灵活付费方式
有后付费和预付费两种形式,后付费HTTPS 0.05元/万次请求,预付费请求包也有450元,4000元,35000元各类规格,规格为1亿次、10亿次、100亿次(双十一折扣)。

HTTPS相对于HTTP传输具备如此多的优点,那HTTPS在性能方面是否也一样超越HTTP呢?咱们知道,阿里云CDN HTTPS能够减小回源率,提高通讯效率,提升验证效率,减小跳转耗时,这些是经过哪些技术来实现优化的呢?下面咱们来看看CDN HTTPS的优化实践。


CDN HTTPS优化实践

首先,咱们知道,阻碍HTTPS的性能提高的关键因素是传输变慢,由于TCP链接握手了以后,还要进行SSL的握手,多层的数据加解密以及证书传输。

那么HTTPS必定会变慢吗?
下图,是淘宝和天猫使用了HTTPS后的一些性能提高数据。其实咱们能够看到,淘宝首页和搜索、聚划算、天猫等页面中,性能都是正向提高的。因此接下来,咱们看看CDN HTTPS在性能方面到底作了哪些优化?

https4

第一, 咱们知道,SSL在握手阶段是很是消耗资源的,SSL自己也支持了session ID和session ticket这两种方式,第一种session ID是在sever端存储会话ID,client端下次请求时候若是携带了一样的ID,就能够恢复之前的会话,省去了大量的握手环节。可是一个client访问不一样sever的时候,存在ID共享的问题,实现起来比较复杂。第二种session ticket能够把会话的信息发给client,client去保存信息,不会依赖于某个sever了。
第二, 咱们须要把HTTP/2协议用起来,多路复用和头部压缩都是能够提高传输效率的。
第三, 域名合并,对于主站和用户域名比较多的状况,咱们就倾向于把域名作合并,合并成一个泛域名中作处理。这样能够减小SSL握手,提高重用,进而提高效率。
第四, 协议栈优化,这是各大CDN公司都在作的功能。传统协议栈是逐渐的试探而且愈来愈多发送数据的过程,初始化窗口会比较小。咱们如今会针对性进行调整,而且提高快速重传的效率。
第五, 优先算法,优先预制ECDSA的算法,在产生相同加密强度的时候,数据量更少。

以上,都是为了更高效的传输和减小数据量,CDN HTTPS所进行的一些优化实践。

另外,在峰值的应对上,除了自身的HTTPS优化,咱们还须要在Cache系统上进行预热,所有都加载到一级节点,就不存在回源的问题了。另外,调度系统中,咱们业务系统要给出预判峰值,同时CDN须要作热点地区的统计,与临近非热点地区分摊,依据节点能力按比例进行分配。固然,针对峰值状况,咱们也须要作限流。

如何更好的使用HTTPS

说了这么多HTTPS的好处,那用户能够如何更好的使用HTTPS呢?
第一, 证书的申请,根据域名的类型来申请,阿里云也提供证书服务,可签发Symantec、CFCA、GeoTrust证书。证书的分类有三种:DV、OV和EV。DV是指基于域名级别的证书,机构只须要验证域名的全部者,安全级别比较低。OV和EV是企业级别证书,除了验证域名全部者还要验证企业信息。EV的证书,在访问时可以显示公司名字。
第二, 源站改造,包括页面资源的改造,TLS版本选择1.0以上,关于session ID和session ticket的优化配置,证书上支持SHA256等工做。另外,实际应用中,有一个问题,当用户输入域名,咱们能够经过配置强制HTTPS访问。

以上就是关于HTTPS的介绍,在用户访问安全、内容传输安全等使用场景中,阿里云CDN均可以提供相应的HTTPS安全加速解决方案,下降用户成本,实现加速与安全的双重效果。目前,阿里云CDN HTTPS已经全面降价,后付费HTTPS 0.05元/万次请求。为了迎接双11,预付费资源包也推出新购特惠:双十一当天30元购买1千万次HTTPS请求数资源包。

相关文章
相关标签/搜索