UUID バージョン 3 ジェネレーター(MD5 名前ベース)

名前空間と名前を使いMD5ハッシュで一貫したUUIDを生成

名前空間設定SHA-1

バージョンv3およびv5のUUIDは、決定論的UUIDを生成するために名前空間と名前が必要です。

有効なUUIDである必要があります。ドロップダウンから事前定義された名前空間を選択してください。
UUIDを作成するためにハッシュ化される任意のテキスト文字列です。

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

UUID v3とは?

UUIDバージョン3 はRFC 4122の名前空間ベースの128ビット識別子(36文字の文字列)で、MD5ハッシュを使用します。構成は以下の通りです:

  • 名前空間UUID: 事前定義またはカスタムのUUID名前空間
  • Name: ハッシュ化されるユーザー提供の文字列
  • MD5ハッシュ: 名前空間と名前の組み合わせに適用される

フォーマット例: 9125a8dc-52ee-365b-a5aa-81b0b3681cf6

UUID v3の動作方法

  1. 名前空間UUIDを選択する(事前定義またはカスタム)
  2. 名前空間UUIDのバイトと名前文字列のバイトを連結する
  3. 連結された値のMD5ハッシュを計算する
  4. バージョンビットを0011(バージョン3)に設定する
  5. バリアントビットを10(RFC 4122標準)に設定する
  6. ハイフン付きの32桁の16進数として組み立てる:8-4-4-4-12フォーマット

利点と考慮点

AdvantagesConsiderations
  • 決定論的生成
  • 同じ入力 = 同じUUID
  • 状態を必要としない
  • プライバシーの懸念なし
  • MD5は暗号学的に弱い
  • 時間順序付け/ソート不可
  • UUID v5(SHA-1)が推奨される
  • 作成時間が埋め込まれていない

UUID v3の構造

BitsContent
0-47MD5ハッシュの最初の48ビット
48-51バージョン(v3の場合0011)
52-63MD5ハッシュの次の12ビット
64-65バリアント(RFC4122の場合10)
66-127MD5ハッシュの残りの62ビット

事前定義された名前空間

NameUUIDPurpose
DNS6ba7b810-9dad-11d1-80b4-00c04fd430c8ドメイン名
URL6ba7b811-9dad-11d1-80b4-00c04fd430c8URLs
OID6ba7b812-9dad-11d1-80b4-00c04fd430c8ISO OID
X.500 DN6ba7b814-9dad-11d1-80b4-00c04fd430c8X.500識別名

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

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✅ プライベート

一般的な使用例

  • URLベースの識別子: URLからUUIDを作成する
  • ドメイン固有のID: DNS名をUUIDに変換する
  • 決定論的ファイルID: コンテンツアドレッシング
  • ユーザーID: メールまたはユーザー名から
  • 設定エントリ: 一貫したキーのために
  • ドキュメント参照: コンテンツ管理システム

よくある質問

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

そうではありません。UUID v3はMD5を使用しており、既知の暗号学的弱点があります。より高いセキュリティが必要な場合は、UUID v5(SHA-1)またはUUID v4(ランダム)を検討してください。

同じ入力は常に同じUUID v3を生成しますか?

はい。UUID v3は決定論的であり、同じ名前空間と名前は常に同一のUUIDを生成するため、再現可能なIDに便利です。

UUID v3とv5の違いは何ですか?

動作は同じですが、v3はMD5を使用し、v5はSHA-1を使用します。SHA-1はMD5より暗号学的に強いため、一般的にUUID v5が推奨されます。

独自の名前空間を作成できますか?

はい。RFC 4122は標準の名前空間(DNS、URL、OID、X.500)を定義していますが、有効なUUIDを使ってカスタム名前空間を作成できます。

UUID v3はセキュリティトークンに適していますか?

いいえ。MD5の弱点と決定論的な性質のため、UUID v3はセキュリティトークンや予測不可能性が必要な用途には推奨されません。

Resources