HTTPS的误解(一)

大家好,SSL证书越来越受到人们的关注,经常有人会说HTTPS只有登录页才需要,而且会使网站速度下降,易维信(EVTrust)给大家澄清了一些HTTPS协议容易产生误解的地方,增长一些网页加密通信的知识。

误解一:只有注册登录页,才需要HTTPS

这种想法很普遍。人们觉得,HTTPS可以保护用户的密码,此外就不需要了.Firefox浏览器新插件Firesheep,证明了这种想法是错的。我们可以看的到,在Twitter和Facebook上,劫持其他人的会话是非常容易的。

咖啡馆的免费WiFi,就是一个很理想的劫持环境,因为两个原因:

1。这种无线通常不会加密,所以很容易监控所有流量。

2。无线通常使用NAT进行外网和内网的地址转换,所有内网客户端都共享一个外网地址。这意味着,被劫持的会话,看上去很像来自原来的登录者。以Twitter为例,它的登录页使用了HTTPS,但是登录以后,其他页面就变成了HTTP。这时,它的饼干里的会话值就暴露了。也就是说,这些饼干是在HTTPS环境下建立的,但是却在HTTP环境下传输。如果有人劫持到这些饼干,那他就能以你的身份在Twitter上发言了。

 HTTPS的误解(一)

误解二:有了HTTPS,饼干和查询字符串就安全了

虽然无法直接从HTTPS数据中读取饼干和查询字符串,但是你仍然需要使它们的值变得难以预测。

比如,曾经有一家英国银行,直接使用顺序排列的数值表示会话id:

* * *可以先注册一个账户,找到这个饼干,看到这个值的表示方法,然后,改动饼干,从而劫持其他人的会话id。至于查询字符串,也可以通过类似方式泄漏。

误解三:HTTPS太慢

使用HTTPS不会使你的网站变得更快(实际上有可能,请看下文),但是有一些技巧可以大大减少额外开销。

首先,只要压缩文本内容,就会降低解码耗用的CPU资源,不过,对于当代CPU来说,这点开销不值一提。

其次,建立HTTPS连接,要求额外的TCP往返,因此会新增一些发送和接收的字节。但是,从下图可以看的到,新增的字节是很少的。

第一次打开网页的时候,HTTPS协议会比HTTP协议慢一点,这是因为读取和验证SSL证书的时间。下面是一张HTTP网页打开时间的瀑布图。

同一张网页使用HTTPS协议之后,打开时间变长了。

 HTTPS的误解(一)

建立连接的部分,大约慢了10%。但是,一旦有效的HTTPS连接建立起来,再刷新网页,两种协议几乎没有区别。先是HTTP协议的刷新表现:

然后是HTTPS协议:

 HTTPS的误解(一)

某些用户可能发现,HTTPS比HTTP更快一点。这会发生在一些大公司的内部局域网,因为通常情况下,公司的网关会截取并分析所有的网络通信。但是,当它遇到HTTPS连接时,它就只能直接放行,因为HTTPS无法被解读。正是因为少了这个解读的过程,所以HTTPS变得比较快。




HTTPS的误解(一)