LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

copy protection

i want to protect my application against illegal copies by allowing installation on only one machine. i want to do this by reading some machine specific information, for example disk drive serial number or network card serial number or operating system serial number. can anyone please tell me how to read any of these or something similar (maybe from the registry?). otherwise do you have any suggestions regarding copy protection.
i am running NT/win 2000 and i do not have any NI hardware installed. many thanks.
0 Kudos
Message 1 of 7
(3,935 Views)
I use a couple VI's I found on the 'net called "GetComputerName.vi" and
GetVolumeInformation.vi" to discover the users hard drive id # and computer
name.

From these two inputs I create a hex value using a one-time pad encryption
algorithm. The user sends me this value and I create an unlock, based on another
one-time pad. I now have the users computer name and hard drive ID in my database
for future reference.
I create an unlock code and return this value to the user and he/she installs it into the Registry
via a LabVIEW vi I wrote specifically to do this.

When my application fires up, it searches the Registry for the unlock value, if it matches the
value generated by the users computer name and hard drive ID, I start my app.

The system could be hacked, I imagine,
by using a hex editor and discovering the one-time
pad and then guessing what I'm using to create the code, but I figure if they want to go
to that much work, they can have it. If you really wanted to be secure I guess you could
add current time as an input, and then there would never be anything the same from the output
of the one-time pad.


Regards,

Alan


"jimstew" wrote in message news:5065000000080000000E1B0000-986697009000@quiq.com...
> i want to protect my application against illegal copies by allowing
> installation on only one machine. i want to do this by reading some
> machine specific information, for example disk drive serial number or
> network card serial number or operating system serial number. can
> anyone please tell me how to read any of these or something similar
> (maybe from the registry?). otherwise do you have any suggestions
> regarding copy protection.
> i am running NT/win 2000 and i do not have any NI hardware installed.
> many thanks.
Message 2 of 7
(3,935 Views)
thanks, this is just the information i need. where can i find the vis you described (getcomputername and getvolumeinformation) ?
0 Kudos
Message 4 of 7
(3,935 Views)
I was afraid you would ask me that, I don't have a link to the .llb and the author
did not provide info inside the library. It's called driveinfo.llb.

Maybe check this site, http://www.mooregoodideas.com/



"jimstew" wrote in message news:506500000005000000DF230000-986697009000@quiq.com...
> thanks, this is just the information i need. where can i find the vis
> you described (getcomputername and getvolumeinformation) ?
0 Kudos
Message 5 of 7
(3,935 Views)
thanks alan, i'll go look.
0 Kudos
Message 6 of 7
(3,935 Views)
LabVIEW has a palette of VI's that allow you to open, create, read, write, and delete registry keys. With this functionality, you could find some unique machine information in the Windows registry and verify this in your program.

These VI's can be found from the Advanced function palette. However, I would warn you that making changes to the Windows registry can be very dangerous if you don't know exactly what you are doing. I would advise only using the "read" functionality.
0 Kudos
Message 3 of 7
(3,935 Views)
Hi Jimstew,

another very secure way is hardware key.
I use to protect my software a hardware key called SentinelSuperPro from Rainbow Technologies www.rainbow.com
It is available both for parallel port and USB.
It is a quite inexpensive and versatile method for protection, further and most important, its software package included some example in LabVIEW that show how to manage the security codes.

Regards,

Alberto Locatelli
0 Kudos
Message 7 of 7
(3,935 Views)