On 17 Nov 2016, at 3:13am, Keith Medcalf <kmedc...@dessus.com> wrote:

> You would only get guaranteed collision avoidance if you kept track of every 
> UUID issued and checked for duplicates at time of issue to avoid duplication 
> by keeping a list of all the "used" identifiers.  I do not think that keeping 
> track of all the UUIDs issued to avoid duplication is part of the spec.  They 
> really should be called SRID's (somewhat random identifiers).

The randomness is not part of the intended spec for UUIDs.  The emphasis was on 
the 'Unique', which is why the name had 'U' in, not 'R'.  The first form of 
UUIDs combined the IP address of the originating computer with the time in .1 
microsecond intervals.  The assumption is that no computer would be fast enough 
to need to name two entities in .1 microsecond.  Thus UUIDs would be inherently 
unique without needing any extra programming or needing to consult a database 
of already-used UUIDs.  This was considered very clever.

But this scheme was criticised for giving away too much information.  For 
instance, if you saw a UUID for a car part you could immediately deduce the IP 
address of am important computer belonging to the car company.  That could be a 
good target for hacking attempts.

So number of other options were thought up, one of which can easily be created 
from a URL, one which relates to a domain name, some of which were designed 
from the outset to have the properties of random numbers.  It was a 
random-looking scheme -- known as version 4 -- that I mentioned which set off 
this thread.  Because it looks random it gives away nothing about the 
originating device, and people like that these days.  But perhaps version 1 
UUIDs might suit the OP better.

So yes, randomness is important to the particular type of UUID we're discussing 
here.  But it's not essential to all UUIDs.

Simon.
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to