メインコンテンツにスキップ

UUID/GUID生成ツール

UUID (Universally Unique Identifier) v4を生成する無料オンラインツールです。

⚙️ 생성 옵션

✨ 생성된 UUID

UUID (Universally Unique Identifier) v4를 생성합니다. 각 UUID는 통계적으로 고유하며, 데이터베이스 키, 세션 ID 등으로 사용됩니다.

💡 예시

기본 (소문자, 하이픈):
550e8400-e29b-41d4-a716-446655440000
대문자:
550E8400-E29B-41D4-A716-446655440000
하이픈 없음:
550e8400e29b41d4a716446655440000

UUIDとは?

UUID (Universally Unique Identifier) またはGUID (Globally Unique Identifier)は、情報を一意に識別するための128ビットの数値です。UUID v4はランダムに生成され、重複する確率はほぼゼロに近いです。

主な機能

  • 一括生成: 1個、5個、10個、20個から選択可能
  • 大文字/小文字: お好みの形式を選択
  • ハイフンオプション: ハイフン付き/なしを選択
  • 即座にコピー: ワンクリックでクリップボードにコピー
  • ブラウザベース: インストール不要、完全にクライアントで実行

使い方

基本的な使い方

  1. 生成するUUIDの個数を選択します (1、5、10、20)
  2. オプションを選択します:
    • 大文字: チェックすると大文字で生成
    • ハイフン付き: チェックするとハイフン付き形式
  3. 「生成」ボタンをクリックします
  4. 生成されたUUIDをコピーして使用します

形式の選択

基本形式 (小文字、ハイフン付き)

550e8400-e29b-41d4-a716-446655440000

大文字

550E8400-E29B-41D4-A716-446655440000

ハイフンなし

550e8400e29b41d4a716446655440000

UUID構造

UUID v4は以下のような構造を持ちます:

xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx
  • x: ランダムな16進数 (0-9, a-f)
  • 4: バージョン番号 (v4を表す)
  • y: ランダムな16進数 (8, 9, a, b のいずれか)

合計128ビット = 32桁の16進数で表現されます。

使用例

1. データベース主キー

CREATE TABLE users (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
name VARCHAR(100),
email VARCHAR(100)
);

2. 分散システムID

複数のサーバーで独立してIDを生成しても衝突なし:

const userId = '550e8400-e29b-41d4-a716-446655440000';
const sessionId = 'a3bb189e-8bf9-3888-9912-ace4e6543002';

3. ファイル名

const filename = `upload-${uuid}.jpg`;
// upload-550e8400-e29b-41d4-a716-446655440000.jpg

4. APIトークン

Authorization: Bearer 550e8400-e29b-41d4-a716-446655440000

5. セッションID

const sessionId = generateUUID();
sessionStorage.setItem('sessionId', sessionId);

UUIDバージョン

UUID v1

  • タイムスタンプ + MACアドレスベース
  • 時系列順序を保証
  • MACアドレス露出の懸念

UUID v4 (このツールで使用) ⭐

  • 完全にランダム
  • 最も広く使用されている
  • 個人情報の露出なし

UUID v5

  • 名前ベース (SHA-1ハッシュ)
  • 同じ入力 → 同じUUID

衝突確率

UUID v4の衝突確率は極めて低いです:

  • 生成可能なUUID総数: 2^122 ≈ 5.3 × 10^36個
  • 10億個生成時の衝突確率: 約10^-18 (ほぼゼロ)
  • 宇宙の全原子数: 10^80個

実用的に衝突を心配する必要はありません!

プログラミング言語別の使用方法

JavaScript

// ブラウザ
const uuid = crypto.randomUUID();

// Node.js
const { v4: uuidv4 } = require('uuid');
const uuid = uuidv4();

Python

import uuid

# UUID v4生成
my_uuid = uuid.uuid4()
print(my_uuid) # 550e8400-e29b-41d4-a716-446655440000

