a new Guid, made of 16 bytes drawn from the platform CSPRNG
(crypto.getRandomValues, under Node.js as well as in the browser).
The 128 bits are fully random: no RFC 4122 version or variant bits are carved out,
so a Guid produced here is unpredictable to the full width of its value. It is
therefore safe to use where the identifier must not be guessable — a SessionId, or
the requestId of OPC 10000-12 §7.9.5 FinishRequest.
Note that the other random* helpers of this module (randomByteString, randomString,
randomUInt32, ...) are fuzzing helpers built on Math.random and carry no such
guarantee — see getRandomInt.
a new Guid, made of 16 bytes drawn from the platform CSPRNG (
crypto.getRandomValues, under Node.js as well as in the browser).The 128 bits are fully random: no RFC 4122 version or variant bits are carved out, so a Guid produced here is unpredictable to the full width of its value. It is therefore safe to use where the identifier must not be guessable — a SessionId, or the requestId of OPC 10000-12 §7.9.5 FinishRequest.
Note that the other
random*helpers of this module (randomByteString, randomString, randomUInt32, ...) are fuzzing helpers built on Math.random and carry no such guarantee — see getRandomInt.