開発者ツール

UUIDジェネレーター

8種類すべてのUUIDバージョンを並べて生成できます。MACアドレスまたはノードID、DCEローカル識別子、名前空間名、カスタムUUIDv8ペイロードを設定して、必要な結果をコピーしてください。

RFC 8バージョン ブラウザー内で実行 RFC 9562を読む

ジェネレーター

UUIDを生成

ページの更新またはボタンのクリックでUUIDを再生成します

バージョン設定

ブラウザーはMACアドレスを読み取れません。ノードフィールドを再現する場合は入力してください。空欄の場合は、プライバシーに配慮したランダムなノードIDを使用します。

選択したDCEドメインで意味を持つ32ビットのUID、GID、またはその他の識別子です。

UUIDv2はDCE Security互換形式であり、新しいアプリケーションでは一般的ではありません。

名前はハッシュ化する前にUTF-8でエンコードされます。同じ名前空間と名前からは同じUUIDが生成されます。

UUIDv8で標準化されているのはバージョンビットとバリアントビットだけです。この値は実験的なアプリケーション固有のペイロードであり、一意性を保証する方式ではありません。

生成、ハッシュ化、設定はこのブラウザータブ内で行われます。入力内容がサーバーに送信されたり保存されたりすることはありません。

結果

生成する準備ができました。

v1

時刻ベース

グレゴリオ暦時刻 + クロックシーケンス + ノード

クリックして生成
タイムスタンプ MAC / ノード レガシー

レガシーシステムとの相互運用に便利です。実際のMACアドレスはホストを特定できるため、このページでは入力がない限りランダムなローカルノードを使用します。

v2

DCE Security

ローカルID + DCEドメイン + 時刻 + ノード

クリックして生成
タイムスタンプ ローカルID MAC / ノード レガシー

RFC 9562ではUUIDv2の詳細をDCE仕様に委ねています。このジェネレーターは互換性対応向けに、一般的なUID / GID / 組織の構成を提供します。

v3

名前ベース · MD5

名前空間UUID + 名前をMD5でハッシュ

クリックして生成
名前ベース 決定的 MD5

決定的で、古いシステムとの相互運用性があります。新しい名前ベースの設計では、v3互換性が必要な場合を除きv5を推奨します。

v4

ランダム

暗号学的にランダムな122ビット

クリックして生成
ランダム MACなし 汎用

多くのプラットフォームで使われる一般的なデフォルトです。タイムスタンプ、MACアドレス、名前、ソート情報は含みません。

v5

名前ベース · SHA-1

名前空間UUID + 名前をSHA-1でハッシュ

クリックして生成
名前ベース 決定的 SHA-1

安定した名前を複数のシステムで同じUUIDに対応させる場合に使用します。ハッシュは名前空間のためのもので、パスワードの安全性を目的としたものではありません。

v6

再配置された時刻ベース

v1のフィールドを並べ替え、タイムスタンプのバイトを先頭に配置

クリックして生成
時刻順 MAC / ノード ソート向き

v1型の処理でデータ局所性を高めるよう設計されています。v1互換性が不要な新規システムではv7を選んでください。

v7

Unix時刻順

Unixエポックのミリ秒 + ランダムビット

クリックして生成
時刻順 ランダム ソート向き

現代的な時刻順UUIDです。タイムスタンプのバイトが先に並び、残りのビットがMACアドレスなしで一意性を支えます。

v8

カスタム / 実験的

アプリケーション定義の122ビット

クリックして生成
カスタムペイロード 実験的 ランダム

標準化されているのはバージョンとバリアントだけです。交換形式でv8を使う前に、レイアウトと一意性のルールを決めてください。

互換性ガイド

各言語で通常生成されるUUID

組み込みAPIやデータベース関数が対応するのは、各エコシステムでよく使われるバージョンだけの場合があります。境界を越えるときは、バージョンとバイト順の仕様を必ず確認してください。

.NET / ASP.NET

v4v7 · .NET 9+

Guid.NewGuid()はv4を生成します。最新の.NETにはv7用のGuid.CreateVersion7()もあります。その他のバージョンは通常、ライブラリまたはアプリケーションコードで実装します。

Java SE

v3v4

UUID.randomUUID()はv4、UUID.nameUUIDFromBytes()はv3を生成します。Java標準のUUID型では古いフィールドを確認できますが、その他のバージョンには通常ライブラリまたはアプリケーションコードが必要です。

Python

v1 · v3 · v4 · v5v6 · v7 · v8 · Python 3.14+

標準のuuidモジュールはv1、v3、v4、v5に対応します。Python 3.14ではv6、v7、v8も追加されます。UUIDv2は標準モジュールに含まれません。

Node.js / JavaScript

core · v4uuid · v1/v3/v4/v5/v6/v7

Node組み込みのcrypto.randomUUID()はv4です。最近のNodeではv7も利用できます。一般的なuuidパッケージはv1、v3、v4、v5、v6、v7を提供し、v8はアプリケーション固有として残します。

データベースが標準で生成するUUID

データベースが標準で生成するUUID

標準サポートはデータベースエンジンとリリースによって異なります。シーケンシャルUUIDやバイナリUUIDのヘルパーが、自動的にUUIDv6やUUIDv7になるわけではありません。

v4 · v7 · PostgreSQL 18+

v4とv7を標準で生成できます。v4にはgen_random_uuid()、時刻順のv7にはuuidv7()を使います。

v1 · binary(16)

UUID()はv1を返します。UUID_TO_BIN(..., 1)でv1の時刻フィールドを保存向けに並べ替えられますが、UUIDv6やUUIDv7は生成しません。

v4 · シーケンシャルGUID

NEWID()はRFC 4122準拠のGUIDを生成します。NEWSEQUENTIALID()はインデックス局所性のためにシーケンシャルですが、UUIDv6やUUIDv7ではありません。

v4 · Oracle 23ai+

Oracle Database 23ai以降ではUUID()がv4を返します。SYS_GUID()は16バイトのRAW生成器ですが、RFC UUIDのバージョンとしては分類されません。

標準UUIDなし · randomblob(16)

SQLiteにはUUID型もバージョン付きUUID生成器もありません。randomblob(16)とhex()でランダムな128ビット文字列を作れますが、UUID v4のビットはアプリケーション側で設定する必要があります。

v4 · mongosh UUID() · ObjectId ≠ UUID

mongoshのUUID()はランダムなv4 BSON UUIDを生成します。既定のObjectIdは別の12バイト識別子であり、UUID v1〜v8のいずれでもありません。

ソート

v6とv7は時刻を先頭に置くため、バイト列や不透明なテキストをソートすると作成時刻順になります。データベースの局所性に役立ちますが、v1の古いフィールド順は自然な辞書順にはなりません。

MAC / ノードのプライバシー

v1、v2、v6にはノードフィールドがあります。MACアドレスまたはランダム値を指定できます。このページがブラウザーのMACアドレスを検出することはなく、空欄の場合はランダムなマルチキャストノードを使用します。

UUIDv8は魔法のハッシュではありません

v8は形式のために122ビットを予約しますが、グローバルな一意性は保証しません。ペイロード、バージョン管理、衝突対策をアプリケーションとともに文書化してください。