Java

import java.util.UUID;

UUID uuid = UUID.randomUUID();
String uuidString = uuid.toString();

PHP

<?php
$uuid = sprintf('%04x%04x-%04x-%04x-%04x-%04x%04x%04x',
mt_rand(0, 0xffff), mt_rand(0, 0xffff),
mt_rand(0, 0xffff),
mt_rand(0, 0x0fff) | 0x4000,
mt_rand(0, 0x3fff) | 0x8000,
mt_rand(0, 0xffff), mt_rand(0, 0xffff), mt_rand(0, 0xffff)
);
?>

C#

using System;

Guid uuid = Guid.NewGuid();
string uuidString = uuid.ToString();

実用的なヒント

1. 一括生成

多数のUUIDが必要な時に一度に生成:

  • テストデータ生成
  • マイグレーションスクリプト
  • シードデータ準備

2. データベースインデックス

UUIDを主キーとして使用する際の注意点:

  • 完全にランダム → B-Treeインデックスのパフォーマンス低下の可能性
  • UUID v1またはULIDを検討 (順序的特性)
  • PostgreSQLのgen_random_uuid()使用を推奨

3. URLでの使用

// ハイフンなし形式がすっきり
const url = `https://example.com/items/${uuid.replace(/-/g, '')}`;

4. ロギングとトレース

const requestId = crypto.randomUUID();
console.log(`[${requestId}] Request started`);
// ... 処理 ...
console.log(`[${requestId}] Request completed`);

セキュリティに関する考慮事項

✅ 安全な使用

  • セッションID
  • APIキー (追加のセキュリティと併用)
  • 一時ファイル名
  • トラッキングID

⚠️ 注意が必要

  • 予測不可能だが秘密ではない: UUIDのみで認証しないでください
  • 追加検証が必要: 権限確認、署名など
  • 露出可能: URLに含める場合ログに記録される

よくある質問

Q: UUIDは本当に一意ですか?

はい。統計的に衝突確率はほぼゼロです。実際に重複する可能性は、宇宙の年齢の間、毎秒10億個を生成してもほとんどありません。

Q: UUID v4とv1の違いは?

  • v1: タイムスタンプ + MACアドレスベース、時系列順序保証、個人情報露出の懸念
  • v4: 完全にランダム、時系列順序なし、個人情報安全

Q: 大文字と小文字、どちらを使うべきですか?

一般的に小文字が標準ですが、どちらも有効です。システム要件に応じて選択してください。

Q: ハイフンは必須ですか?

ハイフンは可読性のためのものです。一部のシステムではハイフンなし形式を好みます。

Q: データベース主キーとして使用できますか?

はい、可能です。ただし、パフォーマンスのために順序付きID(AUTO_INCREMENT)やULIDを検討することもできます。

Q: UUIDをパスワードとして使用できますか?

推奨しません。UUIDは予測できませんが、パスワードハッシュ関数(bcrypt、argon2)を使用する方が安全です。

関連ツール

パフォーマンス

  • 生成速度: ミリ秒未満
  • ブラウザサポート: Chrome 92+、Firefox 95+、Safari 15.4+
  • メモリ使用: 最小限
  • オフライン動作: 完全サポート

ブラウザ互換性

このツールはWeb Crypto APIを使用します:

  • Chrome 92+ ✓
  • Firefox 95+ ✓
  • Safari 15.4+ ✓
  • Edge 92+ ✓

古いブラウザでは動作しない場合があります。

💬 このツールは役に立ちましたか?

このUUID生成ツールがお役に立ちましたら、ぜひ周りの開発者にもシェアしてください。フィードバックやご要望がございましたら、お気軽にお知らせください。

プライバシー保護

このツールは完全にクライアント側で動作します。生成されたUUIDはサーバーに送信されず、ブラウザでのみ処理されます。あなたのデータは完全に安全です。