UUIDジェネレーター
UUIDは、中央機関と連携することなく、グローバルに一意な識別子を提供します。このジェネレーターは、RFC 4122に準拠したv1(タイムスタンプ+MAC)、v4(ランダム値)、およびv7(タイムスタンプが先頭に付く並べ替え可能な形式)の値を生成します。バージョンを選択し、1個または1000個を要求して、そのリストをシードデータ、APIキーの生成、またはユニットテストにコピーしてください。
UUIDを生成する方法
-
1
バージョンを選択してください
一般的なランダム数値にはv4、並べ替え順序が重要な場合はv7、タイムスタンプ情報が必要な場合はv1を使用します。
-
2
数量を選択
1つのUUID、または1回の実行で最大10,000件までのバッチ。
-
3
生成
値はブラウザの暗号APIを使用して暗号学的なランダム性を実現しています。
-
4
コピーまたはダウンロード
改行区切りのリスト、JSON配列、またはCSVとして取得できます。
どのUUIDバージョンを使うべきか?
| バージョン | 構造 | 最適な用途 |
|---|---|---|
| v1 | タイムスタンプ + クロック + MACアドレス | 時系列が必要なログID |
| v4 | 122ビットのランダム値 | 汎用的な一意ID、テストフィクスチャ |
| v7 | Unixタイムスタンプ(ミリ秒)+ランダム値(ソート可能) | データベースの主キー |
なぜv7がデフォルトになりつつあるのか
v4はランダムなため、データベースの主キーとしては非常に不向きです。挿入がBツリー全体に分散し、書き込みスループットを損ないます。v7(2024年にRFC 9562で確定)はUUIDの先頭に48ビットのミリ秒タイムスタンプを付加するため、新しい行はインデックスの末尾に配置されます。一意性と無調整という利点はそのままに、加えて作成時刻順のおおまかなソート順も得られます。
フォーマットのルール
UUIDは128ビットで、8-4-4-4-12のパターンに従い32桁の16進数として表現されます。
018f5b9c-7d4a-7a1b-8c0e-2e1b3c4d5e6f
^^ ^
バージョンニブル バリアントビット
- バージョンニブルは13番目の文字(
018f5b9c-7d4a-の直後)です。v4では4、v7では7などになります。 - バリアントビットは17番目の文字の最初の2ビットです。RFC 4122準拠のUUIDでは
10(上位ニブルが8/9/a/b)になります。
衝突の確率
v4では、重複が生成される確率は極めて小さく、衝突が50%の確率で起こるまでには2.7京(2.7 × 10¹⁸)個のUUIDを生成する必要があります。これはほとんどのデータベースが生涯に扱う量をはるかに超えています。v7はランダムな末尾部分を共有しているため、同一ミリ秒内における衝突の確率はv4と同等です。
よくある質問
かつては該当しました。生成元ホストのMACアドレスが埋め込まれていたためです。最新のジェネレーター(本ツールを含む)はランダムな48ビットのノードIDで代替するため、v1がハードウェアを明らかにすることはもうありません。
CSPRNG(本ツールはcrypto.getRandomValuesを介して使用)で生成されたv4は予測不可能性が十分に高く、セッショントークンとしても利用できます。ただしUUID自体は本質的に秘密ではありません。秘密が必要な場合は、それを明確に秘密として扱ってください。
はい、URLセーフです(16進数とハイフンのみ)。より短く表示したい場合は、生の128ビットをbase-32やbase-62でエンコードするか、26文字でv7と同様にソート可能なULIDの利用を検討してください。
いいえ。生成はブラウザ内で行われ、値がサーバーに送信されることは一切ありません。
関連ツール
アナグラムジェネレーター
短い語を入力すると、重複した並べ替えを除き、表示件数を調整しながら文字の一意な並べ替えを確認できます。
キャラクター名ジェネレーター
小説、ゲーム、RPGなどのキャラクター名を生成します。ファンタジー、SF、現代から選び、5〜30個の名前を設定すると、すぐに使える名前が手に入ります。
都市名ジェネレーター
世界観づくり、地図、ゲーム、物語、モックデータ向けに、実在の言語または創作スタイルで、架空の都市、町、村、首都の名前を生成します。
丸付きテキストジェネレーター
プレーンテキストを丸で囲まれた Unicode 文字に変換します。ソーシャル略歴、チャット、ドキュメントの輪郭、塗りつぶし、丸数字のバリエーション。
カンマから改行へ
カンマ区切りのテキストを1行に1つの項目に変換したり、行をカンマ区切りの文字列にまとめたりできます。
Discordフォントジェネレーター
通常のテキストを、Discordのニックネーム・サーバー名・メッセージで使えるUnicodeフォントに変換します。太字、イタリック、フラクトゥール、二重線、モノスペース、装飾系の書体をまとめて生成できます。
このツールは他の言語でも利用できます
- Bộ tạo UUID [VI]
- UUID-generator [SV]
- مولّد UUID [AR]
- UUID 생성기 [KO]
- ตัวสร้างรหัสสุ่ม (UUID Generator) [TH]
- Générateur UUID [FR]
- Generator UUID [ID]
- UUID-Generator [DE]
- UUID-generator [NL]
- Generador de UUID [ES]
- Generator UUID [PL]
- Gerador de UUID [PT]
- UUID Generator [EN]
- Generatore UUID [IT]
- Генератор уникальных идентификаторов (UUID) [RU]
- UUID Oluşturucu [TR]
- UUID 生成器 [ZH]