title: How do I detect if an app has been cracked without examining the SignerIdentity?
body: <p>There used to be a method to check if an application was purchased from the App Store, to protect against cracking:</p>
  
  <pre><code>NSBundle *bundle = [NSBundle mainBundle]; 
  NSDictionary *info = [bundle infoDictionary]; 
  if ([info objectForKey: @"SignerIdentity"] != nil) 
  { /* do something */  }
  </code></pre>
  
  <p>but this method no longer works because the crackers have found ways around altering the Info.plist. I'm aware of <a href="https://stackoverflow.com/questions/846309/reducing-piracy-of-iphone-applications">this older question</a>, but the answers presented there rely on the above technique, which is no longer valid.</p>
  
  <p>How can you detect whether your application was cracked or purchased legitimately from the App Store without reading the SignerIdentity from the Info.plist?</p>