How can VB get the unique hardware ID?

110 views
Skip to first unread message

abcd

unread,
Mar 22, 2002, 6:43:46 AM3/22/02
to
Hi there,

I'm working on hardware license control. I'd like to ask what information
should be got to identify a specific hardware. I've thought of using LAN
card/Network card ID, CPU ID, and USB key. But they seem doesn't work if
the PC do not have internet access, uses CPU which is not Intel, or do not
have USB socket. Can anyone tell how can VB get a unique hardware ID?

many thanks


George

unread,
Mar 22, 2002, 3:43:53 PM3/22/02
to
You can use the Drive Serial Number.
Here is an example:
http://www.vb2themax.com/Item.asp?PageID=CodeBank&ID=89
...
George
GridLinx Software Programming Tools for VB Programmers
http://www.gridlinx.com

Joe "Nuke Me Xemu" Foster

unread,
Mar 23, 2002, 1:27:10 PM3/23/02
to
"George" <geo...@nospam.com> wrote in message <news:3C9B9789...@nospam.com>...

> You can use the Drive Serial Number.
> Here is an example:
> http://www.vb2themax.com/Item.asp?PageID=CodeBank&ID=89

And here's another...

URL:http://sysinternals.com/ntw2k/source/misc.shtml#VolumeId

Didn't we learn our lessons regarding "copy protection" 20 years ago?

--
Joe Foster <mailto:jlfoster%40znet.com> Space Cooties! <http://www.xenu.net/>
WARNING: I cannot be held responsible for the above They're coming to
because my cats have apparently learned to type. take me away, ha ha!


abcd

unread,
Mar 24, 2002, 11:52:50 PM3/24/02
to
According to the article, this number can be altered by user. In this case,
user can alter this number by himself in order to crack the license control
algorithm. Is there any other key that cannot be altered by user but still
unique to hardware?

thanks

"Joe "Nuke Me Xemu" Foster" <j...@bftsi0.UUCP> 撰寫於郵件
news:OH2NLhp0BHA.2856@tkmsftngp05...

Joe "Nuke Me Xemu" Foster

unread,
Mar 25, 2002, 2:10:07 AM3/25/02
to
"abcd" <iren...@ecvision.com> wrote in message <news:uXsXMh70BHA.2588@tkmsftngp07>...

> According to the article, this number can be altered by user. In this case,
> user can alter this number by himself in order to crack the license control
> algorithm. Is there any other key that cannot be altered by user but still
> unique to hardware?

Didn't Micro$haft recently try this sort of thing with Windows
XP, and didn't they get roundly (and deservedly) bitchslapped?

--
Joe Foster <mailto:jlfoster%40znet.com> Greed = God? <http://www.xenu.net/>

Stuart Sutherland

unread,
Mar 25, 2002, 2:35:23 PM3/25/02
to
On Mon, 25 Mar 2002 12:52:50 +0800, "abcd" <iren...@ecvision.com>
wrote:

>According to the article, this number can be altered by user. In this case,
>user can alter this number by himself in order to crack the license control
>algorithm. Is there any other key that cannot be altered by user but still
>unique to hardware?
>
>thanks
>
>

I would give up the idea of a hardware key. All you will achieve, as
Joe Foster said in his own inimitable way, is to alienate your users.
If you are trying to imitate what MS do with XP then its a non
starter, unless you have the recourses that MS has to enforce and
maintain the necessary database.

Why do you think it has taken MS so long to introduce product
activation via hardware. Its only since the internet became so
ubiquitous that it became commercially viable.

To tie your users to a particular set of hardware, then expect them to
keep it for ever and ever without the opportunity to change it doomed
to disaster.

Stuart Sutherland

abcd

unread,
Mar 26, 2002, 5:20:56 AM3/26/02
to
I agree that using hardware key is not a good idea to control license. But
in fact, many of our customers do not have direct internet access. There
may be only one or two PC have internet access while others do not have. In
this case, we plan to use the hardware key instead. For the case of
hardware disaster, user has to get the activation code again. Does any one
has other idea for license control?

thanks


"Stuart Sutherland" <Nob...@Nowhere.com> ?????
news:sntu9uci0f6umsquv...@4ax.com...

verulam

unread,
Mar 27, 2002, 4:00:12 AM3/27/02
to
"abcd" <iren...@ecvision.com> wrote in message news:<emDuK9K1BHA.2660@tkmsftngp05>...

> in fact, many of our customers do not have direct internet access. There
> may be only one or two PC have internet access while others do not have. In
> this case, we plan to use the hardware key instead. For the case of
> hardware disaster, user has to get the activation code again. Does any one
> has other idea for license control?

Keys based on hardware are a big no no full stop.

