这是我第一次上传二进制文件。iTunes Connect问我:

出口法律要求含有加密技术的产品必须得到适当的出口授权。 如果不遵守,可能会受到严厉的处罚。 欲了解更多信息,请点击这里。 你的产品包含加密吗?

我使用https://,,但只通过NSURLConnection和UIWebView。

我对此的解读是,我的应用程序不“包含加密”,但我想知道这一点是否在任何地方都拼出来了。“严厉的惩罚”听起来一点也不令人愉快,所以“我认为这是正确的”有点粗略……权威的答案会更好。

谢谢。


当前回答

如果你使用苹果提供的安全框架或CommonCrypto库,你的应用程序中包含了加密,你必须回答“是”——仅仅因为库是由苹果提供的,并不能让你摆脱困境。

关于最初的问题,最近在苹果开发论坛上的帖子让我相信,即使你只使用SSL,你也需要回答“是”。

其他回答

简单的答案是Yes(应用程序有加密)和Yes(应用程序使用免加密)。 在我的申请中,我只是在WKWebView中打开我公司的网站,但由于它使用“https”,它将被视为豁免加密。 更多信息请访问:https://developer.apple.com/documentation/security/complying_with_encryption_export_regulations?language=objc

或者,你也可以在应用的信息中添加键ITSAppUsesNonExemptEncryption和值NO。plist文件。这样iTunes connect就不会再问你这些问题了。 更多信息:https://developer.apple.com/documentation/bundleresources/information_property_list/itsappusesnonexemptencryption?language=objc

您可以遵循以下3个简单的步骤来验证您的申请是否免税:https://help.apple.com/app-store-connect/#/dev63c95e436

你可能需要将这份年度自我分类提交给美国政府。更多信息请访问:https://www.bis.doc.gov/index.php/policy-guidance/encryption/4-reports-and-reviews/a-annual-self-classification

如果你使用苹果提供的安全框架或CommonCrypto库,你的应用程序中包含了加密,你必须回答“是”——仅仅因为库是由苹果提供的,并不能让你摆脱困境。

关于最初的问题,最近在苹果开发论坛上的帖子让我相信,即使你只使用SSL,你也需要回答“是”。

简单的回答:是的,但是你不需要做任何事情

我在网上找了好几个小时。实际上这很简单,你可以在itunes connect中验证:

1. 你要做的就是

如果你的应用只使用HTTPS或仅使用加密进行身份验证、令牌等,你不需要做什么,只需要包含

<key>ITSAppUsesNonExemptEncryption</key><false/>

在你的信息。去吧,你完蛋了。

2. 验证

你可以在itunes connect中验证这一点。

选择你的应用 选择功能 选择加密 点击“+” 跟着对话 对于HTTPS或认证,答案是肯定的

在任何情况下,你当然都应该仔细阅读对话。


一篇非常有用的文章可以在这里找到:

https://www.cocoanetics.com/2017/02/itunes-connect-encryption-info/

是的,根据iTunes Connect出口合规性信息屏幕,如果您使用内置的iOS或MacOS加密(keychain, https),则您是在为美国政府出口法规的目的使用加密。你是否有资格获得出口合规性豁免取决于你的应用程序做什么以及它如何使用这种加密。附图显示iTunes Connect出口合规屏幕,以帮助您确定您的出口报告义务。它特别指出:

如果您正在使用ATS或呼叫HTTPS,请注意您需要向美国政府提交一份年终自我分类报告。了解更多

以正确的方式获得应用批准并不难。SSL (HTTPS/TLS)仍然是加密,除非您只是将其用于身份验证,否则您应该获得适当的批准。我刚刚获得了批准,我的应用程序现在已经在商店中使用SSL加密数据流量(而不仅仅是身份验证)。

下面是我写的一篇博客文章,这样其他人就可以用正确的方法来做这件事。

苹果iTunes出口限制