UUID 生成ツール
ランダムな v4 または時系列順の v7 UUID を、1 個から 100 個まとめて生成します。ブラウザの暗号論的乱数源から作られ、どこにも送信されません。
UUID
このツールについて
UUID は 32 桁の 16 進数として書かれる 128 ビットで、別々のシステムが調整なしに識別子を発行できる程度には一意です。バージョン 4 はそのほとんどをランダムで埋めるため、実用上衝突せず、推測もできません。バージョン 7 は先頭 48 ビットをミリ秒のタイムスタンプに使い、エントロピーを少し譲る代わりに生成順に並ぶ値を得ます。データベースのインデックスには目に見えて優しい選択です。どちらもここでは crypto.getRandomValues で生成されます。鍵やトークンに使われるのと同じ乱数源です。
使い方
- 1バージョンを選びます。不透明な識別子なら v4、データベースのキーなら v7 です。
- 2必要な個数を選び、送り先のシステムがうるさければ大文字やハイフンを調整します。
- 3コピーで一覧全体を取得するか、再生成で新しいひと組を作ります。
よくある質問
›これらの UUID は識別子として安全に使えますか?
はい。Math.random ではなくブラウザの暗号論的乱数源から生成されるため、衝突は実用上の懸念になりません。v4 UUID は 122 ビットのランダムを持ち、1 つ重複させるには毎秒数十億個を数十年生成し続ける必要があります。
›v7 とは何で、どんなときに使うべきですか?
v7 UUID は 48 ビットのミリ秒タイムスタンプから始まるため、値が生成時刻順に並びます。これはデータベースで効いてきます。ランダムな v4 キーは書き込みを B-tree インデックス全体に散らしますが、v7 キーは順に末尾へ追加され、インデックスをコンパクトに保ちます。主キーには v7 を、識別子から何も読み取られたくない場合は v4 を選んでください。
›ハイフンなしや大文字で取得できますか?
どちらの切り替えもツールバーにあります。ハイフンは書式にすぎず、どちらでも同じ 128 ビットですが、コンパクトな 32 文字形式で保存するシステムもあり、古い Microsoft のツールは大文字を期待します。
›サーバー上で生成されているのですか?
いいえ、そこが肝心な点です。どの値もあなたのブラウザで作られ、送信されることはありません。ここからコピーしたものを他の誰かが見たことはありません。
›nil UUID とは何ですか?
すべてゼロの 00000000-0000-0000-0000-000000000000 です。UUID を入れなければならない項目で「識別子なし」を表す慣例的な方法です。