Question

Je viens de terminer une bibliothèque en Objective-C que je compilé comme une bibliothèque statique pour la distribution.

Je voulais savoir quelles sont les chances d'obtenir ce décompilé sont là-bas.

  • Connaissez-vous un logiciel qui peut le faire?
  • Si oui, comment pourrais-je me protéger mieux?

EDIT: Ma lib statique est faite pour iPhone / ARM

J'ai créé un algorithme qui, selon les certains paramètres de l'application, il peut fonctionner en tant que démo ou code complet. Vous l'objet avec init variables X et déverrouiller la version complète. Je me demandais s'ils peuvent créer un générateur de clé, ils seront en mesure de voir cet algorithme.

Était-ce utile?

La solution

Il est pas clair ce que vous essayez de vous protéger de . Oui, il peut être l'ingénierie inverse. L'outil le plus simple est otool, une partie de la distribution de développeur standard:

otool -tV <library>

A partir de ce qu'ils accourent à des choses comme IDA Pro , qui a le soutien iPhone est très agréable pour ce genre de travail. Entre les deux, je suis vraiment surpris que je ne l'ai pas vu une reprise de OTX pour iPhone / ARM encore. Je ne serais pas surpris de voir un spectacle finalement. Et bien sûr, il y a gdb si vous essayez de comprendre comment les choses coulent et que les données sont à différents points.

Si vous avez plus de détails sur ce que vous essayez de vous protéger contre, il peut y avoir des réponses ciblées. Au-delà, lisez les commentaires de Chuck.

Autres conseils

Si elle exécute, il peut être décompilé. Objective-C est particulièrement facile à décompiler en code lisible grâce à ses caractéristiques dynamiques. Si vous voulez faire des choses un peu plus difficile, vous pouvez écrire la plupart de votre code dans la plaine C et dépouiller l'exécutable - qui a bien sûr le compromis de faire votre conception d'application plus difficile à gérer. Mais soyez honnête avec vous-même: Si quelqu'un veut casser votre code, vous n'allez pouvoir les arrêter. Crackers ont des quantités pratiquement illimitées de temps et d'enthousiasme et seront effectivement excités par des efforts nouveaux que vous mettez pour les arrêter. Personne n'a encore fait le logiciel uncrackable, et les plus grandes entreprises du monde ont essayé. Tu ne vas pas faire mieux qu'eux, surtout si vous devez demander à ce sujet sur le débordement de pile.

Prenez le temps que vous avez mis en contrecarrant décompilation et l'utiliser pour rendre votre produit mieux -. Qui aura un meilleur retour sur investissement

ChanceGetsDecompiled = ExpectedGainFromBeingDecompiled / PopularityOfLibrary

Eh bien, si vous voulez vraiment savoir, je voudrais essayer décompilation votre auto. Vous ne dites pas si cela est pour PPC, Intel ou ARM qui fait une différence. Voici un décompilateur pour Intel i386 Decompiler

Je ne sais pas ce que vous pourriez faire (je ne pense pas qu'il y ait beaucoup) pour limiter cet effet. Le code peut toujours être ingénierie inverse. Soyez heureux que vous n'êtes pas en utilisant Java ou .net. Leur décompilation est si gentil.

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