To implement a copy protection and license with multiple features for Linux, Android or IOS the following steps are required:
•Retrieve a unique device ID like MAC address or volume ID on Linux. Smartphones do either have a unique device ID, operating system ID or MAC address.
•Hash the ID to an 8 digit number
•Make a screen where the user can type in the Serial Number / ID, name and e-mail address
•Validate the Serial Number / ID using an https request to the Activation Server 6
https://servername/lpweb/KeyGenerator.aspx? |
|
projectname=demo-easygo& |
'project name defined in the project template |
entrykey=LNGEG-5IPc6-9E7Im-3tQ8X-MQU5k-6ii4W& |
'Serial Number / ID |
instcodetype=13& |
'Installation Code / Hardware ID used for copy protection. This has to match with Selected IDs for initial activation in the product configuration |
instcode=170D9F7C& |
'Hardware ID - must be an 8 digit number |
requesttype=2& |
'must be 2 |
moduleid=QHD001& |
'module ID defined in the project template. Normally this is the main module ID. |
customername=Smart Inc.& |
'name of the user |
email=tom.hanks@smartinc.com |
'e-mail address of the user (optional) |
oemname=mycompany& |
'name of the manufacturer of the product. This information is stored on the Activation Server 6 (optional) |
allkeys=true& |
'must be set to true |
password=ycnsjldsd78z9h |
'password - see security settings. The IP address is automatically sent with the request to the Activation Server 6 |
Return values
The result will either be
•a unique key (which is the return code for license validation passed) or
an error beginning with the word Status:
•Status: key already used (which means that the Serial Number / ID) was already used on another computer
•Status: key doesn´t exist (which means the Serial Number / ID is unknown)
•Status: module is locked (the Serial Number / ID was locked - license was revoked)
•Status: unknown project (the project name is used for a project which is not uploaded to the Activation Server 6)
•If the validation is OK then store the hardware ID in a save location
•Every time your application is starts, compare the hardware ID with the one you have stored in the save location
Example Link
Click on the link below to validate the Serial / ID qOGE3-5IPb6-9E7IL-3tQ8X-6QU5k-6Si4v using the demo Activation Server 6. It will accept the same Serial Number multiple times as the hardware ID is always the same.
Regular Online Checks / Revoke a license
If you validate the license regularly (eg. every 10 days) you can revoke a license - Details
Features / Module
You can license features / modules. The number of features is not limited. Just add a new module with a unique module ID in the project template. The Serial Number is unique to a feature / module - that means that a Serial Number for module A will not work for module B.
Using one Serial Number / ID on multiple computers
It can be defined, on how many different computers one single Serial Number / ID can be used - Details.
If the hardware ID changed, you can make a new license validation. In case other hardware IDs are still the same, the license will be automatically linked to the new hardware ID. If this feature should be used, you have to provide multiple hardware IDs.
The number of installation codes required depend on the settings defined in product configuration - Selected IDs for reactivation.
If you want to pass multiple installation codes, you have to send ALL possible codes. This version of Licence Protector 5 supports 13 different codes.
You have to omit the value instcodetype and provide all 13 installation codes separated with a semicolon. If for the reinstallation e.g. only 3 hardware IDs are required, the others can be left blank.
•You have to use the method GET (not POST) for the https request
•For a complete list of all parameters including the changing of the security parameters like password see Create Keys by external applications
To use this feature you have to:
•Upload the Serial Numbers to the Activation Server 6. Either import a complete key list with own Serial Numbers / ID or create Serial Numbers using the Activation Server 6
•Configure the Activation Server 6 that only keys are accepted, which are already stored in the database. See Serial Number has to be saved before it can be used in the product configuration how to configure this feature
•Configure a password within the security settings
•Configure how many requests per minute are allowed to block a possible SPAM attack