Question

Quelles sont les méthodes acceptées pour réduire le piratage de l'application iPhone, qui ne viole pas le processus d'évaluation d'Apple?

Si ma demande « téléphones à la maison » pour fournir le dispositif ID unique sur lequel il fonctionne, quelles autres informations aurais-je besoin de recueillir (par exemple, l'identifiant Apple utilisé pour acheter l'application) pour créer un jeton d'enregistrement valide qui autorise l'utilisation de l'application? De même, quel code devrais-je utiliser pour accéder à ces données supplémentaires?

Qu'est-ce que semblent être les meilleures approches techniques disponibles à ce problème, à l'heure actuelle?

(S'il vous plaît abstiens de réponses non-programmation sur la façon dont la piraterie est inévitable, etc. Je sais que la piraterie est inévitable. Je suis intéressé par des réponses fondées sur la programmation- qui traitent de la façon de le réduire. Merci d'avance pour votre compréhension.)

Était-ce utile?

La solution

UPDATE

visiter et lire

Merci à Chpwn dans les commentaires.

Le code qui est trop vieux! - 11 mai 2009

Pour l'instant, il y a un moyen plus facile de détecter si votre application iPhone a été craqué pour une utilisation de la piraterie. Cela ne concerne pas vous de vérifier les identifiants uniques iPhone avec une liste d'identifiants acceptés.

Actuellement, il y a trois choses crackers faire:

  1. Modifier le fichier Info.plist
  2. Décoder le Info.plist de binaire UTF-8 ou ASCII
  3. Ajouter une paire de clés à Info.plist {SignerIdentity, Apple iPhone OS Signature d'application}

Le dernier est plus facile à vérifier avec ce code:

NSBundle *bundle = [NSBundle mainBundle]; 
NSDictionary *info = [bundle infoDictionary]; 
if ([info objectForKey: @"SignerIdentity"] != nil) 
{ /* do something */  }

En général, nous n'avons SignerIdentity dans l'une des applications de l'App Store, nous construisons donc la vérification de zéro en effectuant ensuite des instructions de réglage devrait rendre plus difficile pour les crackers et les pirates.

Je ne peux pas prendre le crédit pour cela pour visiter Comment Déjouez iPhone Crackers IPA. il y a des tas d'informations là-bas sur le piratage sur iPhone et comment y mettre un frein.

Autres conseils

Comme l'a souligné Andrey Tarantsov dans les commentaires, à la recherche de la chaîne « SignerIdentity » dans le binaire (en utilisant une application comme HexEdit) et de le remplacer est assez facile.

Vous pouvez coder cette chaîne, mais là encore tout ce que vous devez faire est de changer un omble chevalier et de l'application ne va pas chercher la « SignerIdentity » touche plus, mais pour une autre clé qui n'existe probablement pas ( est donc nulle). Cette clé null être, l'application pense que ce n'est pas fissuré (puisque SignerIdentity devrait être nulle si l'application n'est pas fissuré).

Au lieu de cela, je préfère vérifier la taille de la info.plist et le comparer à une valeur de référence. J'ai remarqué Simulator et périphériques ne construit pas la même taille de fichier Info.plist. Même chose pour Debug, Release et distribution builds. Par conséquent, assurez-vous que vous définissez la valeur de référence en utilisant la taille du fichier Info.plist pour la construction de distribution de périphériques.

Comment rechercher au lancement :

Il ressemble à économiser la somme de contrôle MD5 de Plist et la vérification cryptid devrait bien faire jusqu'à un certain temps.

Vérifier la date iTunesMetadata.plist de PURCHACE comme parfois, quand une application est fissuré, cette date est remplacée par quelque chose de scandaleux.

Vérifiez également si le champ de nom de purchacer existe. Dans mon expérience avec la fissuration des applications pour un usage personnel, qui est habituellement retiré. Si quelqu'un sait comment la protection anti-décharge de Temple Run fonctionne, vous pouvez l'utiliser en conjonction avec une certaine protection que poedCrackMod ne peut pas obtenir (Google poedCrackMod créer hackulo.us compte, allez dev regarder centre de poedCrackMod, installez-le sur iDevice) .

embrayage qui ne craquera pas les choses avec Temple Run comme la protection, a une fonctionnalité appelée OverDrive destinée à réduire au silence la détection de fissures d'une application. poedCrackMod a LamestPatch, ce qui est aussi bon. Aussi poedCrackMod est un script bash open source qui peut être rétro-ingénierie. Pour résumer, vous avez une application qui a une protection contre la copie qui ne peut pas être contournée avec embrayage / overdrive mais peut être fissuré avec poedCrackMod. Cependant poedCrackMod ne peut contourner les années application dans les contrôles de piratage de l'application. Il est difficile de patcher vérifie integrety dans l'exécutable de l'application. Donc, votre application est difficile à craquer.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top