我正在编写一个应用程序,该应用程序在启动时从捆绑包中的 xml plist 中读取信息。plist 中的信息是经过多天的工作编译而成的,我想确保在分发后另一方不能轻易地从应用程序包中提取它。有没有一种方法可以保护或加密应用程序包中包含的 xml plist?

如有任何帮助,我们将不胜感激。

有帮助吗?

解决方案

plist中没有内置的加密函数。许多人将压缩视为加密。

这就是我要做的,

  1. 组成一个加密密钥。
  2. 编写一个小程序,使用以下命令将 plist 加密为二进制文件 SecKeyEncrypt().
  3. 将二进制文件放入包中。
  4. 在应用程序中,将密钥隐藏在某处。例如,将它们存储为碎片,这样就不容易从转储中找到。
  5. 当您启动应用程序时,从捆绑中读取二进制文件,使用 SecKeyDecrypt() 使用密钥并将明文存储在内存中。
  6. 明文是plist,从内存中加载plist。

这仍然被认为是混淆的,因为密钥在你的捆绑包中可用,但它足以阻止大多数休闲黑客。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top