Besides the code required to access hardware information
is a virtual sign saying 'look here if you want to crack this
protection'.

Take a section of the program out of the program and ship it freely.

User buys licence, encrypt the section of the program with their
name/company/details/whatever and email it to them.

They can save the email to a floppy and wander over to the PC not
connected to the internet.

The install program uses the name/company/details/whatever to decrypt
the section and slip it back into the program.

This is an over-simplification that leaves out specific details in
practice your decryption code will reside in the installer so you will
need a asymetric encryption algorithm and you will need to add
checksums to the license so that an infinate number of monkeys don't
produce the precise code that decrypts to the code required to format
a hard drive.

Your program will still be cracked though

Frank Carr

unread,
Mar 28, 2002, 9:16:13 AM3/28/02
to
"abcd" <iren...@ecvision.com> wrote in message
news:emDuK9K1BHA.2660@tkmsftngp05...

> Does any one


> has other idea for license control?

You might want to look into hardware 'dongles'. However, you should be aware
that many companies have policies against buying any programs that require
this kind of device.


--
Frank Carr
jfc...@msn.com
http://www15.brinkster.com/vbnotebook


Joe "Nuke Me Xemu" Foster

unread,
Mar 29, 2002, 12:55:09 PM3/29/02
to
"Frank Carr" <jfc...@email.msn.com> wrote in message <news:#YNocOm1BHA.356@tkmsftngp03>...

> "abcd" <iren...@ecvision.com> wrote in message
> news:emDuK9K1BHA.2660@tkmsftngp05...
>
> > Does any one
> > has other idea for license control?
>
> You might want to look into hardware 'dongles'. However, you should be aware
> that many companies have policies against buying any programs that require
> this kind of device.

And before shelling out for "starter kits", ask over on alt.binaries.cracks,
they should be able to provide you with software to emulate whatever dongle
you want, so you can find whichever "solution" best fits your needs.

--
Joe Foster <mailto:jfo...@ricochet.net> Space Cooties! <http://www.xenu.net/>

VB Dude

unread,
Apr 2, 2002, 5:56:28 PM4/2/02
to
even though nothing is fool proof.

for my programs, i use a license key system that creates a hash based
on the MAC address, userid, and computername,

all three together creating, a somewhat unique license. which then sends
that
info to another program (license maker) which registers that information and
sends back a unique
license key to the users machine.

when the program launches. it gets the system information again, and
verifies it against the hashed key
and if all 3 pieces of the info don't match then, then the license in
invalid.

this is supported on any machine that resides on any microsoft nt 4.0, or
active directory domain.

since machines names and mac address are usually generally unique on the
network, add in the user id
and that has helped me to control all our software on a per user basis.

it works pretty good for me. but like i said nothing is fool proof

vbd...@programmer.net

"Joe "Nuke Me Xemu" Foster" <j...@bftsi0.UUCP> wrote in message
news:uQ0g$q01BHA.2748@tkmsftngp07...

Joe "Nuke Me Xemu" Foster

unread,
Apr 4, 2002, 6:46:37 PM4/4/02
to
"VB Dude" <vbd...@programmer.net> wrote in message <news:OD7dilp2BHA.2712@tkmsftngp03>...

> since machines names and mac address are usually generally unique on the
> network, add in the user id
> and that has helped me to control all our software on a per user basis.

Right when gigabit copper NICs are dropping in price? How are your
customers supposed to upgrade their network hardware now? Bastard.

--
Joe Foster <mailto:jlfoster%40znet.com> Wanna buy a Bridge? <http://xenu.net/>

Ron Ruble

unread,
May 14, 2002, 9:02:02 AM5/14/02
to

abcd wrote in message ...


Here's your main problem: PC and PC compatible
computers don't have unique ids.

The hard disk has a serial number; in fact, one for
each volume/partition, placed there when the disk
is formatted, and another placed there by the
manufacturer.

The latter is not available via API calls, or in any
machine independent fashion.

Pentium III cpu's have a CPU ID number; no other
Intel processor has a serial number (except a few
limited test runs). It is disabled by default; you
can't access it without changing low-level settings
and rebooting the machine. Future processors from
Intel won't have CPU IDs at all.

Certain other pieces of hardware have identifiable
numbers; network cards, for example, have a MAC
address burned into them. But the user can always
change components.

There is no simple solution. It's a very complex
subject, so you have three choices: (1) prepare to
spend several months learning more than you ever
wanted about hundreds of different types of hardware,
(2) chuck the whole mess and buy a packaged software
protection product, or (3) scrap the whole idea and
depend on other methods for protecting your software.

Please direct additional questions to the newsgroup,
rather than email, so others may benefit from the
discussion.


Reply all
Reply to author
Forward
0 new messages