package util import ( "crypto/rand" "fmt" ) // NewUUID generates a random UUIDv4 string. func NewUUID() string { var b [16]byte rand.Read(b[:]) //nolint:errcheck b[6] = (b[6] & 0x0f) | 0x40 // version 4 b[8] = (b[8] & 0x3f) | 0x80 // variant 10xx return fmt.Sprintf("%08x-%04x-%04x-%04x-%012x", b[0:4], b[4:6], b[6:8], b[8:10], b[10:16]) }