I am creating a software product and want to allow users to install the software onto up to N machines. Is there a service or script out there that handles the registration of software to prohibit illegal copies? I know that for some of the things I've bought in the past, like Keyword Elite, it only lets my user-key be installed on two machines. I'd like to get something like that for my product. Thanks for any help!
Is this a desktop application or web script (i.e. PHP)? If it is a web application, you could use something like www.ionolicensing.com or www.phpaudit.com (phpaudit bought iono, so might as well just go with phpaudit!)
There are a number of different ways you can limit access. You can activate online, or do hardware locking but that can be frustrating for customers who upgrade their equipment. This gives some information on Software Protection you might find useful - http://www.developer-resource.com/how-to-protect-software.htm Other resources are: SIC - http://www.sic.org its an annual software conference and there usually a session on software protection, they go into far more detail in person online for obvious reasons. Also the ASP http://www.asp-shareware.org has some information on software protection. HTH
If it's a web script then all you really need to do is create a database of license keys which have the reg# and the domain name it's authorized on. Then have your application connect to the database each time it runs to check the information. If the license key doesnt exist or whatever you just stop running the app. You need to encode all your files for this to work, else someone will nullify your validation code.
Ghalt, It is a complicated process but your payment processor has a role to play in it, I will layout the skeleton process flow for you. Use Payment processor API and register the sales in your own database. Set counter to 0. Transaction id is registered which is the unique key. Welcome email is sent to customer with this transaction id and download link. Software installs on client machine. Client has to put name and transaction id . Redirected to website where the script checks the validity of the transaction id and issues registration code. Counter is increased to 1. You can set the max_counter according to your requirement. I use the same for my products and it works like a charm.
You can use a wrapper to protect the software but they can be hacked. YOu can create a separate download for the "full version" and a diabled version for the trial. The downside of course the "full version" could be posted by hackers.
Ghalt, as some poeple above said, you did not write if this is php or what. If this is a php script, You can use PHPLicengine to license and distribute it. I think it has more features than iono and phpaudit. The best way is that you use and compare different softwares of this type and choose the best you like.