http或https进行文件下载?

我将在购买后向他们发送文件。 我试图确定是否应该使用httphttps来传递实际的文件。

  1. 我的托pipe计划是现收现付。 httpsencryption会带来更多的费用吗? 例如:一个100MB的文件最终会使用100MB以上的带宽吗?

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

  3. 我下载该文件的URL将包含签名等,以确认只有购买者才能下载。 我应该使用https保持这个签名的安全吗?

  4. 如果我使用http,那么将传输的文件从黑客中得到保护吗?

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

我的托pipe计划是现收现付。 httpsencryption会带来更多的费用吗? 例如:一个100MB的文件最终会使用100MB以上的带宽吗?

否。SSL / TLS用于encryption传输中的数据的数据块或数据stream密码将至多添加less量字节到文件的传输大小。

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

是。 encryption会在服务器和客户端上花费额外的CPU时间,但在现代CPU上,影响相当低。 只要您的客户端和服务器不受CPU限制,encryption的传输速度将与未encryption的速度大致相同。

我下载该文件的URL将包含签名等,以确认只有购买者才能下载。 我应该使用https保持这个签名的安全吗?

是的,被访问的URL是通过SSL / TLS从客户端到服务器的端到端安全的 – 这里的例外是URL的主机名部分不一定是安全的,但在你的情况下,这不应该是一个问题。 只要客户端系统没有受到威胁,或者使用恶意代理服务器,数据在传输过程中就是安全的。

如果我使用http,那么将传输的文件从黑客中得到保护吗?

HTTPstream量是完全清楚的; 与客户端下载文件(或相同的咖啡店wifi)在同一网段上的任何人,以及任何访问客户端和服务器之间的任何networking基础结构的人都能够看到完整的请求和完整的响应。 SSL还为客户端提供了额外的保证,即他们所连接的系统是它所说的,而不是一个潜在的攻击者的服务器。 如果在下载中传输的数据或请求下载的URL是敏感的,则对其进行encryption。

那么文件将被存储在一个通用的网站,一些索引的位置,或者你打算使用某种自动url生成器来发布文件? 文件可以独立访问,还是需要提供凭据?

我想说,如果你不确定的话,用SSL来安全起见,但要明白SSL的主要目的是什么。 这是encryption对话(即传输过程)。 所以,如果你有用户login下载该文件,你会想要SSL,所以他们的login凭据是安全的。 如果您有包含机密信息的文件,请在传输过程中使用SSL进行保护。 要知道,如果你没有这个文件的login,即使你有SSL,如果有人find了这个URL,他们也可以毫无问题地下载它。

SSL是保护你的数据免受黑客的拦截,但是没有100%的安全。

  1. 是的…encryption增加了一些开销…但通常非常小。
  2. HTTP更快,因为它不需要进行初始握手…但是之后…连接已经build立,所以延迟是相同的。 (减去encryption/解密的时间是最小的)
  3. 不知道你在这里的意思是100%…如果你的意思是你要给用户一个独特的URL下载文件…每个人都会在短时间内。 只是试图隐藏你的文件的地址不会隐藏任何东西。 如果你是指每个用户的唯一用户名/密码…这可能是一个好主意。 如果您打算使用HTTPS,那么通过https完成整个事务是一个好主意,除非您有一些特定的需要。
  4. HTTP以明文forms发送。 没有什么可以使这个安全。 中间的任何人都可以完全访问您的文件。 HTTPS可以使这个更安全…如果做得对。

我真的很讨厌这样说,但是你听起来好像不知道自己在做什么……你真的应该聘请一个顾问或开发公司来实施你正在做的事情。