144 votes

Jeu Android maintient avoir piraté

Donc, nous avons été par le biais de ce plusieurs fois maintenant, nous sortir un jeu (pour pas cher) et quelqu'un hacks et le place sur un miroir. Nous avons le programme d'installation de Google Alertes pour toutes nos applications, nous avons donc dit quotidien qui fait du piratage. Jusqu'à présent, nous avons mis en place le service de gestion de licences comme Google l'a suggéré, notre sel est fait au hasard à chaque fois que la licence est initiée avec l'IDENTIFIANT unique de l'appareil. Nous courons le service de vérification de fois, lorsque l'application est démarrée pour la première fois. Nous avons ensuite générer un 512 caractères de la clé et la valeur qui est comparée à SharedPreferences.

Maintenant, je sais que la vérification une fois est probablement là où la demande est bloqué. Notre bytecode a probablement été regardé et recompilé sans la ligne qui lance le chèque.

À partir d'ici, je ne veux pas obscurcir notre code comme je l'ai vu, il est rompu avant. Je veux quelque chose d'un peu plus solide, et je veux aussi savoir comment le faire correctement. Je suis plus intéressé par l'apprentissage que de faire de l'argent à ce point depuis seulement 2% des personnes jamais regarder pour une version piratée.

Jusqu'à présent, sur mon propre, je suis venu avec un générateur de nombre aléatoire qui est placé dans plusieurs zones du jeu. Lorsque initié (disons, 1 de 50 fois) la licence est activée. Je sais que ce serait plus difficile à pirater parce que le pirate aurait pour éliminer chaque cas, de compiler, d'éliminer, de les compiler. Cette méthode, cependant, est encore crackable...alors, que faites-vous les gars? Encore une fois, je suis vraiment intéressé par ce processus de sécurité, veuillez donc de l'éduquer, de ne pas transformer cela en une discussion sur l'obfuscation ou de vérifier périodiquement en fonction de l'heure et la date.

Merci

117voto

BerggreenDK Points 2547

Mon idée n'est pas la preuve de pirates, mais peut supprimer certains de l'intérêt pour le piratage du jeu.

Modèle Freemium

1) Faire le premier 5 à 10 niveaux gratuits afin que les gens peuvent apprendre le jeu et de s'amuser sans payer. Moins envie de pirater le premier niveau et le jeu se propage encore plus par le modèle Freemium.

Shareware/cluster levelpacks

2) Laisser une partie de l'niveaux de jeu ou de la logique de rester en ligne. Par exemple. lorsque vous atteignez le niveau 5 ou 10 ou 15, puis de télécharger de petites pièces pour le jeu, et à chaque fois présenter le progrès-le journal dans le jeu et valider cela contre les valeurs possibles + hashcodes. Cela pourrait peut-être possible de fermer automatiquement vers le bas de comptes piratés.

Stealth tricheur protection

3) Vous pouvez également juste de compter les "petits drapeaux" que vous placez dans le jeu. Ne suffit de vérifier pour la "validation" dans le commencement, pas de construction de ces indicateurs dans le jeu de la logique elle-même. Ne pas faire de pause le gameplay, car alors ils n'arriveront pas à le chercher. Ensuite, lorsque l'utilisateur atteint la fin du niveau monstre, vérifier s'il y avait tout enregistré des drapeaux. Ces ne sera pas apparaître à l'intérieur du jeu, de sorte que la méconnaissance de l'utilisateur avec un piraté édition pourrait être de jouer pendant des heures/jours et soudain compte qu'il/elle ne pourrais pas terminer le jeu ou à l'avance au prochain niveau, parce que le jeu a eu un "bug". Ce que l'utilisateur n'a pas sais, c'est que ce bug ne se passe piratés sur les clients.

Conclusion

Être plus intelligents que les craquelins. De les tromper en pensant que le travail était fait. Faire un copyprotection et de savoir que la plus avancée des craquelins sera en mesure de le retirer. Mais ils ont probablement ne veux pas jouer 50 niveaux afin de vérifier si la fissure travaille également sur tout le chemin.

Une fois qu'ils se rendent compte de ce problème, ils pourraient commencer à se fissurer. Mais si vous cassez le jeu en niveau-packs, vous pouvez toujours valider entre chaque pack de téléchargement. Donc, une fois que vous recevez piraté client de hachage de données, alors il suffit d'exécuter une exeception et le plantage du jeu sur le client. Oups le jeu s'est écrasé. Ne dis sa parce que sa piraté. Une erreur de programme peut se passer. :-)

De nouveau, ce n'est pas la preuve de pirates. Mais il pourrait ennuyer suffisamment pour passer à la partie suivante. Enfin, vous pouvez également mettre régulièrement à des mises à jour pour le jeu et uniquement la dernière version devrait être en mesure de "afficher les dossiers" etc. si les utilisateurs actifs faudrait mettre à jour pour le garder dans la boucle.

20voto

Aleadam Points 25433

J'ai fait quelques apk décompilation et le piratage pour un temps (pas de warez, mais les mods et hacks, surtout vers les google apps et android cadre, toujours respectueux de xda-developers politiques).

