是否使用自定义函数计算哈希并将其存储为“合并加密”(根据“出口管理条例”)?

时间:2016-03-11 22:49:10

标签: ios encryption hash app-store

我的应用程序使用我自己制作的简单函数计算一些字符串的哈希值(识别应用内购买)。这个函数与MD5之类的东西相差甚远 - 它只是简单的散列函数,结果乘以大质数的几倍 - 整个计算在Swift中是8行。然后使用NSUserDefaults存储哈希。该应用程序不会执行任何可被视为加密的操作。

在提交我的应用时,Apple要求我从这个问题开始填写 Export Compliance

  

您的应用是否设计为使用加密技术,还是包含或包含加密技术?

那么呢?由于美国出口管理条例,Apple需要 Export Comliance 。以下是Apple链接的regulation guidehere是Apple的一些注意事项。

2 个答案:

答案 0 :(得分:2)

  1. 合并/使用散列不使用加密,您没有使用加密。
  2. 加密哈希函数是单向函数,没有可能的反转/解密,它不是加密。
  3. Common Crypto不是Objective-C,而是“C”。
  4. 使用较弱的算法代替标准算法,因为它更容易不专业。
  5. MD5不应该用于新工作,使用SHA256或更好。在iPhone 6s上,SHA255比MD5快4倍。
  6. Common Crypto实施已通过FIPS-140-2认证。

答案 1 :(得分:-2)

简短回答:是的 MD5是一种加密单向函数,旨在难以逆转。它使用128位密钥来执行散列。出口限制要求允许任何密钥长度或56位更高的