为什么Twitter通过HTTPS(SSL)为每个页面提供服务?

时间:2014-04-03 00:36:29

标签: ssl twitter https

推特等网站是否有理由通过HTTPS提供所有页面?我的印象是,需要通过加密频道提供的唯一页面是提交或接收敏感信息的页面。

3 个答案:

答案 0 :(得分:2)

我在开发网络应用时这样做。它使得保护用户数据变得更加简单,因为我不必考虑机密信息是否可以通过特定请求传递。如果存在性能损失,那么开始分析是不值得的。到目前为止,我的项目在使用方面相当小。

答案 1 :(得分:1)

Twitter上的每一页:

  • 当您登录并在请求中发送凭据(并且可能接收私有数据)
  • 时访问
  • 包含一个登录表单(不应该通过中间人攻击干扰)。

因此,网站上的每个页面都有可能成为提交或接收敏感信息的页面。

答案 2 :(得分:0)

在HTTP和HTTPS之间切换可能很难正确完成。

如果通过HTTP提供的任何资源都需要身份验证,则某些形式的身份验证令牌(通常是会话cookie)将从HTTPS泄漏到HTTP(假设用户身份验证本身是通过HTTPS完成的)。

正确地获取页面流,以便一旦该令牌被用于普通HTTP,就不再需要依赖于任何更敏感的东西(这将需要HTTPS),这可能需要在设计中进行大量规划。应用。 (当然有很多网站没有做好。)

由于Twitter是一个您始终登录的网站(或者总是有机会在角落安全登录),因此将HTTPS用于所有内容似乎是有意义的。

HTTPS中的主要开销是SSL / TLS握手:检查证书,非对称加密,......一旦建立连接,它就是所有对称加密,开销要低得多。

您会在这里(以及其他地方)看到许多问题,其中人们坚持要求重定向规则强制使用纯HTTP来获取不需要安全使用的资源,同时强制HTTPS用于其他页面。这对我来说似乎是错误的:当从HTTPS重定向到HTTP时,握手已经发生了。一个好的浏览器将使连接保持活动状态(并且能够重用会话)以获得多个资源和页面,从而将开销保持在最低水平,此时几乎可以忽略不计。