Re: UuidCreateSequential

The format for UUID's has changed over time. The MAC address is not
always used and you should NOT count on it being located inside of the
GUID in the node bits. This only means that your computer is NOT
using version 1 of the GUID generation algorithm

You should call the network functions to retreive the MAC addresses of
each of the network interfaces inside your computer.


4.1.6. Node

For UUID version 1, the node field consists of an IEEE 802 MAC
address, usually the host address. For systems with multiple IEEE
802 addresses, any available one can be used. The lowest addressed
octet (octet number 10) contains the global/local bit and the
unicast/multicast bit, and is the first octet of the address
transmitted on an 802.3 LAN.

For systems with no IEEE address, a randomly or pseudo-randomly
generated value may be used; see Section 4.5. The multicast bit
be set in such addresses, in order that they will never conflict
addresses obtained from network cards.

For UUID version 3 or 5, the node field is a 48-bit value
from a name as described in Section 4.3.

For UUID version 4, the node field is a randomly or pseudo-randomly
generated 48-bit value as described in Section 4.4.

The OSF-specified algorithm for generating new GUIDs has been widely
criticized. In these (V1) GUIDs, the user's network card MAC address
is used as a base for the last group of GUID digits, which means, for
example, that a document can be tracked back to the computer that
created it. This privacy hole was used when locating the creator of
the Melissa worm. Most of the other digits are based on the time while
generating the GUID.

V1 GUIDs which contain a MAC address and time can be identified by the
digit "1" in the first position of the third group of digits, for
example {2f1e4fc0-81fd-11da-9156-00036a0f876a}.

V4 GUIDs use the later algorithm, which is a pseudo-random number.
These have a "4" in the same position, for example
{38a52be4-9352-453e-af97-5c3b448652f0}. More specifically, the 'data3'
bit pattern would be 0001xxxxxxxxxxxx in the first case, and
0100xxxxxxxxxxxx in the second. Cryptanalysis of WinAPI GUID generator
shows that, since the sequence of V4 GUIDs is pseudo-random, given the
initial state one can predict up to next 250 000 GUIDs returned by the
function UuidCreate[1]. This is why GUIDs should not be used in
cryptography, e. g., as random keys.

On Wed, 10 Sep 2008 06:26:35 -0700 (PDT), Jag <arunjaganath@xxxxxxxxx>

Hi all,
I am trying to fetch the MACID of my System using UUID
structure.the last 12 digits gives the MACID,but there is a problem in
windows 2000 machine that this MacID gives me different values every
time when i execute UuidCreateSequential for the same machine.....
what might be the problem,help in this regard is highly Appreciated.

Relevant Pages

  • Re: Guid question
    ... Collisions with GUIDs are nearly impossible because the GUID ... > CoCreateGUID changed in Windows 2000 so that it no longer returns the ... > MAC address as part of the resulting GUID. ...
  • Re: Fixing RNG in Microsoft Windows?
    ... GUIDs consist of your network interface card's MAC address ... GUID is not a good source for entropy for cryptographic ... It is wise not to depend on a single source alone, I have seen code, ...
  • Re: Is newid() guaranteed to return a unique uniqueidentifier
    ... *) MAC address. ... reset each time the clock increased. ... > Problem with that was of course that GUIDs were traceable to a MAC ... and therefore there is an infinitesimal small chance that they are ...
  • Re: Duplicate Guid
    ... I thought that MS stopped using the MAC address to create the guids since ... >> duplicate is virtually 0. ...