Re: [PHP4BETA] UUIDs
| From: | Monte Ohrt | Date: | Tue, 22 Jun 1999 22:43:53 +0000 |
| Subject: | Re: [PHP4BETA] UUIDs | ||
| References: | 1 2 3 4 5 | Groups: | php.version4 |
| Request: | Send a blank email to php-version4+get-1674@lists.php.net to get a copy of this message | ||
Andrey Zmievski wrote:
>
> Kristian Ko%hntopp wrote:
> > I was under the impression that they are reproducible numbers that pertain
> to
> > a specific hardware, i.e. a windows installation or an ext2 filesystem.
> >
> > Still the "reproducible" thing worries me.
>
> There are several algorithms to generate UUIDs. One of them involves current
> timestamp and Ethernet address of the network card. You may have been
> thinking of something like that. But there are other algorithms you can
> choose from.
>
> -Andrey
> * I wish life had an UNDO function. *
>
> --
> PHP 4 Beta
I just ran a simple test on this particular algorithm.
This is a sample output of UUID's generated within one second:
b1ba3bb8-28f2-11d3-b89e-000000000000
b1bc531c-28f2-11d3-a185-000000000000
b1be6cc4-28f2-11d3-9314-000000000000
b1c0a0d4-28f2-11d3-99ea-000000000000
b1c2b608-28f2-11d3-b37c-000000000000
b1c4d546-28f2-11d3-b8cd-000000000000
b1c6ed2c-28f2-11d3-a5c5-000000000000
b1c903d2-28f2-11d3-909f-000000000000
b1cb2004-28f2-11d3-8e72-000000000000
b1cd4320-28f2-11d3-a120-000000000000
b1cf6c72-28f2-11d3-b777-000000000000
b1d18390-28f2-11d3-a00e-000000000000
b1d3b00c-28f2-11d3-bd58-000000000000
b1d5d0c6-28f2-11d3-af57-000000000000
b1d7e71c-28f2-11d3-b6ed-000000000000
b1da2522-28f2-11d3-9218-000000000000
b1dc4028-28f2-11d3-8fc2-000000000000
b1de56d8-28f2-11d3-a572-000000000000
b1e07030-28f2-11d3-b128-000000000000
b1e287d0-28f2-11d3-b07f-000000000000
b1e4a1a0-28f2-11d3-bfbb-000000000000
b1e6d8bc-28f2-11d3-8d8c-000000000000
b1e8ee40-28f2-11d3-bd21-000000000000
b1eb0d92-28f2-11d3-b0c1-000000000000
b1ed2546-28f2-11d3-858d-000000000000
b1ef3cc8-28f2-11d3-99ad-000000000000
b1f156c0-28f2-11d3-b788-000000000000
b1f3716c-28f2-11d3-97ad-000000000000
b1f59f3c-28f2-11d3-be78-000000000000
b1f7b5c4-28f2-11d3-91e7-000000000000
b1f9dc14-28f2-11d3-ac5a-000000000000
b1fbfd00-28f2-11d3-9ebd-000000000000
b1fe14be-28f2-11d3-bfab-000000000000
b2002d6c-28f2-11d3-9c22-000000000000
b20246c4-28f2-11d3-9e6d-000000000000
b2045e1e-28f2-11d3-886b-000000000000
b20675c8-28f2-11d3-b6f8-000000000000
b20892ae-28f2-11d3-a2db-000000000000
b20ac47a-28f2-11d3-8fe0-000000000000
b20cf484-28f2-11d3-99f0-000000000000
b20f0c38-28f2-11d3-af74-000000000000
b2112482-28f2-11d3-a1a4-000000000000
b2133c18-28f2-11d3-ba88-000000000000
b215541c-28f2-11d3-84a9-000000000000
b2176b94-28f2-11d3-b660-000000000000
b2198456-28f2-11d3-9d24-000000000000
b21bb5be-28f2-11d3-a730-000000000000
b21ddc22-28f2-11d3-949c-000000000000
b22003d0-28f2-11d3-a2f5-000000000000
b222249e-28f2-11d3-b35e-000000000000
b2243de2-28f2-11d3-9153-000000000000
b2266112-28f2-11d3-b2da-000000000000
b228dfb4-28f2-11d3-94e7-000000000000
b22afcf4-28f2-11d3-ae40-000000000000
b22d14a8-28f2-11d3-b5dd-000000000000
b22f322e-28f2-11d3-949f-000000000000
b2315ef0-28f2-11d3-a743-000000000000
It looks as if the first group of numbers is rolling up, like an
internal clock. The second group of four numbers (28f2 in this example)
rolls over every time the first group rolls back to zero. In my test,
28f2 will flip to 28f3 when the first group rolls back to zero, which
takes a few minutes between intervals on my test system.
The 3rd group seems to stay 11d3, maybe this flips when the second group
rolls over?
The 4th group seems to be the only "random" piece of the equation.
The last group is going to be the ethernet address used in the
algorithm, which is zeros in my test.
These numbers are guaranteed unique. But are they guessable? Secure?
Make your own observation :-)
Monte