为什么我们向用户发送结果时需要 HTTPS

Why we need HTTPS when we send result to user

我们需要 HTTPS 的原因(Secured/Encrypted 网络数据):

除了这两种情况,我看不出有任何理由在网络上使用基于 https 的编码内容。让我们假设一个站点有 10+ css、10+ js、50+ 图像,内容权重为 200k,总权重可能是 ~2 - 3MB - 所以整个内容都是加密的 - 毫无疑问这将是分钟。在浏览器和服务器之间创建了 100 - 280 个连接。

请解释 - 为什么我们需要遵循我们提供的方式[我们大多数人这样做是因为 browsers/google 像搜索 engines/w3o 标准要求我们在每个页面上使用。

why we need to follow the way we deliver

否则不安全。对此发出警告的浏览器并没有错。

Let's assume a site with 10+ css, 10+ js

只有 1 个 .js 通过非 HTTPS 服务,中间人攻击者可以将任意代码注入您的 HTTPS 页面,他们可以从源头完全控制用户与您网站的交互。这就是为什么浏览器不允许它,并给你混合内容警告。

(并且 .css 在许多情况下可以产生相同的影响。)

此外,对于不同的页面在 HTTP 和 HTTPS 之间切换是很糟糕的安全可用性。用户很可能没有注意到切换,并可能被诱骗向非 HTTPS 页面输入数据(或从非 HTTPS 页面接受数据)。攻击者所要做的就是更改其中一个 HTTP 链接,使其指向 HTTP 而不是 HTTPS,这样通常的过程就会被破坏。

have no doubt this is going to be min. of 100 - 280 connection creation between browser and server.

HTTP[S] 重用连接。您无需为每个链接的资源支付 SSL 握手延迟。

对于典型的小型 Web 应用程序,HTTPS 在今天确实没有那么昂贵,值得担心性能。