Lockonly : this project isn’t implied in activation. This is just a dummy sample of some program to activate.
Productkey : this project builds a product key (25 numbers and digits) from a 32 bits ID (can be an integer counter in your license database). The product key is built from your private keyset; this makes difficult, knowing a license ID to know the next one, preventing hacker from finding un-activated licenses by trying each 32 bit number.
Wizard : this is an activation wizard. It builds a configuration string from
1. A product key
2. The software to activate
3. A piece of hardware (computer or USB storage)
Webservice : This a license generator, designed as an ASPNET web service. From a config string, it returns a matching license key. To build a commercial activation service, you’ll need to connect it to a database and check license validity and handle previous activations.
Keygen : this is an ‘all in one’ license generator. It can be used as a tool to build ‘internal use’ licenses, and to verify your activation system. It builds a product key from a number, tries to retrieve the number from the product key, builds a ‘config string’ from this key, the software to activate and hardware, and finally builds a license key.
ActivationEngine : This project wraps dotNet Protector Activation Methods for the web service.
Building the solution
1. Export your keyset (from dotNet Protector’s menu Tools/Export Keyset) to the ActivationEngine and the Keygen directories.
2. Rebuild all the solution
3. Protect wizard, keygen and lockonly (wizard.dpp, keygen.dpp and lockonly.dpp projects respectively)
4. Try to run lockonly without a license key. (It should crash)
5. Run keygen against lockonly ( keygen 1000 lockonly.exe ). It should build lockonly.exe.license containing the product key and the license key.
6. Run lockonly.exe. It should run on the same computer and fail on another.
Building the wizard:
Build the webservice and deploy it on a IIS web server.
The wizard references the webservice at ‘http://localhost/activationsample/service.asmx’ change the url to refect the working one. Build the wizard and protect it using wizard.dpp.
Protect lockonly using lockwiz.dpp (the wizard will be embedded into your exe).
Run lockonly without a license file. It should run the wizard, activate the software, and finaly launch lockonly’s entry point if successfully activated.