UUID / ULID / NanoID / トークン生成

ページを開いた瞬間に UUID が 1 件生成済み。種類を選ぶだけで UUID v7・ULID・NanoID・ランダムトークンに切り替わり、最大 1 万件を .txt / .csv / .json で保存できます。既存の UUID や ULID を貼り付ければ、埋め込まれた時刻やバージョンも読み取れます。

端末内で処理・アップロードなし

ファイルや入力内容はお使いの端末(ブラウザ)の中だけで処理され、サーバーへは送信されません。

122 ビットが完全にランダムな、最も一般的な UUID。順序に意味はありません。

最新の ID 
オプション
大文字・小文字

1〜10,000 件

使い方

  1. 上部で UUID v4・UUID v7・ULID・NanoID・ランダムトークンのいずれかを選びます。開いた直後は UUID v4 が生成されています。

  2. 「オプション」で大文字・ハイフン・文字の種類・長さなどを調整します。設定を変えると自動で作り直されます。

  3. 「生成数」で 1〜10,000 件を指定し、「再生成」で新しい値を作ります。

  4. 1 件だけなら大きく表示された ID の「コピー」、まとめて使うなら「すべてコピー」または .txt / .csv / .json で保存します。

  5. 既存の ID を調べたいときは「ID を解析」を選び、UUID か ULID を貼り付けます。

できること

UUID v7 と ULID の単調増加に対応

同じミリ秒の中で一括生成しても、ランダム部分を増やして生成順を保ちます(RFC 9562 の方式 2)。データベースの主キーに使ってもインデックスが断片化しにくい順序付きの ID を、そのまま一括で作れます。

偏りのない乱数

乱数はすべてブラウザの暗号論的乱数(crypto.getRandomValues)から取り、文字の選択には剰余による偏りが出ない棄却法を使っています。カスタム文字セットでも、各文字が均等な確率で選ばれます。

衝突確率をその場で試算

ランダム部分のビット数から「衝突確率が 1% になるまでに必要な件数」と「今回生成した件数の中で重複する確率」を計算して表示します。NanoID の長さや文字種を決めるときの根拠になります。

UUID・ULID の解析

貼り付けた UUID のバージョン・バリアントを判定し、v1 / v6 / v7 なら埋め込まれた時刻を UTC と端末のタイムゾーンで表示します。ULID は時刻とランダム部分に分解し、色分けで構造を示します。

形式を選んで一括保存

大文字・小文字、ハイフンの有無、{ } や urn:uuid: の付与を切り替えられます。最大 1 万件を .txt(1 行 1 件)、.csv(時刻列付き)、.json(配列)で保存できます。

こんなときに

  • データベースの主キーに、時刻順に並ぶ UUID v7 や ULID を使いたい
  • テストデータ用に、ID を数千件まとめて CSV で用意したい
  • URL に入れる短い ID の長さを、衝突確率を見ながら決めたい
  • API キーや Webhook の署名用シークレットを安全な乱数で作りたい
  • ログに残っている UUID がいつ・どの方式で作られたかを確かめたい

対応形式

生成

UUID v4UUID v7(RFC 9562)ULIDNanoID(文字種・長さ指定)hex / Base64URL / Base64 / 英数字 / カスタム文字のトークン

保存

.txt(1 行 1 件).csv(index・id・時刻).json(配列)

解析

UUID v1〜v8・Nil / Max UUIDハイフンなし・{ }・urn:uuid: 表記ULID(Crockford Base32)

対応状況

機能対応補足
UUID v4 / v7 の生成対応v7 は同一ミリ秒内でも順序を保証
ULID・NanoID・ランダムトークンの生成対応最大 1 万件を一括
UUID / ULID の時刻・バージョン解析対応v1・v6・v7・ULID の時刻を表示
UUID v1 / v6 の生成非対応MAC アドレスや時刻が漏れるため非対応(v7 を推奨)
UUID v3 / v5(名前ベース)の生成非対応解析でバージョンの判定のみ対応
生成済み ID の重複チェック(他システムとの照合)一部対応衝突確率の計算のみ。実際のデータとの照合はできません
オフラインでの利用対応一度開いたあとは通信なしで動作

