UUID バージョン4 ジェネレーター(ランダム)

最大の一意性とセキュリティのためにランダムなUUIDを生成

これらの例を試してください:

UUID v4とは?

UUIDバージョン4 はRFC 4122に基づくランダムベースの128ビット識別子(36文字の文字列)です。構成は以下の通りです:

  • ランダム値: 122ビットのランダムデータ
  • バージョンビット: バージョン4を示す4ビット (0100)
  • バリアントビット: RFC 4122バリアントを示す2ビット (10)

フォーマット例: f47ac10b-58cc-4372-a567-0e02b2c3d479

UUID v4の動作

  1. 暗号学的に強力な122ビットのランダムデータを生成する
  2. バージョンビットを0100(バージョン4)に設定する
  3. バリアントビットを10(RFC 4122標準)に設定する
  4. ハイフン付きの32桁の16進数として組み立てる:8-4-4-4-12形式

利点と考慮点

AdvantagesConsiderations
  • プライバシーの懸念なし
  • 暗号学的に安全
  • クロック/状態依存なし
  • 非常に予測不可能
  • 時間順/ソート不可
  • 生成がやや遅い
  • 高品質なRNGが必要
  • 作成時間の埋め込みなし

UUID v4の構造

BitsContent
0-47ランダムデータ
48-51バージョン (v4のための0100)
52-63ランダムデータ
64-65バリアント (RFC4122のための10)
66-127ランダムデータ

UUID v4と他のバージョンの比較

Version基づくもの使用例Privacy
UUID v1時間 + MAC時間順ID⚠️ MACを公開
UUID v3名前空間 + MD5決定論的ID✅ プライベート
UUID v4Random安全なランダムID✅ プライベート
UUID v5名前空間 + SHA-1決定論的ID✅ プライベート
UUID v6時間(再配置)ソート可能ID⚠️ MACを公開
UUID v7時間 + ランダムソート可能ID✅ プライベート

一般的な使用例

  • データベースキー: 分散アプリケーション
  • セキュリティトークン: 認証システム
  • ワンタイム識別子: 一時的アクセス
  • マルチテナントシステム: 衝突防止
  • コンテンツ識別子: ドキュメント管理
  • APIリクエストID: リクエスト追跡

よくある質問

UUID v4は暗号学的に安全ですか?

はい。UUID v4は暗号学的に強力な乱数生成器に依存しており、セキュリティに敏感なアプリケーションに適しています。

UUID v4の値は衝突する可能性がありますか?

理論的には可能ですが、実際にはほとんどありません。122ビットのランダムデータにより、数十億のUUIDが生成されても衝突の確率は非常に低いです。

UUID v4から作成時間を抽出できますか?

いいえ。時間ベースのUUID(v1、v6、v7)とは異なり、UUID v4はタイムスタンプ成分を持たず、ランダムデータのみで構成されています。

UUID v4の値は作成時間でソートできますか?

いいえ。UUID v4の値はランダムであり、作成時間とは無関係です。ソート可能なIDが必要な場合は、UUID v1、v6、またはv7を検討してください。

UUID v4の値はシステム情報を公開しますか?

いいえ。UUID v4はバージョンとバリアントビットを含む完全にランダムなデータで構成されており、システム情報の漏洩はありません。

Resources