Hi,

Are there any plans for a UUID generator?

So I’ve been looking for a good solution but I didn’t get far.

So 1 blob of entropy gives us 256 bits Nat (`cryptographic entropy (randomness source) is only obtainable asyncronously in discrete chunks of 256 bits (32-byte sized `

Blob`s))`

This raises the question, how is the entropy generated? radioactive decay? random background radio noise?

Also how much does 1 blob of entropy cost in cycles?

To get a UUID we need to be able to generate a 128 bit label. Universally unique identifier - Wikipedia

Now in order to get a low probability collision for a 128-bit UUID, the ‘birthday effect’ tells us that a collision is likely after you’ve generated about 2^64 keys, provided you have 128 bits of entropy in each key. From what I’ve read you’ll start seeing collisions in about 2^50 but the chances of seeing a collision if you’ve populated your database with just 1000 billion keys are still negligible.

So at best we can use a full blob of entroopy for 2 UUIDs.

Now my question is, what’s the best way to generate up to 10 UUIDs using just 1 blob of entropy and ensure a low probability collision?

PS:

I’ve seens some possible solutions using the Hash Hash :: Internet Computer

The problem is Hash returns a 31 bit Nat and secondly not sure how deterministic is this.