0

I am new to iphone programming. I heard from few people that even if the iphone application is sold for money from itunes, it is possible to hack the application and install on another phone.

How much of this is true ? If true is there a way to programmatically control my application from getting illegally copied to jailbreaked or another iphone ?

thndrkiss
  • 4,515
  • 8
  • 57
  • 96
  • 2
    possible duplicate of http://stackoverflow.com/questions/846309/reducing-piracy-of-iphone-applications – Vladimir Apr 17 '10 at 06:30
  • I think if people want to copy your iphone app, then this is a good thing. It means its popular and you'll be getting lots of legitimate downloads too. – James Westgate Apr 17 '10 at 06:44

1 Answers1

3

No. It is impossible to guarantee that someone won't hijack your code and copy it. You can make it hard by using various different copy-prevention techniques, but nothing is fool-proof. A determined cracker will simply find whatever pieces of code you run to check things like device id, and remove them.

Marcelo Cantos
  • 181,030
  • 38
  • 327
  • 365
  • Is there anything like obfuscation for obj-c code ? if yes can that make hacking process tuff ?? – thndrkiss Apr 17 '10 at 06:48
  • 2
    The problem with obfuscation is that it defeats the optimiser, and for very little gain. Crackers don't rely on source code or clean structure, they'll just tease apart the state of the process around the time it decides to crash. You have to use tricks like testing for authenticity in several places in your code (and it can't just be a single function that's called from several places). Also you need to separate detection and failure as much as possible, and make the reason for failure as obscure as possible. This is a lot of work, and you have to ask yourself whether the payout is worth it. – Marcelo Cantos Apr 17 '10 at 06:55
  • I am just shooting in the dark. Pardon me if it is crazy. Will apple or the itunes server share the UDIDs of all legitimate users who have legally downloaded a particular application from itunes to the one who actually launched it ? – thndrkiss Apr 17 '10 at 06:58
  • 1
    @thndrkiss, Apple deletes our activity reports after seven days. I estimate that storing every activity report they've ever generated would consume a couple of terabytes, which is twice the size of the external drive sitting on my desk. Apple doesn't give a (please excuse the tormented emotional outburst) creap about its developer community. – Marcelo Cantos Apr 23 '10 at 10:19