功能介紹
UUID(通用唯一識別碼)是一個 128 位元的值,以分成五組的 32 個十六進位數字表示,例如 3f2b8c1e-9a4d-4e7b-8c2f-1d5e6a7b8c9d。UUID 可以在任何地方、由任何程式建立,不必詢問中央伺服器,依然能保持唯一。這就是它們被用作資料庫鍵、請求 ID、檔案名稱和訊息識別碼的原因。
這個產生器在你的瀏覽器中,使用密碼學安全的 crypto.getRandomValues API 建立 UUID,遵循目前的 UUID 標準 RFC 9562。
使用方式
- 選擇 v4 產生隨機 ID,或選擇 v7 產生依建立時間排序的 ID。
- 選擇需要的 數量,從 1 到 1000。
- 關閉 含連字號 可取得精簡的 32 字元形式;系統需要大寫字母時則開啟 大寫。
- 按 產生 取得一批新的 UUID,接著複製或下載清單。
範例
五個第 4 版 UUID 長這樣:
9b2c7f0e-5d1a-4c3e-a8f7-2e6b1d0c9a84
1f4e8a2b-7c3d-4b9e-8d1f-6a5c2e7b3f90
c0a7d3e9-2b6f-4e1a-b5c8-9d4f7a1e2c63
5e9b1c4d-8a2f-4d7e-9c3b-0f6a8e2d1b57
a3f6e2d8-1c9b-4a5e-87d4-3b2c0e9f6a18
第三組開頭的 4 是版本號,第四組的第一個數字(8、9、a 或 b)則標示 RFC 變體。
該用哪個版本?
- 新的資料庫主鍵請用 v7。它能保持寫入速度,也讓你不必額外加欄位,就能依建立時間排序記錄。
- 如果 ID 不能透露建立時間,例如用在公開的 URL 中,請用 v4。
常見問題
› UUID v4 和 v7 有什麼不同?
第 4 版是 122 位元的純亂數。第 7 版以毫秒為單位的建立時間開頭,後面接著亂數位元,所以 v7 ID 會依建立時間排序。這讓它非常適合當作資料庫主鍵,因為新資料列會附加在索引的尾端。
› 產生的兩個 UUID 會重複嗎?
實際上不會。在 122 個亂數位元下,你需要每秒產生約十億個 UUID、持續 85 年,才有 50% 的機率出現一次重複。
› UUID 和 GUID 一樣嗎?
一樣。GUID 是 Microsoft 對同一種 128 位元識別碼的稱呼。有些 Microsoft 工具會以大寫或加上大括號的形式顯示它。
› 這些 UUID 可以當作機密使用嗎?
它們是以瀏覽器的密碼學安全亂數產生器產生,也永遠不會離開你的裝置。不過 API 金鑰和工作階段密鑰,還是建議使用專門的 token 格式。