Une fois que vous apprendre à lire smali, c'est presque comme la lecture de l'original du code java (mais avec plus de lignes de crédit (Ldc). Donc, tout code que vous ajoutez à vérifier pour les clés peuvent être trouvés et supprimés ou remplacés. Vous n'avez même pas besoin de recompiler à chaque fois afin d'éliminer plus d'un (certaines recherches faire de miracles pour trouver des morceaux de code) et, même si la compilation/recompilation cycles sont nécessaires pour les trouver, c'est juste une question de une ou deux minutes pour décompiler: tout est automatisé par apktool et encore plus par apkmanager.

Cela dit, ma suggestion pour vous est de mettre en place une sorte de en ligne table de marque ou similaire, et lorsque l'utilisateur regarde le tableau des scores en ligne, vous pouvez vérifier le hash code que vous avez mis en œuvre et de le comparer avec le compte gmail. De cette façon, vous pouvez signaler le hack de google et d'envoyer un mauvais message à l'utilisateur de le warez, expliquer pourquoi c'est illégal.

Bien sûr, un nouveau hack pourraient être mises en œuvre pour éliminer la table de marque, mais qui permettrait de réduire l'intérêt pour le warez.

Bonne chance.


Mise à jour

Après des recherches afin de répondre à cette question: l'Injection de code dans APK (vraiment sur le Amazon DRM mécanisme), je peux dire un peu plus sur la façon dont Amazon est de protéger les applications: il inclut des méthodes pour la vérification de l'installation de validité partout (vous pouvez voir un exemple de la façon dont ils le font dans ma réponse à cette question). Cela fera toute tentative de hack une application pas très difficile, mais il est extrêmement fastidieux. Je crois que c'est un point fort: les pirates ne voulez pas passer trop de temps à faire de nombreuses tâches répétitives: c'est pas difficile et c'est ennuyeux. Le principal défaut que je vois dans cette approche est la possibilité de pirater le Amazon app elle-même pour toujours retourner une réponse valable, bien sûr. Mais, si vous mélanger votre actuelle hachage vérifie avec une certaine sorte de l'enregistrement en ligne dispersées parmi vos méthodes, je crois que les chances de l'obtenir piraté peut être considérablement réduite.

20voto

TryTryAgain Points 4212

Pris de ma solution de ce post Éviter apk craqué

Mettre en œuvre votre propre licence de la bibliothèque

Je voudrais aussi vous référer à consulter ce à partir de Google I/O 2011 YouTube de l'enregistrement:

Éluder les Pirates et l'Arrêt de Vampires

EDIT:

Les Notes de Présentation de se Soustraire à des Pirates et l'Arrêt de Vampires

Certains de base keypoints

8voto

olivierg Points 7200

Je sais que vous n'êtes pas vraiment dans la dissimulation, mais j'ai vraiment besoin de réagir à ceci:

À partir d'ici, je ne veux pas dissimuler notre code comme je l'ai vu, il est cassé avant de. Je veux quelque chose d'un peu plus solide, et je veux aussi savoir comment le faire correctement.

ProGuard est très fiable dans mon expérience, et ce, bien que j'utilise un couple de fonctionnalités avancées telles que l'AIDL et du code natif qui appelle la méthode Java.. Il faut un peu de travail pour lire la documentation et de faire les choses correctement, mais une fois que vous y êtes ProGuard est très fiable et permet également d'optimiser votre application.

De sécurité personnalisé/cryptographiques astuces sont bonnes, mais sans dissimulation c'est comme jeter une pierre dans l'eau, à mon humble avis.

J'ai utilisé ProGuard dans la production de plusieurs mois, et il fonctionne parfaitement.

Si vous êtes en apprentissage, puis de lire le ProGuard attentivement le manuel, d'expérimenter avec elle, et d'inspecter ses journaux de sortie.

4voto

Margus Points 6175

Chance, qu'il y a plus talentueux programmeurs, VOUS (s'applique pour tous les programmeur), est de 100%. Et si c'est vrai, vous ne pouvez pas réparer le piratage. Mais vous pouvez passer autant de temps et d'efforts à faire faillite.

Si vous voulez faire de l'argent grave vous avez besoin de faire quelques recherches sur votre groupe d'utilisateurs cible, et les sciences du comportement. Vous avez besoin de rendre les utilisateurs de jouer qui apportent de l'argent frais, et c'est tout.

En outre, vous avez eu tout faux. Les Hackers sont des membres les plus actifs de votre base d'utilisateurs, ta juste à se comporter d'une manière que vous n'avez pas l'intention de le faire.

Prendre jeux de Zynga sur Facebook par exemple, vous pensez que vous tes piraté? - Bien sûr, et +100000 joueurs seulement de jouer, parce que ton peut utiliser des bots, que tout automatiser.

Avoir énorme base d'utilisateurs de réseaux de robots de personnes réelles, fait archiveur type de joueurs veulent jouer le jeu, et si ton jeu, et il a l'air cool, alors Avarage Joe aurez aussi envie de jouer. Si Avarage Joe joue, puis ses amis veulent jouer, et ton ne sera probablement pas de soins de rien d'autre, puis d'être mieux que son ami, de tuer le temps ou d'avoir quelque chose à discuter à propos d'. Avarage Joe amis seront probablement prêts à payer pour être mieux que Joe, mais plutôt ton aimerais investir dans quelque chose qui les rend capables d'être mieux.

En outre, si la valeur réelle est de jouer le jeu gratuitement, les utilisateurs qui utilisent le logiciel gratuit version piratée, sera plus que probablement n'aurais jamais payé pour cela. Mais ton sont Avarage Joes et de leurs amis pourraient. Donc, c'est comme le moins cher de la publicité que vous pouvez avoir. Si vous voulez faire de l'argent de votre grand nombre d'utilisateurs, puis il suffit de faire de nouvelles versions du jeu avec de petits changements de niveaux et des graphismes.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X