本文へ移動
QKQuickKitEN
識別子・認証LOCALブラウザ内で処理

ULID ジェネレーター

ULID をブラウザ内で生成します。48 ビットのミリ秒タイムスタンプと 80 ビットの暗号乱数を、26 文字の Crockford Base32 で表現。monotonic オプション付き。

入力と主要な処理をブラウザ内で行い、その入力内容をQuickKitサーバーへ送信しない設計です。

バッチのタイムスタンプ:

ULID

仕組みと使い方

ULID(github.com/ulid/spec)は 128 ビットで、48 ビットの UNIX ミリ秒タイムスタンプに 80 ビットの暗号学的乱数が続き、26 文字の Crockford Base32(0-9 と、I・L・O・U を除く A-Z)で表示されます。タイムスタンプが先頭にあるため、異なるミリ秒の ULID は文字列として生成順にソートされます。タイムスタンプは生成時の端末時刻、乱数はブラウザの Web Crypto API から取得し、どこにも送信しません。monotonic モードは、一括生成時に同一ミリ秒内でも並びを保つため、新しい乱数を引く代わりに乱数部を ULID ごとに 1 加算します(80 ビット空間を使い切った場合は折り返さずに失敗します)。標準の ULID は大文字です。小文字を要求するシステム向けにトグルを用意しています。このツールは ULID の生成のみを行い、既存の ULID の照会や属性付けは行いません。