開發者工具

UUID/ULID 生成器

在瀏覽器內每次生成最多 100 個 UUID v4、UUID v7 或 ULID,支援整批複製、ID 格式檢查及讀取支援格式的 UTC 時間戳記。

關於UUID/ULID 生成器

在瀏覽器內生成及複製一批 ID

選擇 UUID v4、UUID v7 或 ULID,輸入 1 至 100 的整數,再按「生成 ID」。結果每行顯示一個 ID,可按「複製所有 ID」複製整批。改變類型或數量只會影響下一次生成;在新一批成功生成前,結果欄及其標題仍代表上一批。「清除結果」不會清除獨立的格式檢查輸入。

生成過程需要瀏覽器的密碼學安全隨機數功能。UUID v7 及 ULID 亦需要有效的裝置時間。若生成失敗,工具會保留上一批結果並顯示提示;請勿將保留的結果當成新一批。

UUID v4、UUID v7 及 ULID 有甚麼分別?

UUID 是 128 位元識別碼,常見文字格式為 36 個字元,包括 4 個連字號。UUID v4 在版本及變體欄位以外使用 122 個隨機位元。本工具的 UUID v7 將 48 位元用作 Unix 毫秒時間戳記,其餘 74 位元(不計版本及變體)使用獨立隨機數。RFC 9562 亦容許其他 v7 實作在這部分加入小於毫秒的時間精度或計數器。

ULID 使用 48 位元毫秒時間戳記及 80 個隨機位元,以 26 個 Crockford Base32 字元表示。字元表不包含 I、L、O、U。本工具生成大寫 ULID,檢查時亦接受小寫。

v7 及 ULID 的時間欄位有助按時間整理資料庫識別碼,但也可能透露大約的生成時間。裝置時鐘可能不準確,ID 亦可人為構造,因此內嵌時間不能證明紀錄的實際建立時間。

貼上 ID,檢查格式及 UTC 時間

展開「檢查 ID 格式」,貼上一個 ID,按「檢查」或 Enter。輸入上限為 128 個 UTF-16 編碼單位,包括開頭及結尾的空白;工具會先檢查長度,然後才忽略前後空白。UUID 須採用有連字號的 8-4-4-4-12 格式,版本欄位為 1 至 8、變體位元為 10。全為 0 的 Nil UUID 及全為 1 的 Max UUID 亦可辨識。ULID 則檢查字元表、26 字元長度及 128 位元數值上限。

可貼上 RFC 的固定 UUID v7 例子 017f22e2-79b0-7cc3-98c4-dc0c0c07398f,預期顯示 2022-02-22T19:22:22.000Z(UTC)。這是公開例子,並非剛生成的唯一 ID。UUID v4 例子 550e8400-e29b-41d4-a716-446655440000 不含時間戳記。

只有支援的 UUID v7 及 ULID 會顯示內嵌時間。「有效」只表示符合本工具支援的格式,不能證明 ID 唯一、資料存在、來源可信或已通過身份驗證,亦不是對每個 UUID 版本全部專屬欄位的完整驗證。

排序、重複機會及安全用途

本工具沒有使用維持遞增次序的計數器。同一毫秒生成的 UUID v7 或 ULID 不保證按生成次序排序;裝置時鐘倒退亦可能令時間次序倒退。資料庫的儲存格式及定序規則也會影響排序結果。

隨機 ID 並非絕不重複。假設隨機數理想、均勻而且互相獨立,生成約 2.71 × 10^18 個 UUID v4 後,至少出現一次重複的機率約為 50%。這個估算不保證任何裝置或隨機數來源的品質。需要唯一性的系統仍應設置資料庫唯一性約束,並處理重複情況。

請勿將這些 ID 當作秘密驗證權杖。密碼重設、登入工作階段等用途,應使用專為該用途設計的密碼學安全權杖機制。

複製失敗、等候提示及私隱

若自動複製失敗,可選取結果後手動複製。寫入仍在等候處理時,須待操作結束才能再次自動複製。約 5 秒仍未確認完成時會顯示提示;背景分頁或裝置休眠可能延遲提示。已開始的剪貼簿寫入無法取消,可能稍後才完成,請核對貼上後的內容。

輸入及生成的 ID 都在瀏覽器內處理,不會上載至本工具的處理伺服器。網站的廣告及使用情況統計仍會另外發出網絡請求。

為系統選擇 UUID 版本

如需比較資料庫識別碼的版本與用途,可閱讀UUID v1、v4、v7 實務指南。請按系統需求選擇格式,不要單憑識別碼推斷事件發生次序。

常見問題

Q. 應選擇哪一種 ID?
先確認系統接受的格式。UUID v4 不含時間戳記;UUID v7 及 ULID 含有毫秒時間欄位,可用於按時間整理的識別碼。本工具不保證同一毫秒內的生成次序。
Q. 一次最多可生成多少個?
每批可生成 1 至 100 個 ID。類型及數量變更只影響下一批;新一批成功生成或按下「清除結果」前,現有結果會保留。
Q. 通過格式檢查就代表 ID 唯一嗎?
不是。工具不會查詢資料庫,亦不會證明唯一性或驗證來源身份。Nil 及 Max UUID 是可辨識的特殊值,並非新生成的識別碼。
Q. 為甚麼 UUID 未能通過檢查?
請使用有連字號的 8-4-4-4-12 格式、版本 1 至 8 及變體位元 10,或 Nil/Max 特殊值。不支援大括號、urn:uuid: 前綴或沒有連字號的形式。128 個 UTF-16 編碼單位上限包括前後空白。
Q. 可用作密碼重設或登入權杖嗎?
請勿用作秘密驗證權杖。應使用專為身份驗證、密碼重設或登入工作階段設計的密碼學安全權杖機制。UUID v7 及 ULID 亦可能透露內嵌時間。
Q. ID 會上載至伺服器嗎?
本工具在瀏覽器內處理輸入及生成的 ID,不會將內容上載至處理伺服器。網站廣告及使用情況統計仍可能發出其他網絡請求。

資料來源與規格

相關工具

有問題或建議? 聯絡 NanToo

為這項工具評分
—(0 則評分)