Suggestions and Tips to help protect your application more

4 suggestions and Tips to help protect your application more
  • Obfuscate your code. Dotfuscator has a free edition and comes with Visual Studio.
  • Use public/private key or asymmetric encryption to generate your product licenses. This ensures that only you can generate your license codes. Even if your application is cracked, you can be sure that they won't be releasing a key generator for your application, because it is impossible to reverse the key generating algorithm.
  • Use a third-party packer to pack your .NET executable into an encrypted Win32 wrapper application. Themida is one of the better ones. This stops people from reflecting your application in .NET Reflector and makes it a pain to unpack for reversing.
  • Write your own custom packer. If the third-party packers are too expensive, consider writing your own. Sometimes custom packers can be very effective, because there aren't well published methods on how to unpack them. The tutorial How to write your own packer gives a ton of good information on writing your own Win32 packer.
  • Use online update to block those unlicensed copies.
  • Verify serial number from different modules of your application and do not use a single function call to do the verification (so that crackers cannot bypass the verification easily).
  • Not only check serial number at startup, do the verification while saving data, do it every Friday evening, do it when user is idle ...
  • Verify application file check sum, store your security check sum in different places.
  • Don't go too far on these kind of tricks, make sure your application never crash/get into malfunction while verifying registration code.
  • Build a useful app for users is much more important than make a
    unbreakable binary for crackers.
By Drupal Study