Every run license validation

Post here any topics that related to Enigma Protector, its functionality, your misunderstanding, offers to improvements etc etc etc
Post Reply
Benny Sigalov
Posts: 2
Joined: Wed Jan 02, 2013 8:25 am

Every run license validation

Post by Benny Sigalov »

Hello,
My company is developing a portal with games.
The games are only wrapped by us so we cannot recompile them.

The license of a game to run is determined by user that is currently logged in and not bound to single computer.

Could we use enigma to protect our game?
How do we implement the user validation before each run?
Is it a custom plugin we need to implement, or any other solution.

Have a nice holidays,
Benny
Benny Sigalov
Posts: 2
Joined: Wed Jan 02, 2013 8:25 am

Re: Every run license validation

Post by Benny Sigalov »

Forgot to mention, we have a launcher application runs on the client computers.
Users logs in using this app.

What we would like to achieve is that users can only launch from our launcher application, according to their licenses stored in our servers.

Is it possible, that out server will generate something like one time ticket for the game to run. Then the launcher app will forward this ticket to enigma protected game (either by command line or file) for validation and game launch?
Enigma
Site Admin
Posts: 2943
Joined: Wed Aug 20, 2008 2:24 pm

Re: Every run license validation

Post by Enigma »

Hi Benny,

Yes, I can advise you something.

There could be different modifications, but the common scheme could be looking as following.
1. Probably, the launcher asks user to enter something that will determine this user, right? Imagine, user enters some login and password. Then, launcher need to save this login/password somewhere, for example, in registry. And then it will run main program which will be protected.
2. Protected exe should use plugins system of Enigma Protector. You should develop customized plugin that will do the following:
- In the function Enigma_Plugin_OnInit - you need to read the login and password saved by launcher from registry and also delete it from there
- Connect to your server, pass login and password to the url request.
- Your server, should generate a registration key for Enigma Protector, using it's CGI Keygen for example.
- Server returns the key to protected application and it checks if the key is valid or no, by the function (EP_RegCheckAndSaveKey).
- If the key is valid, plugin has to continue execution of protected file as well.

What about more customizations. In the Enigma_Plugin_OnInit function you may store the key returned by the server somewhere inside global variable. Then, in the plugin function Enigma_Plugin_OnSaveKey just return a true value, without doing anything, this will saving license by the protector. And finally, in Enigma_Plugin_OnLoadKey you will return the key from the global variable. This will make the scheme stronger.

So, the logic assumes that protected program will connect to your server each start, and will return a key from it. If the key is not valid, program won't run.
Post Reply