We need software copy protection/license registration for an application we have ready for release, but it must be scalable to allow us to easily offer the same protection in future applications we will be developing. Obviously it must be extremely hard to hack/crack and will be put to the test when close to completion.
Each application that has this copy protection built in will log into a database on our server every time the program is opened. This will allow us to remotely disable the application if desired, in the event of a fraudulent purchase for example. It will also allow us to track which reseller the program was downloaded from based on a reseller ID embedded somewhere in the application.
The way we see it is, the use of two codes, one that is generated by the application on the user’s machine and is based on hard drive serial, bios info, etc.. The second is generated by this registration system and given to the user upon successful credit card approval from our web site. Once the user enters this “second?? registration number into the application both numbers are checked against the database for validity. If valid the program unlocks and the database is updated as such. The application will not be able to run on any other system because of this two-code system, the user would need to purchase a second license to run a second machine.
The data being transferred from the application would probably be to a PHP script on the server and would need to be encrypted, probably with MD5, but am open to suggestions. The database would be MySQL on a UNIX (and if possible) Windows server.
Admin has login area to allow viewing stats, perform database functions, create user codes, and administer resellers. Resellers have individual logins, which include end-user registration forms to allow for wholesale registration purchases.
Software designer should take into account the possibility of me making this protection commercially available at some point and allow for this expandability during initial coding.
Other things to allow for in future expandability are the different ways a program would be copy protected with this system. Example, the first program to incorporate this protection will have the “save?? function disabled until purchased. Future programs may be fully functional for a particular time limit.
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done. 2) Installation package that will install the software (in ready-to-run condition) on the platform(s) specified in this bid request. 3) Complete ownership and distribution copyrights to all work purchased.
The initial program to be protected was coded in Delphi 6, so obviously it must work with that, but it also must be able to work with many of the most popular programming languages including VB.
I need fully commented source code so I can clearly understand the code.
Please explain the technical requirements (server side).