制限・注意事項

  • 一度に生成できるのは 1〜10,000 件です。
  • NanoID は 2〜256 文字、トークンは 1〜1,024 バイト(文字数指定の形式は 1〜1,024 文字)まで指定できます。
  • UUID v7 と ULID の時刻はお使いの端末の時計に依存します。時計がずれていると、埋め込まれる時刻もずれます。
  • 衝突確率は誕生日問題に基づく近似値です。乱数の品質はブラウザの実装に依存します。

プライバシーと安全性

ID・トークンの生成と解析は、すべてお使いのブラウザの中で行われます。生成した値や貼り付けた値がサーバーへ送信・保存されることはなく、アクセス解析にも含めません。API キーなどの秘密情報も安心して作成できます。

よくある質問

UUID v4 と v7 はどちらを使うべきですか?
データベースの主キーなど並び順が意味を持つ用途では v7 がおすすめです。先頭が時刻なので新しい行が末尾に追加され、インデックスの断片化を抑えられます。生成時刻を知られたくない場合や、順序が不要な場合は v4 を使います。
UUID が重複することはありますか?
理論上はあり得ますが、UUID v4 の場合は約 3.3 × 10^17 件を作ってようやく衝突確率が 1% に達する計算です。本ツールでは種類と長さに応じた衝突確率を表示しています。
ULID と UUID v7 の違いは?
どちらも先頭 48 ビットがミリ秒時刻で時刻順に並びます。ULID は 26 文字の Crockford Base32 で、紛らわしい I・L・O・U を使いません。UUID v7 は標準の 36 文字表記で、UUID 型の列やライブラリでそのまま扱えます。
NanoID は何文字にすればよいですか?
既定の 21 文字(64 種の文字)は約 126 ビットで、UUID v4 と同程度の衝突しにくさです。短くしたい場合は、表示される「衝突確率 1% に達する件数」が想定する総件数より十分大きいかを確認して決めてください。
パスワードの生成にも使えますか?
ランダムトークンは安全な乱数で作られていますが、人が入力するパスワードには記号の種類や読み間違えにくさの配慮が必要です。パスワードには、強度チェック付きの「パスワード生成・強度チェック」ツールをご利用ください。

テキスト・コード Diff

変更前と変更後を貼り付けるかファイルをドロップするだけで、追加・削除された行と、行の中で変わった単語まで色分けして表示します。結果は unified 形式のパッチとしてコピー・保存でき、入力はブラウザの外へ出ません。

正規表現テスター(Regex Tester)

パターンを入力すると、一致した箇所がテスト文字列の上で即座に色付けされます。キャプチャグループ・置換結果・パターンの意味まで一画面で確認でき、ブラウザを固まらせる危険なパターンは 1 秒で自動停止します。

コード整形・圧縮(Code Formatter)

コードを貼り付けるだけで、言語を自動判定して整形できます。インデント・1 行の幅・セミコロン・引用符・末尾カンマを選べ、JavaScript・CSS・HTML は圧縮前後のサイズと削減率も表示。入力は端末の外へ出ません。

JSON 整形・検証(JSON Studio)

JSON を貼り付けるだけで整形・1 行化・構文チェック。エラーは「何行目の何が悪いか」まで表示し、コメントや末尾カンマは自動修復できます。データは端末の外へ送信しません。

XML 整形・検証(XML Studio)

XML を貼り付けるだけで整形・1 行化・検証。エラーは「何行目の何がどう悪いか」まで表示し、意味を変える空白(混在内容・xml:space)には手を付けません。XPath 検索と JSON 変換も同じ画面で。データは端末の外へ送信しません。

YAML / TOML 検証・整形・変換(YAML / TOML Studio)

YAML・TOML・JSON を貼り付けるだけで構文チェック・整形・相互変換。エラーは行と列で示し、「no が false になる」などの型の落とし穴と、変換で失われるものを事前に警告します。データは端末の外へ送信しません。

最終更新: