1

This is my first attempt to implement an anti-piracy code in my App.

I am using the Landon Fuller method (LC_ENCRYPTION_INFO).

This method is based on the App being encrypted when downloaded from the App store.

I checked and found out that downloaded Apps are indeed encrypted. I also found out that when I create my App in Xcode - even if I use Release build - the App is not encrypted yet.

Here's my question: When I upload the App to Apple using Application Loader, will they test it after it has been encrypted or will they test it in its unencrypted form? The latter will cause the App not to function properly, which will of course result in the App not being approved.

Amiram Stark
  • 2,208
  • 22
  • 32
  • How will you test it yourself if you can't get the encrypted version from the AppStore? You're going to submit untested code? I attempted something similar with my first game, and in the second update I removed all the anti-piracy code as it was getting in the way of making a good app instead. The result was a lot of piracy in China, which lead to an increase in sales in China longer term. The most sensible reason to use piracy detection would be to limit server load for apps with an expensive back-end. Maybe you can disable the checking from the server side while Apple review the code. – ikuramedia Jan 24 '12 at 16:22
  • Testing is not a problem. I got to the correct field in my code and found out that encryption is Off. I also got to the correct field in Apps purchased from the App store (using otool, not code of course) and found out that it's On. I simulated the expected behavior for both On and Off. I wish I could be that confident with other parts of my code :) I thought about deferring the test for some weeks to let Apple review the code, but I was wondering whether this is necessary. – Amiram Stark Jan 24 '12 at 17:06

1 Answers1

3

This article is old and thats the wrong way to deal with piracy. (using In-Apps you can verify purchase)

Most chances the app will be rejected because of using undocumented APIs, the Author himself state he is not using it anymore.

quote from the page:

However, there's a problem -- none of this is documented by Apple. While most of the APIs and file formats are public, the actual distribution format is not. Apple could change the signature format, the meta-data plist, or any other distribution component at any time, at which point your copy protection may raise a false positive, and your paying customers will be wondering why you're wasting their time.

So the answer for your question is dont worry how they going to test it because it wont pass.

user513790
  • 1,225
  • 1
  • 13
  • 22
  • How can I verify that the App itself (not something from within the App) was purchased using In-App? – Amiram Stark Jan 24 '12 at 16:41
  • That's what I meant too. How can I verify that the App itself (not something purchased from within the App) was purchased using this API? And also, can't a pirated App use In-App Purchase? – Amiram Stark Jan 24 '12 at 17:05
  • dont think its possible to track app downloads from the app store, maybe someone else knows a way to do it. but if you make the app free and charge for the in app you get the same money, maybe even more because its free so more downloading it. everything can be pirated , its all come down to a question how much efforts is needed to crack it. – user513790 Jan 24 '12 at 17:26