App Store或Google Play应用的加密和导出许可

时间:2015-05-18 07:48:41

标签: android ios appstore-approval crypto++

我的iOS应用程序使用crypto ++作为机密性的静态库。 由于这个库是开源的,因此对于任何可能的错误行为者来说都是可见的,因此常识意味着应该没有麻烦。 但是,根据美国出口管理条例第2部分第5类,我的应用程序似乎没有明确豁免,但我无法确定,因为法律往往是一个令人费解的混乱的例外和随机的分裂,所以我希望向您提供在您的应用程序中包含开源加密库的实际经验(Android建议也可以):

我是否需要经历所有获得EAR批准的麻烦?

1 个答案:

答案 0 :(得分:6)

  

我的iOS应用程序使用crypto ++作为保密性的静态库...
  但是,根据美国出口管理条例第2部分第5类,我的应用程序似乎没有明确豁免......

正确。出口法规适用于加密技术。

有一些豁免。例如,如果密钥大小为63位或更小,则不需要导出许可证,因为License Exemption is provided。您还可以在没有许可证的情况下构建测试系统并运送测试系统。

如果您属于此类别,您仍需要进行自我分类。你只是不需要许可证。填写文书时,请写下 “NLR - 无需许可证” 。但这可能不是你......

如果您仅使用加密技术进行身份验证(而非加密),那么您将不需要导出许可证。或者,如果您通过TestFlight将应用分发给beta测试,那么您不需要导出许可证。但是,Apple仍然需要许可证,因为他们没有花时间区分加密和身份验证;或beta测试与发布......

  

由于这个图书馆是开源的,因此任何可能的错误行为者都可以看到它,因此常识意味着应该没有麻烦......

您的应用与其使用的基础加密库有不同的要求。底层库需要做什么以及您需要做什么是两件事。

例如,OpenSSL和Crypto ++属于EAR 734和740,他们只需要向BIS和加密协调员发送一封电子邮件,其中包含指向其网站和源代码的链接。你必须做更多......

  

我是否需要经历所有获得EAR批准的麻烦?

是。最后,您需要做的就是注册一个SNAP-R帐户并进行自我分类。当您进行自我分类时,您需要查找一些代码,填写一些文件,组装一些其他文档,然后将其提交给BIS和加密协调员。

提交后,BIS等待加密协调员反对或拒绝该应用程序。在加密协调员沉默30天后,BIS颁发许可证。

顺便说一句,加密协调员是NSA。这是他们的Fort Meade邮寄地址。

  

...我想问你们那些在你的应用程序中包含开源加密库的实际经验

我通过这个过程指导了3个图书馆和1个应用程序。在这些库中,一个库是基于OpenSSL的,一个库是基于Crypto ++的。他们都没有被拒绝。

  

......我无法确定,因为法律往往是一个令人费解的混乱的例外和随机的分裂......

偏离主题,但国际清算银行的女士们非常好。你拨打电话号码和真人回答。他们相当知识渊博。他们是告诉我测试豁免的人。

与那些知识渊博的女士交谈,这里是您正在寻找的办公室的名称: 出口商服务办公室,加密部门 。他们的电话号码显示在Google搜索上(一旦您知道办公室名称就很容易)。

相关,这可能是您寻求的信息:如何做到这一点。 Zetetic有一套很好的指令可以在Mass Market Encryption CCATS Commodity Classification for iPhone Applications in 8 Easy Steps处完成。这是我一年前的第一次使用。

  

(评论)如果我想在Google Play上发布相同应用的Android版本,我可以重复使用许可证,还是需要重复使用?

是。许可证是为应用程序而不是游戏商店发布的。

  

(评论)那些​​没有触及crypto ++的更新,但为用户提供了一个额外的算法供UI选择,即首先我想只使用RSA进行挖掘。签名,但在下一个版本中我想添加ECDSA作为选择?

我不记得了。请致电 出口商服务办公室,加密部门 。他们真的很有帮助。

如果要添加或修改核心加密例程(这就是这些内容所涵盖的内容),那么您可能需要更新到现有应用程序或重新分类。

如果您只是更改签名算法,那么它只是实体身份验证,它可能不需要更新现有应用程序或重新分类。

我问了一个类似的问题:它是关于命名产品和(重新)品牌而没有改变crpyto。就我而言,重命名不需要重新分类。

相关问题