One interesting aspect of ElastoLab is how I protected it (or at least tried to) from piracy. Now that ElastoLab is freeware, I don't mind sharing information on how I did this.
If you downloaded ElastoLab, you are given the option to get a 7 day free trial. Once you provide your name and an e-mail address, ElastoLab connects to the Simberon web site and sent the data in a "POST" HTTP message to a hidden web page. Along with the name, address, etc. is the timestamp of the "ElastoLab" directory in the "Program Files" directory. The CGI script used this timestamp along with the current time to create a key to send back to ElastoLab. This key would only work on a machine that had the right timestamp for the ElastoLab directory and within 7 days of the returned timestamp.
Every time someone launched ElastoLab, it would verify check the key, make sure that the time is within the limits, verify that the current time was after the last time ElastoLab was run, and write it back out (along with the current time). It would write to both the registry and to the file system. If anything went wrong (one or the other was deleted, different, or invalid), it would write garbage data into both that would cancel the 7 day trial period.
I wanted to make it easy for registered users to use ElastoLab. When you purchased ElastoLab, I would provide a CD Key. This key is a number that's divisible by a large prime number then byte swapped in a fixed order and converted into alphanumeric characters. A key would only work if ElastoLab could convert it back into the original number and verify that it was evenly divisible by the large prime. This gave me millions of keys I could generate but placed the odds of getting one at random in the millions.
In one case, I found that someone had purchased ElastoLab then placed their public key on a "Crack" web site for others to use. I was flattered. I then added a patch to explicitly disable that key and put up a new version.