Skip to main content
Solved

Is UUIDGenerator generating UUID version 4?

  • August 28, 2018
  • 2 replies
  • 88 views

gtiemens

Is the UUIDGenerator using the algoritm to generate IETF UUID version 4 (random) ? If so, can you add to documentation with reference to the IETF standard ? If it is version 4 (random), can you explain which library is used as seed for the random number?

Best answer by hollyatsafe

Hi @tiemens_g,

The function the UUIDGenerator relies on respect OS api calls to generate UUIDs:

Dependent on your system you should be able to find out which algorithm these functions use.

This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.

2 replies

Forum|alt.badge.img+2
  • 719 replies
  • Best Answer
  • August 28, 2018

Hi @tiemens_g,

The function the UUIDGenerator relies on respect OS api calls to generate UUIDs:

Dependent on your system you should be able to find out which algorithm these functions use.


Forum|alt.badge.img
  • 2 replies
  • September 30, 2020

Hi @tiemens_g,

it is my understanding that you can refer the version of a UUID from the typical 8-4-4-4-12 representation (AAAAAAAA-BBBB-CCCC-DDDD-FFFFFFFFFFFF) by

  1. Checking for current variant: Test if the first bit of the DDDD-part equals to 8, 9, A or B.
  2. Get the first bit of the CCCC-Part and treat it as version information. Hence, if this bit is 4, the generated UUID is version 4 (randomly generated).

Also, have a look at:

Based on that, it is my conclusion that UUIDGenerator simply returns randomly created UUIDs (version 4).

Having to work with UUID (in FME) myself I stumbled upon your question. It seems to me, that there was no answer regarding the version used of UUIDGenerator, yet. Unfortunately, the transfomer's documentation is very sparse....