AG UUID

衝突確率とセキュリティ

UUIDが本当に一意なのか、そしてセキュリティトークンとして使ってよいのかを見ていきます。

衝突確率

v4は122ビットの乱数のため、場合の数は5×10³⁶に達します。現実的な規模では衝突は事実上起こりませんが、必ず暗号学的な乱数源(getRandomValues)で生成する必要があります。

予測可能性

v1・v7はタイムスタンプを含むため、生成時刻を推測できます。推測が困難であるべきセッション・秘密トークンには、v4や専用のトークン生成器を使う方が安全です。

セキュリティ上の注意

UUIDは「一意であること」を保証するだけで、「秘密であること」を保証しません。認証・認可にはUUIDを一意キーとしてのみ使い、秘密の値は別のセキュリティトークンで管理してください。