# uuid/v4
Generate a random version-4 UUID (RFC 4122 §4.4). All 122 random bits come
from the OS CSPRNG — no timestamp component, no predictability across
calls.
## Syntax
[uuid/v4]
## Examples
[uuid/v4] # "598a1910-0eb9-43b0-86dc-aa7112972fa0" def new-id {|| [uuid/v4] }
## Returns
Lowercase canonical UUID string in 8-4-4-4-12 form.
## Notes
v4 is the right choice for anonymous identifiers. If you are inserting
into a database and want creation-time ordering, use `uuid/v7` instead —
its lexicographic order matches insert order, which keeps B-tree indexes
friendly.
## See Also
`uuid/v7`, `uuid/nil`, `uuid/valid?`, `crypto/rand-hex`