UUID v4 / v7 と ULID を生成
Web Crypto を使ってブラウザ内で安全にIDを生成します。テストデータやログキーの仮払い出しに便利です。
このツールは乱数を使うため、同じURLクエリでも毎回異なるIDを返します。
使い方と AIO クエリ例
- テスト用ランダムIDには UUID v4、時系列ソートしたい場合は UUID v7 / ULID が便利です。
- URLクエリ例:
uuid_ulid_generator.html?action=uuidv7&count=3&format=json format=jsonは配列つきJSON、format=rawは改行区切りのIDだけを返します。
UUID v4 / v7 と ULID をブラウザ内でまとめて生成するツールです。テストデータの主キー、APIのモックレスポンス、ログの追跡ID、データベース設計時のサンプルIDなど、開発のあらゆる場面でランダムな識別子が必要になったときに使えます。Web Crypto APIの暗号学的乱数を使うため、本番のID払い出しに近い品質の値をその場で確認・取得でき、件数を指定すれば最大200件まで一括生成できます。
使い方・サンプル・結果例・注意点
使い方
「生成形式」でUUID v4・UUID v7・ULIDのいずれかを選び、「件数」を指定して「生成」ボタンを押すと、結果欄に改行区切りでIDが出力されます。
サンプル入力
生成形式: UUID v7 件数: 5
結果例
「生成」を押すと、現在時刻をミリ秒単位で先頭6バイトに埋め込んだUUID v7が5件、改行区切りで生成されます。例えば「018f4e2a-7b3c-7c1d-8a2f-3e9d6b1c4a7f」のような形式で、時系列順にソート可能なIDが得られます。統計欄には形式・件数・1件目の文字数(UUIDなら36文字、ULIDなら26文字)が表示されます。
注意点
生成は毎回ランダムな値を使うため、同じURLクエリでアクセスしても結果は再現されません。件数は1〜200件の範囲で指定でき、それ以外の値はエラーになります。ULIDはCrockford Base32(0-9, A-Z、ただしI・L・O・Uを除く)で26文字、UUIDはハイフン区切り36文字の16進数表記です。生成処理はすべてブラウザ内で完結し、サーバーへの送信は行いません。
こんなときに使えます
- バックエンド開発者がDBのプライマリキーをUUID v7に統一する際、サンプルデータ投入用のIDをまとめて生成する
- QAエンジニアがAPIテストのリクエストボディに含めるダミーIDを大量に用意する
- フロントエンド開発者がモックJSONのレコードIDやセッションIDのプレースホルダーとしてULIDを使う
- ログ基盤の設計者が時系列ソート可能なトレースIDの見た目や桁数を事前に確認する
よくある質問
UUID v4とUUID v7、ULIDはどう使い分ければよいですか?
ランダム性だけが必要でソート順を気にしない場合はUUID v4、生成時刻順に並べたい場合はUUID v7やULIDが適しています。ULIDはBase32で大文字英数字のみのためURLや人間が読む場面でも扱いやすい特徴があります。
生成したIDはどの程度ユニーク性が保証されますか?
Web Crypto APIの暗号学的擬似乱数を使用しているため、衝突確率は極めて低く、テストデータや一時的なID用途には十分な品質です。ただし本番環境での重複チェックは別途実施してください。
1度に生成できる件数の上限はありますか?
1件から200件まで指定できます。201件以上を指定するとエラーメッセージが表示され、生成は行われません。
URLクエリで結果を呼び出すことはできますか?
はい。例えば uuid_ulid_generator.html?action=uuidv7&count=3&format=json のようにアクセスすると、ページ読み込み時に自動生成されます。format=raw を指定すると改行区切りのIDのみが返ります。
古いブラウザでも使えますか?
Web Crypto APIのgetRandomValuesに対応していないブラウザでは「Web Crypto API に対応していないブラウザです。」というエラーが表示され、生成できません。最新のモダンブラウザでの利用を推奨します。