| View previous topic :: View next topic |
| Author |
Message |
ShinobiSoft Professional Member


Joined: 06 Nov 2002 Posts: 790 Location: Knoxville, Tn
|
Posted: Fri Jun 24, 2005 2:03 pm Post subject: Dll Developers |
|
|
Hello All,
I was hoping to get some information about generating/verifying software
serial keys. I've done searches on the internet only to find a host of cracks
for serial keys, but no information on how to make/create/verify them.
If you're uncomfortable replying here, please feel free to email me or PM
me. Any help would be greatly appreciated.
Many thanks in advance, _________________ Bill Weckel
ShinobiSoft Software
"The way is known to all, but not all know it." |
|
| Back to top |
|
 |
marty Professional Member


Joined: 10 May 2001 Posts: 789
|
Posted: Sat Jun 25, 2005 7:02 pm Post subject: |
|
|
Hey,
I got your mail regarding that, but I code in Delphi and not C or C++.
I know dragonshere has a good protection, maybe he could help you out.
 |
|
| Back to top |
|
 |
ShinobiSoft Professional Member


Joined: 06 Nov 2002 Posts: 790 Location: Knoxville, Tn
|
Posted: Sat Jun 25, 2005 8:23 pm Post subject: |
|
|
Hi Marty,
Thanks. I've contacted dragonsphere already a couple of times, but
strangely, I have reveived a reply.
I'm not necessarily looking for working code. Just looking for some ideas
or pointers in the right direction. _________________ Bill Weckel
ShinobiSoft Software
"The way is known to all, but not all know it." |
|
| Back to top |
|
 |
Rubes_sw Valued Contributor


Joined: 11 Jun 2001 Posts: 625 Location: Northern Ireland
|
Posted: Sun Jun 26, 2005 2:21 pm Post subject: |
|
|
I tend to use, a serial key based on the users windows license key obtained from the registry.
I perform several mathimatical calculations and then encrypt it using md5.
I then store the info in an online mysql db, that is checked for a users registration details and also check to make sure the copy they have registered is not being used on another computer.
I also include, regmon, soft-ice, regdebugger, and a couple of other programs that are run before the main program, so it executes before the program is running. So to try and prevent decompliing.
If you need any demo scripts i think i may have one or two about.
Nathan [/list] |
|
| Back to top |
|
 |
ShinobiSoft Professional Member


Joined: 06 Nov 2002 Posts: 790 Location: Knoxville, Tn
|
Posted: Sun Jun 26, 2005 2:31 pm Post subject: |
|
|
Hi Nathan,
Thanks. Anything to get me going in the right direction would be great.
I've written a simple serial generator but it in reality only masks the users
name with a simple algorithm I wrote. Prolly not to effective either. _________________ Bill Weckel
ShinobiSoft Software
"The way is known to all, but not all know it." |
|
| Back to top |
|
 |
vdsalchemist Admin Team

Joined: 23 Oct 2001 Posts: 1448 Location: Florida, USA
|
Posted: Sun Jun 26, 2005 3:25 pm Post subject: |
|
|
I'm sorry Bill I have been so busy as of late. Just to let you know that the only reason I have not sent you any code is because I too have been searching for a much better way to protect my DLL. The issue lies in how VDS Exe are built. There is just no way that I have found to protect the script. I have found a major hole and have not found a suitable way to patch that hole. Anyway I can send you what I have. BTW MD5 does not lend itself very well to protect keys since it is a one way encrypter. To use MD5 in the traditional way that we VDS DLL programmers have used our DLL keys you have to send both the MD5 encrypted string and the Plain text private string. I have several algorithms but all of them rely on the VDS script itself to be safe. Anyway I really do not like sending security code to others when I know that it will not truly work. The algorithm that I use is very old and could prob. be hacked by an 8th grader but I could see no reason to use anything stronger when the keys themselves could not be protected.
Now that does not mean there is no options for you. I think the only sure fire way to protect your DLL is to have 2 versions. You need a demo version and a full working version. This way it would take more than a script kiddie to use your DLL for free. I know that this is not very elagant but many companies do it this way prob. for similar reasons. _________________ Home of
Give VDS a new purpose!
 |
|
| Back to top |
|
 |
vdsalchemist Admin Team

Joined: 23 Oct 2001 Posts: 1448 Location: Florida, USA
|
Posted: Sun Jun 26, 2005 3:42 pm Post subject: |
|
|
Bill check your PM  _________________ Home of
Give VDS a new purpose!
 |
|
| Back to top |
|
 |
webdaddy Contributor


Joined: 14 Nov 2004 Posts: 151 Location: Raleigh NC
|
Posted: Thu Nov 10, 2005 4:25 pm Post subject: Protecting VDS Applications and Licensing |
|
|
Here is how I am now doing it.
1. I first get the drive ID from the hard drive on the computer where the software is installed.
2. I then get the hostname
3. Then I use a combination of the 1st 2 to generate a key file that is encrypted.
When the application starts it reads the contents of the license file. It then gets the hostname and drive ID (hardware) and then performs the first few operations in reverse. This ensures only the person that bought my software can install it on a single machine. If the hostname doesnt match well the check doesnt compute and the application doesnt start. If they have a hard drive crash then they have to request a new key.
Provides a little more protection that just generating a simple key file. This has hardware and hostname dependancies. _________________ K Wetzel
Programming - Technology - Communications
"The Home of the SLC Security Console"
SLC now available for Linux... |
|
| Back to top |
|
 |
Serge Professional Member


Joined: 04 Mar 2002 Posts: 1480 Location: Australia
|
Posted: Fri Nov 11, 2005 2:25 am Post subject: |
|
|
i do the same thing except i don't use the hostname and am happy with it
serge _________________
|
|
| Back to top |
|
 |
vdsalchemist Admin Team

Joined: 23 Oct 2001 Posts: 1448 Location: Florida, USA
|
Posted: Fri Nov 11, 2005 7:50 pm Post subject: Re: Protecting VDS Applications and Licensing |
|
|
| webdaddy wrote: | Here is how I am now doing it.
1. I first get the drive ID from the hard drive on the computer where the software is installed.
2. I then get the hostname
3. Then I use a combination of the 1st 2 to generate a key file that is encrypted.
When the application starts it reads the contents of the license file. It then gets the hostname and drive ID (hardware) and then performs the first few operations in reverse. This ensures only the person that bought my software can install it on a single machine. If the hostname doesnt match well the check doesnt compute and the application doesnt start. If they have a hard drive crash then they have to request a new key.
Provides a little more protection that just generating a simple key file. This has hardware and hostname dependancies. |
Ummm WebDaddy,
This will not work for DLL's. Since DLL's are wrapped inside of another application and the Exe is shipped with the DLL  _________________ Home of
Give VDS a new purpose!
 |
|
| Back to top |
|
 |
webdaddy Contributor


Joined: 14 Nov 2004 Posts: 151 Location: Raleigh NC
|
Posted: Fri Nov 11, 2005 9:24 pm Post subject: Good Point |
|
|
I was more referring to the applications. I dont do much with DLLs currently. I have worked with converting a applications to DLLs for my own use but have not done any licensing of DLLs so I have not run into that issue as of yet. I will figure out some similar method however (I hope)...hehe _________________ K Wetzel
Programming - Technology - Communications
"The Home of the SLC Security Console"
SLC now available for Linux... |
|
| Back to top |
|
 |
|