in reply to Re: Registering and License Keys
in thread Registering and License Keys

I personally like the idea of a registration database kept somewhere on your site. You'd want to make sure that the registration keys are time limited and specific to requesting site. For example, the program requests a key from the license server, the server verifies the registration (by the sender's public key) and then replies with a pgp encoded payload consisting of the requestors IP, a time stamp, and a license expiration date. Assuming that the pgp is decrypted properly the software is unlocked to run on that IP (or domain) for some period of time (say 48 hours). The use of pgp is pretty crucial though as it provides verfication of the requestor and assures the veracity and timeliness of the license. If user requests a demo license you can do something like provide a time limited license key that explicity locks off portions of the functionality. Obviously none of this prevents people from trying to hack your source code to remove the security checks. However, if you do it properly you can make it more difficult and probably buy enough time and money to have the code ported to C.