Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Security 为什么不在所有事情上都使用HTTPS呢?_Security_Https - Fatal编程技术网

Security 为什么不在所有事情上都使用HTTPS呢?

Security 为什么不在所有事情上都使用HTTPS呢?,security,https,Security,Https,如果我正在设置一台服务器,并且拥有SSL证书,为什么我不在整个站点上使用HTTPS,而不仅仅用于购买/登录?我认为对整个网站进行加密并完全保护用户会更有意义。这将避免诸如决定什么必须被保护之类的问题,因为一切都是安全的,而且这对用户来说并不是一个真正的不便 如果我已经在部分网站上使用了HTTPS,为什么我不想在整个网站上使用它呢 这是一个相关的问题,但答案并不令人满意。答案假设您无法将https应用于整个站点。我可以想出几个原因 某些浏览器可能不支持SSL SSL可能会稍微降低性能。如果用户正

如果我正在设置一台服务器,并且拥有SSL证书,为什么我不在整个站点上使用HTTPS,而不仅仅用于购买/登录?我认为对整个网站进行加密并完全保护用户会更有意义。这将避免诸如决定什么必须被保护之类的问题,因为一切都是安全的,而且这对用户来说并不是一个真正的不便

如果我已经在部分网站上使用了HTTPS,为什么我不想在整个网站上使用它呢


这是一个相关的问题,但答案并不令人满意。答案假设您无法将https应用于整个站点。

我可以想出几个原因

  • 某些浏览器可能不支持SSL
  • SSL可能会稍微降低性能。如果用户正在下载大型公共文件,则每次加密这些文件可能会带来系统负担
      https比普通http更需要资源


      对服务器和客户端都有更多的要求。

      < P>除了旋风响应之外,还应该考虑SSL证书的成本和适用性、访问问题(可能的,虽然不太可能,客户端可能无法通过SSL端口进行通信),等等。
      使用SSL并不能保证安全性。这种类型的保护需要内置到应用程序的体系结构中,而不是试图依靠某种魔弹。

      显然,原因是性能:所有数据都必须在传输前由服务器加密,然后在接收后由客户端解密,如果没有敏感数据,这是浪费时间。它还可能影响您的站点缓存的数量

      如果所有地址都使用
      https://
      而不是熟悉的
      http://
      ,那么最终用户可能会感到困惑。此外,请参见以下答案:


      https要求服务器加密和解密客户端请求和响应。如果服务器正在为许多客户机提供服务,那么性能影响就会增加。这就是为什么大多数当前的https实现仅限于密码身份验证。但是随着计算能力的提高,这种情况可能会改变,毕竟Gmail在整个站点上都使用SSL。

      SSL/TLS的使用频率几乎不够。整个会话必须使用HTTPS,在任何时候都不能通过HTTP发送会话ID。如果您仅使用https登录,那么您显然违反了“A3:中断的身份验证和会话管理”。

      我被告知,在我们公司的一个项目中,他们发现SSL消息占用的带宽明显高于普通消息。我相信有人告诉我这是一个惊人的12倍的数据。我自己还没有验证过这一点,这听起来很高,但如果每个页面都添加了某种标题,并且大多数页面都有少量内容,那可能就不远了

      这就是说,在http和https之间来回切换,并跟踪哪些页面是正确的,这对我来说似乎太费劲了。我只有一次尝试建立一个混合了它们的网站,当我们被复杂的事情绊倒时,我们最终放弃了这个计划,比如Javascript创建的弹出窗口连接到错误的协议等等。我们最终只是减少了整个网站的麻烦。我想在简单的情况下,你只需要一个登录屏幕和一个需要保护的支付屏幕,它们都是简单的页面,混合搭配也没什么大不了的


      我不会太担心客户端解密的负担。通常情况下,客户机等待数据传输的时间要比处理数据的时间长得多。在用户通常拥有千兆/秒的互联网连接之前,客户端处理能力可能是无关紧要的。服务器加密页面所需的CPU功率是另一个问题。可能存在it无法跟上数百或数千用户的问题。

      对于高延迟链路,初始TLS握手需要额外的往返来验证证书链(包括发送任何中间证书)、商定密码套件和建立会话。一旦建立了会话,后续请求可能会利用会话缓存来减少往返次数,但即使在这种最佳情况下,往返次数仍比正常HTTP连接所需的多。即使加密操作是免费的,但在较慢的网络链接上往返也不是很明显,尤其是在站点不利用http管道的情况下。对于网络中连接良好的网段内的宽带用户而言,这不是一个问题。如果你在国际上做生意,要求使用https很容易造成明显的延迟

      还有其他注意事项,例如服务器维护会话状态,可能需要大量内存,当然还有数据加密操作。任何小型站点实际上都不必担心给定的服务器功能和当今硬件的成本。任何大型站点都可以轻松负担CPU/w AES卸载或附加卡,以提供类似的功能

      随着时间的推移以及硬件和网络能力的提高,所有这些问题都变得越来越不成问题。在大多数情况下,我怀疑今天是否有任何明显的区别

      可能存在运营方面的考虑因素,例如对https流量的管理限制(想想中间内容过滤器……等等),可能还有一些公司或政府法规。一些公司环境要求在外围进行数据解密,以防止信息泄漏。。。干扰热点和类似的基于web的访问系统,无法在https事务中注入消息。在我看来,一天结束时,默认情况下不使用https的原因如下