使用HTTPS代替HTTP?

12

我是新手,对网络安全不甚了解。

为什么我想要使用HTTP然后再切换到HTTPS进行一些连接?

为什么不一直使用HTTPS呢?

5个回答

17

这篇文章描述了一些有趣的配置改进,可以使SSL/TLS更加经济实惠,显然是基于Google团队的工作:Adam Langley、Nagendra Modadugu和Wan-Teh Chang。链接如下:http://www.imperialviolet.org/2010/06/25/overclocking-ssl.html

如果有一点我们想向全世界传达的话,那就是SSL/TLS不再具有计算负担。十年前这可能是正确的,但现在不是了。您也可以为用户启用HTTPS。
今年1月份,Gmail默认情况下开始使用HTTPS。此前它曾被引入为一个选项,但现在我们所有用户都使用HTTPS来保护他们在浏览器和Google之间的电子邮件安全。为了做到这一点,我们不需要部署任何额外的机器或特殊硬件。在我们的生产前端机器上,SSL/TLS占不到1%的CPU负载,每个连接少于10KB的内存和不到2%的网络开销。许多人认为SSL需要大量的CPU时间,我们希望以上数字(首次公开)将有助于打消这种看法。
如果您现在停止阅读,您只需要记住一件事:SSL/TLS不再具有计算负担。
仅在登录页面上使用HTTPS时的一种错误的安全感是,您将大门敞开给会话劫持(尽管这比明文发送用户名/密码要好)。最近,使用Firesheep等工具更容易(或更流行)进行会话劫持攻击(尽管这个问题已经存在很长时间了)。
另一个可能会减缓HTTPS速度的问题是,有些浏览器可能不会缓存通过HTTPS检索的内容,因此它们必须再次下载这些内容(例如您经常访问的网站的背景图像)。
话虽如此,如果您不需要传输安全性(防止攻击者查看或更改交换的数据),那么普通HTTP就可以了。

Cloudant、Gmail和Linode是一些在整个应用程序中使用HTTPS的应用程序。我想我也可以这样做,然后来回切换:) - ajsie
3
HTTPS不会消耗太多计算资源,但在大多数情况下,网络性能的限制因素不是CPU或带宽,而是延迟。HTTPS强制对每个连接进行至少一个额外的来回传输,而由于微软的SSL实现与其他人不同,这通常意味着对于每个请求都需要进行这样的传输。 - symcbean

7

主要是出于性能考虑。SSL会增加(服务器)CPU时间。

编辑:然而,这种额外开销在如今已经不再是问题,一些大型网站已经默认使用HTTPS(例如GMail-请参见Bruno的答案)。


7
如果您不需要传输需要保密的数据,则HTTPS的开销是不必要的。
可以查看此SO线程,详细讨论了两者之间的区别。 HTTP vs HTTPS performance

3

还有一件同样重要的事情,防火墙。不要忘记通常HTTPS实现在443端口上。在一些组织中,这些端口可能没有在防火墙或透明代理中进行配置。


谁会阻止SSL连接? - xj9

2

HTTPS可能非常缓慢,对于像图片这样的东西是不必要的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接