Software Licensing is the most common way used for selling commercial software in the internet and also for locking usage of the program to the particular user or computer. In this post I will explain what is Software License and how to apply it to existing software using Enigma Protector.

How Software Licensing works?

Imagine you have written a software which runs on a Windows PC, but you want to lock it by license, so only licensed users will be able to use it. “Lock to License” means the application will require a license key to run it, without valid registration key it is impossible to run and use protected programs. By using Enigma Protector you can protect your software and apply licensing features. After protection you can share protected application with customers.
After the first start of protected program (which is protected with licensing) it will ask user to enter a Registration Name and Registration Key. Registration Name may contain any information, commonly it determines the user first and last names and email address. The Registration Key is being generated in Enigma Protector by software developer and delivered to end user. So each customer will have to ask you for a license (i.e. the pair of Registration Name and Registration Key).
Once user enters Registration Name and Registration Key and successfully registers, the program will continue execution and won’t ask for license information anymore.

How to Lock License to Particular PC?

You may generate licenses that are valid for a particular computer only, such licenses are named as Hardware Locked Licenses. There is the following licensing scheme for using of hardware locked registration keys:
– user gets the protected program, run it, the program shows a registration dialog which contains the Hardware ID field (unique computer identifier)
– user sends this hardware id to the owner of protected program
– owner, based on a hardware id generates a license (pair of Registration Name and Registration Key) and send it back to user
– user enters this name and key and successfully registers. If user will try to register same application on another computer with the same registration name and key the owner of program provided – it will just fail to registers (because the registration key is generated for only particular hardware id).

Other License Limitations

Enigma Protector allows very flexible licensing features. Except locking license to particular computer you may also set a wide range of other different limitations, like:
– limit license by number of executions of protected program. The license will expire (stop to work) after defined number of executions
– limit license by a days number, so it will working only allowed number of days since the first registration
– lock license to user’s country
– lock license by a run-time or global time. will be valid some time since each execution (run-time limit) or protection will count the time since registration (global time limit)

There is a tutorial that shows how to implement licensing features with Enigma Protector, how to generate registration keys and what options in protection has to be enabled.

Video provided by Majid Pasha. Thanks you very much Majid for the nice and very useful movie!

We recommend to use Enigma Protector for Software Protection and Software Licensing!