UUID生成
UUID v4・v7とULIDをブラウザで生成します。値はページを開いたあとに作られ、どこにも送信されません。
生成した値
UUID生成の使い方
- 1種類(v4・v7・ULID・Nil・Max)と個数を選びます。ページを開くと一覧がすぐに表示されます。
- 2「再生成」を押すと新しい値に変わります。オプションを変えても作り直します。
- 3値の横のコピーボタンで1つずつコピーするか「すべてコピー」を押し、「ダウンロード」で1行に1つの値が入った .txt ファイルを保存します。
UUID生成のオプション
- 種類
- UUID v4は乱数です。UUID v7はミリ秒単位のUNIX時間で始まるため、生成した順に並びます。ULIDは同じ時刻をCrockford Base32の26文字で表します。Nil・Maxはすべてのビットが0の値と1の値です。
- 個数
- 一度に1〜1,000個。既定は5個です。
- 大文字
- 16進数を大文字で書きます。ULIDは常に大文字です。
- ハイフン
- 既定はオン(8-4-4-4-12)です。オフにすると32桁を続けて書きます。
- 囲み
- 値ごとに波かっこまたは二重引用符で囲みます。
- 解析
- UUIDまたはULIDを貼り付けると、バージョンとバリアントを表示します。v1・v6・v7とULIDは、値に含まれる時刻も表示します。
UUIDのバージョンと標準
UUIDは RFC 9562 で定義されています。128ビットを16進数32桁で書き、5つのグループ(8-4-4-4-12)に分けます。3番目のグループの最初の桁がバージョンで、4番目のグループの最初の桁にバリアントが入っています。
- v4: 乱数122ビット。バージョンの桁は
4、バリアントの桁は8・9・a・bのいずれかです。 - v7: ミリ秒単位のUNIX時間48ビット、バージョンの桁
7、そのあとは乱数です。あとから生成した値は、先に生成した値より後ろに並びます。 - Nil・Max: すべてのビットが0の値と、すべてのビットが1の値です。
ULID は同じ48ビットのミリ秒時刻のあとに乱数80ビットを続け、Crockford Base32の26文字で書きます。
値の生成方法
v4は crypto.randomUUID() で生成します。v7とULIDの乱数は crypto.getRandomValues() から取得します。Math.random() は使いません。同じミリ秒にv7を複数生成するときは、バージョンの桁に続く12ビットをカウンターとして使い、1つの一覧の値が昇順になるようにします。
サーバーが送るHTMLでは作業カードは空です。値はページを開いたあとにブラウザで生成し、「再生成」を押すかオプションを変えると新しい一覧に置き換わります。
UUID生成の例
Nil UUID(種類 Nil・Max)
2行目のMax UUIDは ffffffff-ffff-ffff-ffff-ffffffffffff です。
入力
Nil
出力
00000000-0000-0000-0000-000000000000
1767225600000 ms(2026-01-01T00:00:00.000Z)に生成したUUID v7
先頭の16進数12桁 019b76daa800 がミリ秒単位のUNIX時間です。7 はバージョン、x は乱数の桁です。
入力
1767225600000
出力
019b76da-a800-7xxx-…
同じ時刻に生成したULID
先頭の10文字が時刻で、そのあとに乱数16文字が続きます。
入力
1767225600000
出力
01KDVDNA00…
UUIDの解析
バージョン、バリアント、先頭48ビットに入っている時刻です。
入力
019b76da-a800-7000-8000-000000000000
出力
7 · RFC 9562 · 2026-01-01T00:00:00.000Z
例は、このツールを検証している基準ケースの値です。
UUID生成のよくある質問
入力したデータはサーバーに送信されますか?
いいえ。入力と結果はこのブラウザ内だけで処理され、保存もしません。再読み込みすると消えます。
v4とv7のどちらを使えばよいですか?
意味を持たない一意な値だけが必要ならv4を使います。データベースのキーにはv7が向いています。先頭に時刻があるので、新しい行がインデックスの近い位置にまとまります。ただしv7は生成した時刻が分かるため、時刻を隠したい場合はv4を使ってください。
生成したUUIDが重複することはありますか?
v4のUUIDは乱数が122ビットあるため、現実的には重複しません。値は Math.random() ではなく、ブラウザの crypto.randomUUID() と crypto.getRandomValues() で生成します。
ページを開く前に一覧が空なのはなぜですか?
値はページを開いたあとにブラウザで生成します。サーバーが送るHTMLには生成した値が含まれないため、2人が同じ一覧を受け取ることはありません。
ULIDとは何ですか?
ULIDは128ビットの識別子をCrockford Base32の26文字で書いたものです。先頭の10文字はミリ秒単位の時刻、後ろの16文字は乱数です。文字列のまま並べても時刻順になり、I・L・O・Uは使いません。
一度に生成したv7の値はどのような順序ですか?
一度に生成した値はすべて同じミリ秒です。バージョンの桁に続く12ビットが値ごとに1ずつ増えるカウンターなので、一覧はすでに昇順です。カウンターが上限に達すると、次の値は次のミリ秒を使います。
関連ツール
処理方法・標準
- 処理する場所:このブラウザ(お使いの端末)。送信も保存もしません。
- 標準: RFC 9562 · ULID
- エンジン: Web Crypto API (crypto.randomUUID, crypto.getRandomValues) (ブラウザ内蔵) · ZEKILO Dev UUID v7・ULID生成器、UUID解析器 (自社実装)
- UUID v7とULIDには生成した時刻が含まれます。時刻を隠す必要がある場所では使わないでください。
- 生成した値は保存しません。再読み込みすると新しい一覧を作ります。
- 基準日 2026.10.03
- 変更履歴: 2026.10.03 公開