ITを整える
中級UUID・ULIDを整える。
= 世界でかぶらない番号(UUID/ULID)を作って・確かめる
プログラムで「世界でかぶらない番号(ID)」を作るときに使う UUID と ULID を、その場で生成・検証できる道具です。何個でもまとめて作れて、貼り付ければ妥当性や埋め込まれた時刻も読み取れます。乱数はこの端末の暗号乱数(crypto)で作り、入力も結果も外には一切出ません(送信ゼロ)。
TLDR — 30秒で分かる
プログラム用の「世界でかぶらない番号」=UUID v4 と ULID を、その場で生成・整形・検証。ULIDは時刻つきでソート可。乱数はブラウザの暗号乱数、送信ゼロ。
主な機能を見る
- UUID v4 を個数指定(1〜100)でまとめて生成
- ULID 生成(時刻48bit+乱数80bit・26文字・生成順ソート可)
- ハイフン有無・大文字小文字・波括弧トグル+NIL UUID+全部コピー
- 貼り付けた文字列の UUID 判定(バージョン・バリアント)
- ULID 判定と埋め込み時刻の復元表示
- 暗号乱数・生成も検証もブラウザ内完結(送信ゼロ)
v4 は完全にランダム。理論上は衝突(同じ値が出ること)が起きえますが、確率は天文学的に小さく実用上ゼロです(保証はしません)。
ULID は先頭に生成時刻が入るため、生成順におおむね辞書順ソートできます(同一ミリ秒内の前後は保証しません)。26文字・Crockford Base32(紛らわしい I/L/O/U を除く)。
NIL UUID(全ゼロ)
00000000-0000-0000-0000-000000000000 「IDなし」を表す予約値。上の表示形式トグルに連動します。
UUID と ULID・要点4つ
「世界でかぶらない番号」を、サーバに頼まず自分で作る。
- 1
UUID v4 = ほぼ全部ランダム
128bit のうち 122bit が乱数。形式は
8-4-4-4-12の36文字で、13文字目が必ず「4」(バージョン)、17文字目が 8 / 9 / a / b(バリアント)になります。数が膨大なので、別々の端末が同時に作っても実質ぶつかりません。 - 2
ULID = 時刻つきでソートできる ID
先頭48bit に生成時刻(ミリ秒)、残り80bit が乱数。26文字の Crockford Base32 で、見た目で並べるとおおむね生成順になります。データベースの主キーに使うと、ランダムな UUID v4 より挿入が素直になりやすいのが利点。逆順に時刻を取り出すこともできます(このページの検証で確認できます)。
- 3
形は自由に整えられる
UUID はハイフンを取った32桁ベタ書き、大文字、
{…}波括弧つき(Windows レジストリなどで見る形)など、用途で書き方が変わります。中身は同じなので、上のトグルで貼り替えられます。 - 4
乱数はブラウザの暗号乱数
このツールは
crypto.randomUUID()/crypto.getRandomValues()を使います。Math.random()のような予測されうる乱数ではなく、暗号用途に耐える乱数です。生成も検証もすべてこの端末の中で完結し、サーバには送られません(送信ゼロ)。
⚠ ひとこと注意
UUID v4 の衝突は実質ゼロですが、数学的に「絶対起きない」保証ではありません。ULID は生成順ソートできる反面、IDから生成時刻が読めるため、時刻を隠したい場面では向きません。どちらも「秘密の値(パスワード・トークン)」ではないので、推測されて困る用途には別の仕組みを使ってください。
🔒 生成・検証はすべてあなたのブラウザの中(Web Crypto API と純JavaScript)で完結します。作った ID も貼り付けた文字列もサーバには送られません(送信ゼロ)。
よくある質問
- Q. UUID と ULID はどう違いますか?
- A. UUID v4 は完全ランダムな128bit ID。ULID は先頭に生成時刻が入る26文字で、生成順におおむねソートできます。並び順が欲しいなら ULID、純粋に一意でよければ UUID v4 です。
- Q. UUID v4 は本当にかぶらないのですか?
- A. 122bit の乱数なので衝突確率は天文学的に小さく、実用上ゼロです。ただし数学的に「絶対起きない」保証ではありません。
- Q. 生成した値はサーバに送られますか?
- A. いいえ。crypto.randomUUID / crypto.getRandomValues でこの端末の中だけで作られ、貼り付けた検証文字列も外に出ません(送信ゼロ)。
- Q. ULID から時刻が読めるのは問題ですか?
- A. 用途次第です。並び替えや作成時刻の把握に便利な反面、ID から生成時刻が分かるので、時刻を秘密にしたい場面では UUID v4 が向きます。
- Q. ハイフンなし・大文字・波括弧つきはどう使い分けますか?
- A. 中身は同じ ID で表記が違うだけです。波括弧つきは Windows レジストリ等、ハイフンなし32桁はURLやファイル名でよく使われます。トグルで貼り替えられます。
- Q. UUID や ULID をパスワードやトークン代わりに使えますか?
- A. 推奨しません。どちらも「秘密の値」ではなく一意な識別子です。推測されて困る用途には専用のランダムトークンを使ってください。
入力値はURLの「#」以降に入るためサーバーには送信されません。リンクを開くと同じ状態を復元します。
RELATED TOOLS
続けて整える