Fastway

UUID・ULID 生成ツール

e6d87238-0460-4e99-b4cb-ce74ed7fff53
9d13ddd8-8234-41bc-aaff-f8ec812f0f58
1952eed3-ab92-42d2-9955-4ff7877862e1
c7cd39d7-a836-41b8-8907-1fd8935b1923
28d958b5-6e21-4317-b6a5-2c34e4753e5d

UUID とは?

UUID・ULID 生成ツールは、開発者、データベース管理者、QA エンジニアのために、世界中で一意な識別子を作成します。UUID は128ビットの値で、主キー、相関ID、冪等性トークンとして使われます。調整なしに独立して生成でき、実際上は決して衝突しないためです。本ツールは3つの形式に対応します。UUID v4(完全ランダム)、UUID v7(時刻順で、時系列に並ぶためデータベースのインデックスに最適)、ULID(コンパクトで URL に適し、辞書順で並べ替え可能な識別子)です。すべては安全な Web Crypto API を使ってブラウザ内でローカルに生成されるため、値は安全で端末から外に出ることはありません。

UUID(汎用一意識別子)は128ビットの数値で、32桁の16進数をハイフンで区切って表します。バージョン4の UUID は暗号論的に安全なソースからのランダムビットで埋められ、衝突の確率は天文学的に小さく実用上は不可能です。

使い方

  1. 上部のボタンで識別子の種類(UUID v4、UUID v7、ULID)を選びます。
  2. 必要な個数(1〜1000)を設定し、ハイフンや大文字などの書式オプションを切り替えます。
  3. 「生成」をクリックし、個別の値をコピーするか、「すべてコピー」でまとめてシードやテストに貼り付けます。

使用例

  • データベースレコード・ユーザーアカウント・セッションに、中央カウンターなしで一意の識別子を割り当てる。
  • 分散システムでトランザクション ID・リクエストトレース ID・相関 ID を生成する。
  • 2回処理してはいけない API 呼び出しの冪等キーを作成する。
  • ファイル・キャッシュキー・一時リソースを衝突リスクなしで命名する。

UUID の生成方法

バージョン4 UUID は window.crypto.getRandomValues()——ブラウザーの CSPRNG——で生成されます。128ビットをランダムに埋めた後、バージョン(4)とバリアント(RFC 4122)を示す2つのビットフィールドをセットします。

同じ UUID を2回生成する確率は約 1/5.3×10³⁶ ——実用上は不可能です。

メリット

  • データベースへのデータ投入、テストデータの作成、分散システムやログ用の相関IDの生成に最適です。
  • UUID v7 と ULID は時刻順のため、書き込みの多いデータベースでランダムな v4 キーよりインデックスの断片化を抑えます。
  • 安全な乱数源を使い完全にクライアント側で動作するため、生成された識別子が送信・保存されることはありません。

UUID はローカルで生成

各 UUID および ULID は、ブラウザ内で JavaScript として動作する乱数アルゴリズムによって生成されます。生成処理は完全にローカルで、リクエストも結果も当社のサーバーへ送信されません。

FAQ

UUID v4 と v7 の違いは?

UUID v4 は完全にランダムです。UUID v7 は時刻順で、先頭のビットがタイムスタンプを表すため、時系列に並び、データベースの主キーとして優れています。

生成される ID は一意ですか?

はい。ブラウザの暗号学的に安全な API を使用するため、衝突はきわめて起こりにくいです。

一度に大量に生成できますか?

はい、一度に1〜1000個の識別子を生成し、ワンクリックですべてコピーできます。

UUID v1 と v4 の違いは何ですか?

バージョン1の UUID はマシンの MAC アドレスとタイムスタンプを基にするため、プライバシー上の問題があります。バージョン4はランダムビットのみを使います。V4 が安全な現代の標準です。