Hello everyone,
I'm looking to secure/licence/encrypt my software because it will be deployed on client side.
I want to prevent them to :
- run the soft if they don't have a licence
- do a reverse engineering on the code for the reverse engineering part, I use dotnetfuscator.
For the software utilisation, I was thinking about using an HASP key (sentinel dongle) which has to be plugged onto the server (usb port). There is also the fact that aspnetzero use his own "AbpZeroLicenseCode" mecanism to prevent unauthorized use of its code.
Has anyone has already thought about the use of HASP keys in the ABP environement ?
Or can we achieve the licensing with another way ? (a little bit more like "AbpZeroLicenseCode") Knowing that the client server can access in theory to internet, but could be disconnected for 2-3 days for example.
If you have any thoughts on how to prevent the execution of the software (HASP key, online licencing verification, ...) & where it's the best way to use it with abp framework; let me know ;)
thanks, daws
1 Answer(s)
-
0
hi,
I have no background about HASP Key but I'd go with my custom solution. Create a license page. When you first deploy, this page gets the machine HDD serial or MAC key of the server and generates a customer unique key. You create a basic console app that generates license key with this customer key. The customer enters this license key and it starts working. Everyday at a specific time, the application connects to your license server and validates the license (to prevent distribution of the license keys) To protect your license server you can make a IP based restriction as well. If the client doesn't connect your license server in 7 days. You show an alert on the client's application and stop working.
(Btw, AspnetZero License check mechanism only works when you are coding. It does not validate license when it's published.)