文件下载使用 http 还是 https?

文件下载使用 http 还是 https?

我打算在人们购买文件后将其分发给他们。我正在尝试确定是否应该使用 http 或 https 来交付实际文件。

  1. 我的托管计划是按量付费。由于 https 是加密的,带宽费用会更高吗?例如:100MB 的文件最终会占用超过 100MB 的带宽吗?

  2. 我知道 http 更快,但是 https 呢?相似的在所有初始服务器握手过程之后速度如何?(注意:我正在使用 CDN)

  3. 我提供的用于下载文件的 URL 将包含签名等,以验证只有购买者才能下载。我应该使用 https 来保证此签名的安全吗?

  4. 如果我使用 http,传输的文件是否可以免受黑客攻击?

请注意,我已经阅读这个问题

答案1

我的托管计划是按量付费。由于 https 是加密的,带宽费用会更高吗?例如:100MB 的文件最终会占用超过 100MB 的带宽吗?

不会。SSL/TLS 用于加密传输中的数据的块或流密码最多会使文件的传输大小增加几个字节。

我知道 http 速度更快,但是在完成所有初始服务器握手之后 https 的速度是否相似?(注意:我正在使用 CDN)

是的。加密会占用服务器和客户端的额外 CPU 时间,但对现代 CPU 的影响相当小。只要您的客户端和服务器不受 CPU 限制,加密传输的速度将与未加密传输的速度大致相同。

我提供的用于下载文件的 URL 将包含签名等,以验证只有购买者才能下载。我应该使用 https 来保证此签名的安全吗?

是的,所访问的 URL 从客户端到服务器都通过 SSL/TLS 端到端地受到保护 - 这里的例外是 URL 的主机名部分不一定是安全的,但对于您来说这应该不是问题。只要客户端系统没有受到攻击或使用恶意代理服务器,数据在传输过程中就是安全的。

如果我使用 http,传输的文件是否可以免受黑客攻击?

不会。HTTP 流量是完全明文的;与下载文件的客户端位于同一网段(或同一咖啡店 WiFi)的任何人,以及有权访问客户端和服务器之间任何网络基础设施的任何人,都可以看到完整的请求和完整的响应。SSL 还为客户端提供了额外的保证,即他们连接的系统是其声称的系统,而不是潜在攻击者的服务器。如果下载中传输的数据或请求下载的 URL 是敏感数据,则对其进行加密。

答案2

那么,文件是否会存储在某个被索引的通用网站上,或者您是否会使用某种自动 URL 生成器来发布文件?文件是否可以匿名访问,还是必须提供凭证?

我想说,如果您不确定,请使用 SSL 以确保安全,但要了解 SSL 的主要用途。它用于加密对话(即传输过程)。因此,如果您让用户登录下载该文件,您需要 SSL,以便他们的登录凭据是安全的。如果您有一个包含机密信息的文件,则在传输过程中使用 SSL 保护它。请注意,如果您没有该文件的登录名,即使您有 SSL,如果有人找到了 URL,他们也可以毫无问题地下载它。

是的,SSL 可以保护您的数据不被黑客拦截,但没有什么是 100% 安全的。

答案3

  1. 是的...加密增加了一些开销......但通常很小。
  2. HTTP 速度更快,因为它不必进行初始握手......但在那之后......连接已经建立,因此延迟是相同的。(减去加密/解密的时间,这是最少的)
  3. 不太确定你在这里的意思...如果你的意思是你要给用户一个唯一的 URL 来下载文件...每个人都会在短时间内得到它。仅仅试图隐藏文件的地址并不能隐藏任何东西。如果你的意思是为每个用户提供唯一的用户名/密码...这可能是一个好主意。如果你要使用 HTTPS...最好通过 https 完成整个交易,除非你有一些特定的需要。
  4. HTTP 以明文形式发送。没有什么可以保证其安全。中间的任何人都可以完全访问您的文件。如果操作正确,HTTPS 可以使它更加安全。

我真的不想这么说,但你听起来真的不知道自己在做什么......你真的应该聘请一位顾问或开发公司来实施你正在做的事情。

相关内容