云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

_js连接数据库_12月免费

小七 141 0

如何使SSL更快

默认情况下,web协议HTTP是未加密的。这意味着,与您使用同一个本地网络的人监视您发送到和从大多数网站接收的所有数据是微不足道的。例如,如果有人嗅探你的会话cookie来寻找一个网站,那么他们可以自己安装它,并像你一样登录,而不知道你的密码。一个引人注目的例子是演员阿什顿·库彻(Ashton Kutcher)的Twitter会话cookie在TED大会的wifi网络中被嗅出,从而允许黑客控制他的Twitter帐户。

如何使SSL快速

像Ashton这样的问题的解决方案是使用加密的HTTPS连接,这需要一个支持SSL的网站。问题是SSL协议带来了沉重的负担。我在技术上相当精通,仍然发现在web服务器上安装和维护SSL密钥的过程是拜占庭式的。SSL会话还会给web服务器增加相当大的CPU负载并降低web性能。CloudFlare是一家网络性能和安全公司。为了安全起见,我们认为让SSL更容易和更广泛地部署是我们义不容辞的责任。鉴于此,为了最大限度地提高性能,我们将花费大量资源来提高SSL的性能。什么使SSL变慢?SSL对web性能增加了额外的负担,但要确切地了解如何实现。SSL性能税的主要来源来自新连接的初始设置。在交换任何网页数据之前,必须在客户端和服务器之间"协商"SSL会话。这个过程的简化版本如下。

如何使SSL快速

如果您的网页上有多个不同域的资源,则访问者的浏览器将需要为每个域协商一个SSL会话。因为每个SSL会话至少需要4个额外的交换,所以高丢失率的片状连接(例如,到移动设备的连接)的问题在HTTPS上被放大了。OCSP和CRL:隐藏的吸血鬼SSL证书由证书颁发机构(CA)颁发。CA证明证书背后的网站就是他们所说的人。有时,证书颁发后,证书会丢失或受损,需要撤销。CA维护一个已被吊销的证书列表,称为证书吊销列表(CRL)。浏览器在访问受SSL保护的站点时,可以查询并下载CA的CRL并解析列表以查看是否有特定的站点在其中。或者,他们可以通过在线证书状态协议(OCSP)发出一个请求,以检查某个特定站点的证书是否已被吊销。

如何使SSL快速

问题是,对于大多数CAs CRL和OCSP性能似乎是事后才想到的。CRL和OCSP服务器通常也不是按地理位置分布的,也不是针对性能进行调整的。Verisign是最大的CA之一,平均响应一个OCSP请求大约300毫秒。这意味着,如果您使用Verisign的SSL,那么任何连接到您站点的访问者的页面加载时间将增加三分之一秒。更糟糕的是,大多数CA还不接受对其CRL或OCSP服务器的IPv6请求。CRL和OCSP慢的问题对SSL性能的影响已经足够大了,浏览器供应商已经开始讨论完全取消验证。虽然这可能有助于提高性能,但会损害整个web安全性,并使可靠地信任站点的SSL变得更加困难。更多的SSL延迟其他一些因素进一步导致了SSL的总体缓慢。通常证书是使用许多中间证书链接的,这会增加在初始会话协商期间需要交换的数据量。大多数网站没有花时间来优化他们的密码。选择一个太弱的加密密码可能会使您的网站面临许多潜在的漏洞。另一方面,如果您的站点已经受到CPU的限制,那么选择一个更强大的cypher可以增加负载。总的来说,我们经常收到客户的来信,他们希望在他们的站点上进行SSL保护,但发现这项保护太困难或资源密集。最终的结果是许多应该使用SSL的站点没有使用SSL,牺牲了安全性来提高性能。而且,对于那些支持SSL的站点,它的实现方式通常会导致显著的性能损失。这两种情况都不利于网络,所以我们想看看我们能做些什么来帮助解决这个问题。加速SSLCloudFlare正在制定一系列计划来加速SSL。首先,我们有许多技术来限制浏览器需要建立的连接数量,从而减少需要进行的会话启动握手的数量。例如,Rocket Loader将对脚本的请求(即使是跨第三方服务的请求)组合到站点自己域下的单个连接中。我们还推出了对所有支持SSL的站点的SPDY支持,它允许在单个连接上多路传输请求。除了减少连接数量以提高SSL性能外,我们还与我们的主CA Globalsign合作,以加快CRL和OCSP的速度。如今,Globalsign的CRL和OCSP请求都是通过CloudFlare的全球网络提供的,响应时间不到100毫秒。我们还计划推出OCSP装订,它允许在不向CA基础设施发出额外请求的情况下,从服务器发送证书是否无效。CloudFlare运行它自己的所有基础设施,这使我们能够指定硬件以获得最大的SSL性能。我们与Intel合作,集成了一个定制的OpenSSL优化版本,它利用服务器CPU上的特殊指令集,使加密和解密尽可能快。在我们的测试中,它大约快了30%,并且使用更少的CPU资源。这允许我们选择更强大的密码,最大限度地提高性能,而不会受到性能损失。

如何使SSL快速

扩大SSL的采用同样重要的是,我们努力使SSL尽可能简单,而不考虑您自己的基础设施的功能。每个付费CloudFlare计划都会自动包含SSL,只需单击一下即可自动配置SSL。我们允许客户选择完整的SSL(确保端到端加密)或灵活的SSL,后者对从浏览器到CloudFlare网络的连接进行加密,这是交易中风险最大的部分,但不要求您在原始服务器上运行SSL。这允许您将SSL添加到googleappengine和Tumblr等服务中,这些服务本身不允许SSL支持,或者只将其作为一个昂贵的附加组件包含在内。虽然CloudFlare的Pro帐户包括由我们自己的系统颁发的SSL证书,但是随着我们业务层和企业层的推出,客户现在可以上传他们自己的证书在我们的网络上使用。这允许在我们优化的基础设施上支持扩展验证(EV)证书。随着SPDY等新的性能技术需要SSL支持,并且随着新的威胁不断出现,确保SSL尽可能快速和安全地运行变得越来越重要。CloudFlare将继续努力提高SSL的性能,以实现我们构建一个既安全又快速的web的任务。