バージョン4は純粋な乱数です
v4 の UUID は122ビットの乱数で、うち6ビットがバージョンとバリアントの印に使われます。時刻も機器も埋め込まれていません。だからこそ、二つのシステムが何の取り決めもなく別々に発行できます。
衝突を心配しなくてよい理由
122ビットの乱数だと、重複が起こりそうになるまでに毎秒10億個を一世紀ほど作り続ける必要があります。ここでの乱数はブラウザの暗号用生成器から取っており、Math.random ではありません。
広告
ついでに — 暗号資産取引所の登録特典
ほかの計算機
よくある質問
Q. データベースの主キーに使えますか。
使えます。ただしランダムな鍵は書き込みが索引全体に散らばります。挿入性能が重要なら UUIDv7 や並べ替え可能な方式を検討してください。
Q. 大文字と小文字は区別しますか。
しません。UUID は大小を区別せず、慣習は小文字です。多くのライブラリも小文字で出します。
Q. 乱数はどこから来ますか。
ブラウザの crypto.getRandomValues です。暗号鍵にも使う生成器で、弱い Math.random ではありません。