Page 1 of 1
Advice on creating a product registration system
Posted: Sat Feb 09, 2013 2:37 am
by magice
I have just completed a suite of 4 windows apps that i would like to market. I plan to make them cripple ware until an activation code is purchased. I have never done anything like this before. My thought was to use the users email, run it through an encryption sequence, and then use the results as the activation key. Then have the app look an the two values, decrypt the activation key and see if they match. I thought I might use the registry to hold the email and activation code value, but i am nervous about making registry entries. I could also use a simple text file, but i am afraid that it would be too easily hacked, or that the txt file would just be shared. I am looking for advice on how others have done this. It will not be expensive software, and I hope that lifetime membership to a supporting website will be incentive enough to use a registered copy, but I don't want to make it too easy to hack. Also as a side note, two of the four apps will contain un-compiled rev files in order to allow saving. So, technically anyone who has run-rev will be able to write out the security anyway. The security is just to keep the majority honest, not the tech savvy.
Re: Advice on creating a product registration system
Posted: Sat Feb 09, 2013 4:20 am
by Simon
Here for LC:
http://www.runrev.com/store/product/zygodact-1-0-4/
And you can password protect your rev files, except (I'm not entirely sure on this point) if they use template objects. Then you have to "set the passkey of this stack".
Simon
Re: Advice on creating a product registration system
Posted: Sat Feb 09, 2013 5:20 pm
by magice
Thank you. Someday when I have actually sold some apps I would love to invest in the many add-ons that make work easier. Until then, I have to find a way to do it without those add-ons. I think I have figured out how to do it with the registry and an encryption sequence. This seems to be the best option.
Re: Advice on creating a product registration system
Posted: Sat Feb 09, 2013 8:28 pm
by jacque
Thanks for the Zygodact plug, Simon.
You can password protect any stack regardless of what it uses. Once protected, the only way to get into the scripts during development is to set the passkey of the stack. That's the same as using a key on a locked door. Just as a key doesn't remove the doorlock, the passkey doesn't remove the password, it just lets you in until the next time the stack closes.
Re: Advice on creating a product registration system
Posted: Mon Feb 11, 2013 4:06 pm
by user#606
I faced the same issue and solved it this way.
The software runs and checks if the textfile with the code is on the computer. If not it is a new installation and it sends me a registration e-mail with the users Computer ID in a simple code.
There is a registration program that does this for a new installation.
The code required is emailed back.
This is typed into the registration program and effectively allows the main program to run.#The text file has other stuff like program settings in it as well and this is compressed so it is not readable.
The copy of the textfile is also stored on my server.
When a registered version is run, the server and on-disk files and the computer ID are compared. If the same, the software runs, else this is a new installation.
In the case the disk file and computer ID are the same, the process assumes the internet is not working for some reason and allows the software to run.
Yes, the user could discover and read the text file on his computer, but it is pointless.
If the computer changes, the user has to pay for a new installation or speak to you for a new code.
The file also allows updates to be indicated so the user can make an auto update over the internet.
I have used this for several years and there are no downsides. no difficulty for the user.
Re: Advice on creating a product registration system
Posted: Tue Feb 12, 2013 12:09 am
by Simon
Hi magice,
I'n not sure what happened here but your solution has been removed?
At any rate, magice decided on using "the milliseconds" to grab the number of milliseconds from the start of the eon to produce a near unique number to use as a registration number.
or not.
Simon
Re: Advice on creating a product registration system
Posted: Tue Feb 12, 2013 3:03 am
by magice
Here is what I did. I hope it is effective. Since my program has an executable that launches an un-compiled rev file, I basically did all the coding in the executable. It looks in the registry for an entry that includes an e-mail and a key code. The key code is just the e-mail after a series of base64 encryptions with some random characters added in between encryptions. When the user tries to run the program, it retrieves the registry entry and decrypts the key portion. If the email and the decrypted key match, the program launches. If not the registration dialog launches. I was originally planning on either making it crippleware or nagware, but ultimately I decided on just not letting it run at all until registered.