gpt4 book ai didi

ios - 获取info.plist的fileSize,防止盗版

转载 作者:可可西里 更新时间:2023-11-01 03:06:33 24 4
gpt4 key购买 nike

我正在尝试将反盗版代码放入我的应用程序中。之前对此的回答(由于我的成员(member)身份,我无法链接到 - 糟透了)可以很容易地反驳,因为可以使用十六进制编辑器在二进制文件中查找和替换“SignerIdentity”字符串。

相反,检查 info.plist 文件的文件大小并将其与引用值进行比较听起来更可靠(因为在破解应用程序时 info.plist 会在这里和那里被修改)。我该怎么做?我尝试了以下但它记录了 0。

NSBundle *bundle = [NSBundle mainBundle];
NSDictionary *mainDictionary = [bundle infoDictionary];
NSLog(@"%d", [mainDictionary fileSize]);

最佳答案

您可以通过应用 ROT13 或类似的简单模糊算法来防止菜鸟破解者在您的代码中找到对“SignerIdentity”的引用 http://en.wikipedia.org/wiki/ROT13

应用 ROT13 后,“SignerIdentity”将变为“FvtareVqragvgl”。

无论如何,你的问题的答案(你如何获得 Info.plist 文件的大小):

NSBundle *bundle = [NSBundle mainBundle];
NSString* bundlePath = [bundle bundlePath];

NSFileManager *fileManager = [NSFileManager defaultManager];

NSString* path = [NSString stringWithFormat:@"%@/Info.plist", bundlePath ];

NSDictionary *fileAttributes = [fileManager attributesOfItemAtPath:path
error:NULL];

if (fileAttributes != nil) {
NSNumber *fileSize;

if (fileSize = [fileAttributes objectForKey:NSFileSize]) {
NSLog(@"File size: %qi\n", [fileSize unsignedLongLongValue]);
}
}

还要记住 Info.plist 的大小(以字节为单位)在你的 Xcode 项目目录和 Info.plist bundle 内可能有所不同。您可能想构建一次游戏,然后查看 <your app bundle.app>/Info.plist 的大小然后更新您的反盗版代码。

关于ios - 获取info.plist的fileSize,防止盗版,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/903157/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com