Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Best way to distribute evaluation version of any software?

Tags:

.net

piracy

I would like to distribute my software (.net windows application) with evaluation version of 30 days irrespective of system time.

I do not want to use internet for fetching time as software is to be run on machine without internet.

Can anybody suggest me how can I distribute my software without using system time and internet ?

Also is it possible to limit number of computers on which it can be installed?

like image 989
Xinus Avatar asked Mar 20 '11 11:03

Xinus


1 Answers

Without external support this is impossible.

A circumventing user would just install your software in a virtual machine, that's configured in copy-on-write mode (so all changes in the VM go to a separate disk image), and upon every start of the VM the VMs system clock would be set to a specific date. This VM image could be transferred to as many computers as one desires, and the VMs system clock would always start of the same date. Also any runtime effects on the OS, like a runtime counter you'd install would be reset with every fresh start of the VM.

The only way to effectively limit the use of your software is to tie it to some external data source. Either over the internet, or by shipping it with a hardware dongle featuring its own clock; That dongle could be also some small form factor network device, handing out licences, so a single dongle may licence a number of computers.

However you cannot do it with just software.

like image 140
datenwolf Avatar answered Oct 01 '22 21:10

datenwolf