ULID生成
ULID(Monotonic方式)を件数指定でまとめて生成します。処理はブラウザ内で完結し、入力・生成結果はサーバーへ送信しません。
ULIDは生成時刻順に並べやすい識別子ですが、並び順には条件があります。詳しくは下記の説明をご覧ください。
ULIDには生成時刻の情報が含まれます。パスワードやAPIキー等の秘密情報の代わりとしては使用しないでください。
「生成」を押すとULIDが表示されます。
このツールでできること
ULID生成の主な機能です。
- ULIDを1〜1,000件、指定した件数だけ一括生成できます
- 結果は1行1ULID(uppercase・26文字)で一覧表示されます
- 一覧を改行区切りで一括コピーできます
- 入力・生成結果はブラウザ内で処理し、サーバーへ送信しません
手順を見る
- 生成件数を入力します(既定は1件、最大1,000件)
- 「生成」を押します
- 表示された一覧を「一括コピー」でクリップボードへコピーします
- 不要になったら「クリア」で結果を消せます(件数の入力値は保持されます)
こんなときに使えます
こんな場面でULID生成が役立ちます。
利用シーンを見る
- 新しいテーブルの主キー候補としてULIDを試したいとき
- 開発・テスト用に、まとまった件数のダミーIDが欲しいとき
- UUID以外の識別子形式をすぐに確認したいとき
ULIDの仕組みについて
ULIDの構造・並び順・重複可能性・UUIDとの違いを説明します。
詳しい解説を見る
ULIDとは
ULID(Universally Unique Lexicographically Sortable Identifier)は26文字の識別子で、先頭10文字がタイムスタンプ(ミリ秒精度)、残り16文字がランダム性を表します。Crockford's Base32という文字体系(数字とアルファベットのうち、I・L・O・Uを除いた32種類)でエンコードされ、本ツールでは大文字(uppercase)で表示します。
並び順(sortability)について
ULIDはタイムスタンプ部分が先頭にあるため、異なるミリ秒に生成されたULID同士は文字列として時刻順に並べやすい識別子です。ただし、通常のULID(本ツールでは採用していません)では、同一ミリ秒内に複数生成した場合の並び順は保証されません。本ツールはMonotonic ULIDという方式を採用しており、同じページを開いている間(同一のgenerator instance)に連続して生成したULIDは、同一ミリ秒内であっても生成した順番どおりに単調増加します。ただし、別タブ・ページの再読み込み・別のシステムで生成したULIDとの間まで、常に順番どおりになることを保証するものではありません。
重複する可能性について
ULIDには80 bitのrandomness部分があります。識別子として衝突する可能性は非常に低い設計ですが、数学的に絶対に重複しないことを保証するものではありません。生成した値の一意性が厳密に必要な場面では、この点を踏まえてご利用ください。
Monotonic方式について(並び順のための仕組み)
本ツールが採用するMonotonic ULIDは、同じページを開いている間の生成順序を揃えるための仕組みです。上記の「並び順について」で説明した性質を実現するためのものであり、「重複する可能性について」で説明した一意性の保証や強化を目的とした仕組みではありません。
UUIDとの違い・セキュリティ用途について
せやテクの「UUID生成」ツールが生成するUUID v4は小文字(lowercase)のハイフン区切り36文字で、タイムスタンプを含まずランダム性のみで構成されます。本ツールが生成するULIDは大文字26文字で、タイムスタンプを含む点が異なります。ULIDにはタイムスタンプ(生成時刻)がそのまま含まれるため、公開APIの識別子等にそのまま使うと第三者に生成時刻を推測される可能性があります。また、ULIDは識別子を素早く得るための仕組みであり、パスワード・API secret・認証トークン・暗号鍵等の秘密情報を安全に生成するための仕組みではありません。これらの代わりとして利用することは推奨しません。
よくある質問
生成したULIDは重複する可能性がありますか?
極めて低い確率ですが、数学的に重複が起こらないことを保証するものではありません。生成した値の一意性が厳密に必要な場面では、この点を踏まえてご利用ください。
ULIDは常に生成した順番どおりに並びますか?
本ツールはMonotonic ULIDという方式を採用しており、同じページを開いている間に連続して生成したULIDは、同一ミリ秒内であっても生成順どおりに並びます。ただし、別タブ・ページの再読み込み・別のシステムで生成したULIDとの間まで、常に順番どおりになることを保証するものではありません。
ULIDをパスワードやAPIキーの代わりに使ってもいいですか?
推奨しません。ULIDは識別子であり、パスワード・API secret・認証トークン・暗号鍵等の秘密情報を安全に生成するための仕組みではありません。またULIDには生成時刻がそのまま含まれるため、公開APIの識別子等にそのまま使うと第三者に生成時刻を推測される可能性があります。
UUIDとの違いは何ですか?
せやテクの「UUID生成」ツールが生成するUUID v4は小文字のハイフン区切り36文字で、タイムスタンプを含みません。本ツールが生成するULIDは大文字26文字で、先頭にタイムスタンプを含む点が異なります。
入力した件数や生成したULIDはサーバーに送信されますか?
入力した件数や生成したULID自体は外部へ送信しません。