0

我正在寻找保护用户下载内容的初步想法。用户下载包含有趣资源的 zip 文件,这些资源被提取到本地文件系统中以供应用程序使用。我的目标是防止用户通过互联网将下载的资源共享给其他用户(假设他们可以访问这些文件无论如何)。可以在 iOS 应用程序中使用并且可能独立于平台的东西。

谢谢

4

1 回答 1

1

第一步是将文件放在受保护(由苹果公司)的位置,并确保该位置没有被用户备份到 iTunes 中:

//Get the Library path (not visible to user
NSString *path = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) objectAtIndex:0]

//Tell apple not to back it up in iTunes
+(void)addSkipBackupAttributeToPath:(NSString*)path {
    u_int8_t b = 1;
    setxattr([path fileSystemRepresentation], "com.apple.MobileBackup", &b, 1, 0, 0);
}

现在,这无助于越狱和其他更狡猾的事情,用户可以通过执行这些操作来访问这些位置。接下来的事情是单独加密文件并在将要使用它们时动态解密它们。这是处理器最密集的方式,但更安全。对于加密和解密,我建议使用 RNCryptor 库。这涉及更多,并且需要您进行大量研究,抱歉,在一般问题中写得太多了。

于 2013-06-14T16:27:57.070 回答