Я хочу использовать этот код для защиты от пиратства для своего приложения.Является ли этот код защиты от пиратства iOS хорошим?
NSString* bundlePath = [[NSBundle mainBundle] bundlePath];
BOOL fileExists = [[NSFileManager defaultManager] fileExistsAtPath:(@"%@/_CodeSignature", bundlePath)];
if (!fileExists) {
//Pirated
NSLog(@"Pirated");
}
BOOL fileExists2 = [[NSFileManager defaultManager] fileExistsAtPath:(@"%@/CodeResources", bundlePath)];
if (!fileExists2) {
//Pirated
NSLog(@"Pirated2");
}
BOOL fileExists3 = [[NSFileManager defaultManager] fileExistsAtPath:(@"%@/ResourceRules.plist", bundlePath)];
if (!fileExists3) {
//Pirated
NSLog(@"Pirated3");
}
Кто-нибудь использовал его раньше? Может ли он использоваться для некоторой базовой защиты, или это просто дерьмо? Какие у вас есть предложения по этой теме?
Не только это тривиально побеждено (злоумышленник может изменить строки), он опирается на детали реализации, которые Apple может изменить в любое время. Как законный пользователь, я был бы очень раздражен, если бы обновил свою ОС и был обработан как пират в вашем приложении. –
Почему бы не использовать время, затрачиваемое на это, чтобы сделать приложение еще лучше для оплаты клиентов? Вы не собираетесь прекращать пиратство своего приложения, и большинство пиратов людей, вероятно, не будут покупать его в любом случае. – UIAdam
Здесь в Греции Пиратские iphones - это 70% от iphones, так что техника - действительно плохая идея! –