UUID ジェネレーター
フォーマットオプション
生成数
無料オンラインUUID/GUID/ULID/NanoIDジェネレーター。5種類のユニークIDフォーマット、最大100個の一括生成、フォーマットカスタマイズ、UUID検証・識別に対応。ブラウザを開くだけですぐに使え、データベース主キーやテストデータ作成に最適です。
無料オンラインUUID/GUID/ULID/NanoIDジェネレーター。5種類のユニークIDフォーマット、最大100個の一括生成、フォーマットカスタマイズ、UUID検証・識別に対応。ブラウザを開くだけですぐに使え、データベース主キーやテストデータ作成に最適です。
UUID(Universally Unique Identifier)と GUID(Globally Unique Identifier)は本質的に同じもので、呼び名が異なるだけです。UUID は IETF 標準(RFC 4122)の正式名称で、GUID はマイクロソフトが Windows エコシステムで慣習的に使用している呼び名です。両者のフォーマットは完全に同一で、`550e8400-e29b-41d4-a716-446655440000` のような形式の128ビット識別子です。このツールで生成する標準 UUID は、GUID が必要なあらゆる場面でそのまま使用できます。
UUID v1 はタイムスタンプとMACアドレスに基づいて生成され、時間順に並べることができ追跡可能ですが、MACアドレスが漏洩する可能性があります。UUID v4 は完全に乱数に基づいて生成され、最も一般的で安全な選択肢であり、ほとんどの主キー・識別子の用途に適しています。UUID v5 は名前空間ベースのハッシュ版(SHA-1)で、同じ名前空間+同じ名前からは常に同じUUIDが生成され、決定論的な出力が必要な場面に適しています。通常の開発では UUID v4 をデフォルトで選択すれば問題ありません。
ULID(26文字)は UUID(ハイフン含む36文字)より短く、辞書順にソート可能なため、データベースインデックスやログトレースに適しています。NanoID(デフォルト21文字)はさらに短く高速で、URLセーフな文字を使用しているためURLやCookieでエスケープが不要で、UUIDより約30%小さくなります。3つとも衝突確率は極めて低いですが、分散システムではULIDのソート可能性が有利で、NanoIDはフロントエンド・URLシナリオでより使いやすいです。
はい、できます。このツールは1〜100個の一括生成に対応しており、数量ボタンまたはスライダーで数を設定してワンクリックで生成できます。テストデータ作成、一括インポート、スクリプト用のユニークID準備に最適です。生成後は全結果をワンクリックでコピーできるほか、TXTテキストまたはJSONファイルとしてエクスポートすることもできます。
一括生成の使い方はい、できます。「検証」タブに切り替えて任意の文字列を入力すると、ツールが自動的に識別・検証します。標準UUID(v1/v3/v4/v5)の場合は具体的なバージョン番号を表示し、ULID(26文字のCrockford Base32形式)とNanoID(21文字のURLセーフ文字)のフォーマットも識別できるため、開発・デバッグ時にIDフォーマットの問題をすばやく調査するのに非常に便利です。
完全に安全です。このツールのすべてのID生成と検証は、お使いのブラウザ内でJavaScriptによりローカルで実行されます。crypto.getRandomValues() による暗号論的に安全な乱数を使用しており、生成したIDがサーバーに送信されることはなく、生成履歴がクラウドに記録されることもありません。オフラインでも正常に使用できるため、企業イントラネットや機密性の高いプロジェクトでも安心してご利用いただけます。
はい、できます。UUID v1/v4/v5 については、「大文字」スイッチで出力の大文字小文字を切り替え、「ハイフン」スイッチで中央のハイフンを除去できます(URL、設定ファイル、ハイフンなし形式を必要とする一部のデータベースでの使用に便利です)。ULIDとNanoIDはデフォルトでハイフンがなく、大文字小文字の切り替えにも対応しています。
コマンドラインツール(Linuxのuuidgen、Pythonのuuidモジュールなど)は開発環境が必要ですが、オンラインツールはブラウザを開くだけですぐに使え、ソフトウェアのインストールは不要です。さらにこのツールにはUUIDバージョン識別、一括エクスポート、履歴記録などの付加機能も統合されており、デバイスをまたいだ作業(技術者でない同僚のためにIDを生成する場合など)や急に必要になったときにより便利です。
UUID(Universally Unique Identifier、汎用一意識別子)は、オープンソフトウェア財団(OSF)により標準化され RFC 4122 で定義された128ビットの識別子規格です。分散システム内のすべての要素が、中央制御装置によるIDの指定を必要とせずに一意の識別情報を持てるようにすることを目的としています。
標準的なUUIDは `550e8400-e29b-41d4-a716-446655440000` のような形式で、32個の16進数字からなり、ハイフンで5つのセクション(8-4-4-4-12)に区切られています。理論上、UUID v4の衝突確率は約1/10^36です。これは毎秒10億個のUUIDを生成し続けて、衝突が発生する確率が50%に達するまでに約800年かかる計算であり、実用上は一意であるとみなせます。
UUIDはデータベース主キー、分散トレースID、リクエストID、ログトレースID、ファイルの一意な名前付け、テストデータID、セッション識別子などのシーンで広く使用されており、ほぼすべての主要なプログラミング言語にUUID生成ライブラリが組み込まれています。
| 特性 | UUID v4 | ULID | NanoID |
|---|---|---|---|
| 長さ | 36文字(ハイフン含む)/ 32文字(ハイフンなし) | 26文字 | デフォルト21文字 |
| 文字セット | 16進数(0-9a-f) | Crockford Base32(32文字) | URLセーフ(64文字) |
| ソート性 | ソート不可(ランダム) | 時間順にソート可能 | ソート不可(ランダム) |
| URLセーフ | エスケープが必要(ハイフン+英数字) | おおむね安全(大文字+数字) | 完全にURLセーフ |
| 生成速度 | 高速 | 高速 | UUIDより約60%高速 |
| 衝突確率 | 1/10^36 | 1/10^36 | 1/10^34(21文字時) |
| 代表的な用途 | データベース主キー、汎用ID | 分散システム、ログトレース | 短縮URL、フロントエンドID、Cookie |
| 言語 | コード |
|---|---|
| JavaScript | crypto.randomUUID() // モダンブラウザ/Node.js 19+ |
| Python | import uuid; uuid.uuid4() |
| Java | UUID.randomUUID() |
| Go | github.com/google/uuid; uuid.New() |
| Bash/Linux | uuidgen または cat /proc/sys/kernel/random/uuid |
モダンブラウザと Node.js 14.17+ には Web Crypto API が組み込まれており、サードパーティライブラリなしで直接 UUID v4 を生成できます。
// モダンブラウザ / Node.js 19+
const id = crypto.randomUUID();
console.log(id); // "550e8400-e29b-41d4-a716-446655440000"
// Node.js 14.17 - 18.x
const crypto = require('crypto');
const id = crypto.randomUUID();Python 標準ライブラリの uuid モジュールを使用して複数の UUID v4 を一括生成。テストデータ準備に最適です。
import uuid
# 単一のUUIDを生成
uid = uuid.uuid4()
print(uid)
# 10個を一括生成
for _ in range(10):
print(uuid.uuid4())
# ハイフンなしの大文字UUIDを生成
print(uuid.uuid4().hex.upper())Linux/macOS ターミナルですばやくUUIDを生成。シェルスクリプトでの使用に適しています。
# Linux uuidgen # macOS uuidgen | tr 'A-Z' 'a-z' # システムランダムファイルから直接読み取り(最も原始的な方法) cat /proc/sys/kernel/random/uuid