【问题标题】:NSURLConnection with https and TLS 1.1NSURLConnection 与 https 和 TLS 1.1
【发布时间】:2015-10-31 21:14:16
【问题描述】:

我的应用程序使用 NSURLConnection 将 xml 文件发布到我所在国家/地区的金融机构,该机构将在明年某个时候停止使用 SSL 协议并切换到 TLS 1.1 或 1.2。

我的应用程序链接到 10.6 SDK,因为我的许多客户使用旧系统。我想问几个问题,但我不确定这一切对我有何影响。

我链接的 SDK 是否重要?如果我的应用在最新的 Mac OS 上使用,NSURLConnection 会默认使用最新的 TLS 吗?如何在系统上测试 TLS 版本?

我应该链接到较新的 SDK 吗?或者只是告诉受影响的客户升级到 Mountain Lion 或更高版本?

问题是我现在无法测试任何东西,因为相关组织刚刚在 2016 年的某个时候宣布。他们将停止支持低于 TLS 1.1 的任何东西。

【问题讨论】:

标签: macos cocoa ssl nsurlconnection tls1.2


【解决方案1】:

不必拘泥于旧版本的 Xcode(我认为是 Xcode 3?),您可以使用最新版本的 Xcode 和

1)

specify MacOS 10.6 as the "minimum deployment version"

(老实说,在我看来,你应该只支持 1 - 3 个 MacOS 版本……MacOS 10.6 是从 2011 年开始的)。

2)

And make sure to use app transport security exceptions to allow for older TLS 在 MacOS 10.11 和更新的 MacOS 版本下。

Apple 很乐意在未来支持 TLS 1.2。如果您仍需要支持 TLS 1.1,则仍需要应用程序的 info.plist 文件中的异常。

【讨论】:

  • 感谢您的回答。我知道如何指定部署,这可能就是我要处理这整个事情的方式。然而,与此同时,这提出了一个我从未问过自己的问题。当 Apple 在一个操作系统版本中修复错误或修补问题时,他们只会为链接到最新 SDK 的新应用程序修复它。真的吗?因此,如果有人使用旧应用程序,他仍然容易受到当时的任何影响。
  • 哦,关于 Xcode。我在 VMWare 中有 3.6。将它用于我的 Carbon 事物和奇怪的遗留代码。
  • 实际上 - 当 Apple 修复其任何系统组件(包括安全和加密组件)中的错误时,即使在您的旧应用程序中,您也会自动获得此修复程序,而无需重新编译和重新链接它们。您的代码仅调用(外部)系统服务。 MacOS 没有使用被复制到您的应用程序中的静态库。
猜你喜欢
  • 1970-01-01
  • 2011-11-23
  • 2017-12-11
  • 1970-01-01
  • 2021-07-19
  • 2017-08-08
  • 2015-08-05
  • 2021-03-13
  • 1970-01-01
相关资源
最近更新 更多