在 Android 上删除旧的 TLS
发布于 2019-07-01,发布者为传输层安全性 (TLS) 是当今为大多数互联网提供支持的协议。它为 HTTPS 提供了“安全”的 S。F-Droid 使用它来保持与存储库的连接私有。经过多年缓慢的更新和越来越多的漏洞,促使停止使用旧的、损坏的版本的最后一根稻草终于落下了。TLS 1.2 版不易受到攻击,基本上在所有地方都受支持。TLSv1.2 于 2008 年完成,因此离最前沿还很远。TLSv1.0 和 TLSv1.1 将被 IETF(实际创建 TLS 标准的标准机构)正式弃用。主要的浏览器供应商都承诺在 2020 年放弃它们。
由于 F-Droid 使用 NetCipher,TLSv1.2 一直向后支持到 Android 4.1
强制执行 TLSv1.2 支持的一种方法是配置 f-droid.org 网络服务器以停止支持 TLSv1.0 和 TLSv1.1,就像我们对 SSLv2 和 SSLv3 做的一样。我们更喜欢在客户端执行此操作,以便旧版本的 F-Droid 和没有 TLSv1.2(在 Android 4.1 中添加)的旧设备可以继续使用 f-droid.org。此外,在客户端执行此操作意味着与所有存储库的连接将获得这种保护,而不需要更改存储库服务器设置。
使用 NetCipher 的方法,最新版本的 F-Droid 永远不会使用早于 v1.2 的 TLS,因为除非 TLSv1.2 可用,否则它们将拒绝连接。由于 f-droid.org 仍然可以安全地支持 TLSv1.0 和 TLSv1.1,因此旧客户端和 Android 设备仍然能够连接,即使它们不支持 TLSv1.2。这对每个人来说都是双赢的。
这意味着从现在开始,任何存储库都需要支持 TLSv1.2 才能与 F-Droid 客户端一起使用。如果网络服务器不支持 TLSv1.2,那么它确实太旧了,无论如何都不能安全使用。即使是最古老的受支持的 Red Hat Enterprise Linux 版本 (6) 也支持 TLSv1.2,该版本于 2010 年发布。
