[Mono-list] Needed: randomness for System.Guid.NewGuid.

Jason Whittington jasonw@develop.com
Tue, 12 Feb 2002 13:13:07 -0700


>This, too, is from memory.  I believe that Microsoft still uses the
>ethernet MAC address to make guids, but then does a hash on the value
to
>make sure that you cannot retrieve the MAC address later.

I don't think so.  If they did this then I would expect the bottom 48
bits of the GUID to remain constant, which they don't.  For instance,
here are
4 guids I just popped off.

{712E89D1-233C-4fc3-8EF2-FCC1B9B6B714}
{A9861D96-A677-49f4-9614-52CFC6D413C5}
{9005AB6D-2C55-4f3e-810B-BCB9D165CE97}
{C7B1DD0F-F9D4-48ce-A424-032CB6FF4CEF}

The only digit which seems to always remain constant is the leading "4"
in the 3rd group.  I haven't read up on the spec in a long time, so
don't know the significance of that particular digit.

My understanding is that for the most part calling CoCreateGuid in Win32
mostly thunks down to CryptGenRand().

Jason