Questions tagged [rfc4122]

RFC4122 issued by the IETF in 2005 is about "A Universally Unique IDentifier (UUID) URN Namespace"

Abstract from official IETF RFC website:

This specification defines a Uniform Resource Name namespace for UUIDs (Universally Unique IDentifier), also known as GUIDs (Globally Unique IDentifier). A UUID is 128 bits long, and can guarantee uniqueness across space and time. UUIDs were originally used in the Apollo Network Computing System and later in the Open Software Foundation's (OSF) Distributed Computing Environment (DCE), and then in Microsoft Windows platforms.

8 questions
29
votes
2 answers

Collision probability of ObjectId vs UUID in a large distributed system

Considering that an UUID rfc 4122 (16 bytes) is much larger than a MongoDB ObjectId (12 bytes), I am trying to find out how their collision probability compare. I know that is something around quite unlikely, but in my case most ids will be…
SystematicFrank
  • 16,555
  • 7
  • 56
  • 102
1
vote
0 answers

uuid.uuid4() collision in 1 digit

I am generating UUIDs as follows: import uuid uuid.uuid4().hex Here are some of generated UUIDs (from different machines and different Python…
aboev
  • 332
  • 2
  • 9
0
votes
0 answers

What format should a REST API use for ULIDs? i.e. Base32 or RFC4122

ULID Base32 01GMEX2SA207FNV8E19QM8EJ4M is the same as RFC4122 01851dd1-6542-01df-5da1-c14de8874894. Postgresql appears to store the ULIDs in RFC4122 format. Both GET /assets/01GMEX2SA207FNV8E19QM8EJ4M/resource_acl and GET…
user1032531
  • 24,767
  • 68
  • 217
  • 387
0
votes
1 answer

How to generate a UUID compliant with RFC4122?

I am trying to create a UUID that follows the RFC4122 requirements. The documentation for UUID v5 states: uuid.uuid5(namespace, name) Generate a UUID based on the SHA-1 hash of a namespace identifier (which is a UUID) and a name (which is a…
WoJ
  • 27,165
  • 48
  • 180
  • 345
0
votes
1 answer

Why are uuids restricted to [89AB] in the first character of the 4th group?

The regex for validating uuid v4 is the following : /^[0-9A-F]{8}-[0-9A-F]{4}-[4][0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i As you can see, the 4th group contains [89AB][0-9A-F]{3} instead of [0-9A-F]{4} Do you know why that is ? Is there any…
edi9999
  • 19,701
  • 13
  • 88
  • 127
0
votes
1 answer

Time based UUID does not follow creation order according when implementing RFC 4122

I am creating a custom algorithm to embed info into a timeUUID. When studying the RFC 4122. In the spec, the version 1 UUID has the following structure: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5…
Vercintegorix
  • 305
  • 2
  • 6
-1
votes
1 answer

Namespaced uuid's in multiple goroutines

I Would like to create a "collision-free" unique id in go language, for highly-scalable application. Wikipedia recommends a namespace variation of the UUID (That I could only assume referes to version 3 or 5) Wikipedia Specifically states: Where…
HLL
  • 169
  • 10
-2
votes
2 answers

Does RFC 4122 support unhyphenated UUIDs?

I understand that UUID contains a set of characters grouped into 5 groups in an 8-4-4-4-12 character pattern as per RFC 4122. Example: 123e4567-e89b-12d3-a456-42661417400 I am using a popular library by Google for Go to parse UUID…
vignz.pie
  • 173
  • 2
  • 14