Forum > General
Simple licensing scheme?
mijen67:
Any ideas for a simple licensing scheme with the following features:
Per user license.
Locked to three devices per user (cross-platform)
30 days trial, selected features are locked after 30 days (maybe separate binary if easier)
rvk:
http://wiki.lazarus.freepascal.org/OnGuard
--- Quote ---This version of OnGuard is port of Turbo Power OnGuard. OnGuard is a library to create demo versions of your Delphi, Kylix and Free Pascal applications. Create demo versions that are time-limited, feature-limited, limited to a certain number of uses, or limited to a certain number of concurrent network users. You could also protect executable file from modification, either by hacker or malware. Most functionality has been tested to work under Windows, Linux and FreeBSD.
It has now been designed for cross-platform applications (Windows, Linux, FreeBSD etc). Pure Object Pascal. However some features are heavy system dependant. OnGuard doesn't depend on the Lazarus LCL, so you could also use it in Command Line, Web or other GUI toolkit applications.
OnGuard is distributed as a source-only package. The download contains the component package for Lazarus + documentation (pdf and hlp file) and probably all original examples ported to Lazarus.
--- End quote ---
mijen67:
--- Quote from: rvk on January 20, 2018, 01:00:48 am ---http://wiki.lazarus.freepascal.org/OnGuard
--- End quote ---
Thanks, seems like this certainly can do what I want to do. However, it also seem to require a significant amount of extra work - in particularly compiling Lazarus which I'm not sure I want to do (still newbie, struggling a lot with ... a lot :D ).
Basically I just want to enable program for 30 days trial, and then lock it down if it hasn't been enabled by license key. So I guess I'm just searching for hints on how to generate keys and simple methods to store time of first use that regular users cannot break (Hackers for sure will be capable of getting around this, but I don't care about that). Just something that makes it very difficult for non-hackers to get around.
rvk:
--- Quote from: mijen67 on January 20, 2018, 07:44:39 pm ---However, it also seem to require a significant amount of extra work - in particularly compiling Lazarus which I'm not sure I want to do (still newbie, struggling a lot with ... a lot :D ).
--- End quote ---
Actually, it doesn't require any component.
But you should know that ANY component you want extra in Lazarus will require the recompilation of Lazarus. But it isn't that hard. Just confirm the installation and Lazarus will re-compile itself.
But like I said, although OnGuard does have components to just drop on a form, you CAN do it without components. But it's a but harder because you would need to call the correct functions yourself.
--- Quote ---Basically I just want to enable program for 30 days trial, and then lock it down if it hasn't been enabled by license key. So I guess I'm just searching for hints on how to generate keys and simple methods to store time of first use that regular users cannot break (Hackers for sure will be capable of getting around this, but I don't care about that). Just something that makes it very difficult for non-hackers to get around.
--- End quote ---
Generating the keys is just what OnGuard does. Storing that key is up to you. You can save it in the registry or save it to a file. Both methods are susceptible to hacking. That's why I use a combination of online keys.
You can look at the source-code of OnGuard to see how the keys and machine-codes are generated.
mijen67:
--- Quote from: rvk on January 20, 2018, 08:31:50 pm ---
--- Quote from: mijen67 on January 20, 2018, 07:44:39 pm ---However, it also seem to require a significant amount of extra work - in particularly compiling Lazarus which I'm not sure I want to do (still newbie, struggling a lot with ... a lot :D ).
--- End quote ---
Actually, it doesn't require any component.
But you should know that ANY component you want extra in Lazarus will require the recompilation of Lazarus. But it isn't that hard. Just confirm the installation and Lazarus will re-compile itself.
--- End quote ---
Got it.
Now I want to try to install OnGuard. The readme file is probably fine, but not for a newbie:
1. Unzip the release files into a directory (the best it \components subdirectory
of Lazarus tree).
2. Start Lazarus.
3. Open & install the package. This requires a Lazarus IDE rebuild.
Steps 1 and 2 are ok, but 3 assumes some knowledge I don't have. There is no menu called "Open & install package", however there are related menu items:
Open loaded package
Open package file (.lpk)
I saw multiple .lpk files in the onguard-master directory:
tponguard.lpk
tponguard_design.lpk
tponguard_fpgui.lpk
So I guess the option "Open package file (.lpk)" is the correct option. Next uncertainty. Which one of above three packages to choose? Readme just states "the" package ...
Ok, so maybe I can find help here: http://wiki.lazarus.freepascal.org/Lazarus_Packages . Unfortunately I couldn't find, for me, useful hints so I gave up and guessed that maybe I'll just open package file "tponguard.lpk".
Now a new window pops up with options: Compile, Use, Add, Options, Help ...
Compilation went fine (green background on topline in messages window) with some hints though. What to do next?
Navigation
[0] Message Index
[#] Next page