Reputation: 27
In my application I am gonna use online activation to control piracy.but the problem is that once user activates the software, how do i detect that that application is activated.is there any way to store the data that this application is activated. don't tell me registry because this way is not secure.Any information related to online activation will be helpful to me.i have decided to create file in system drive and my application check for that file every time it starts.If file found then application starts and if it doesn't then it ask for the key. is that secure ?any suggestion will be good!!
Upvotes: 0
Views: 326
Reputation: 432
The issue you mentioned is one you need to consider, but there are many others:
Just some things to think about based on years of experience in the field.
Upvotes: 2
Reputation: 605
There are two different takes on "securing the activation data" that I can see:
1) If you are trying to secure the activation data from the user, so that the user can not copy the data to a different computer and use the software there as well, I propose the following protocol:
During activation, uniquely identifying features of the user's environment are hashed and sent to the activation server. The activation server generates an activation that is signed using a secret key. On product start, your product verifies that the activation was signed by your server (using the server's public key) and that the local environment hashes to the same signed value contained in the activation. If it fails, then the environment has either changed (new installation of the operating system?) or the data has migrated to a new environment requiring (by the sounds of it) a new license / activation. Either way, the user requires a new activation.
2) If you're trying to protect the activation data from corruption then consider supplementing the former protocol with logic that, if the customer tries to re-activate with the same UID, allow the activation to go through again, which should result in an identical activation instance being sent back to the customer.
These are off the cuff, I don't guarantee either of these to be bulletproof. Also, remember, a pirate only has to bypass verification for activation to be a moot point.
Also, I feel it's important to note that, with this scheme the idea is that you don't have to hide activation information anywhere. You can store it wherever is convenient.
Upvotes: 0