🆔 UUID 產生器
即時產生隨機 version 4 UUID。
這是什麼工具?
UUID 產生器是一款免費的線上工具,只需一鍵即可建立通用唯一識別碼(UUID)。UUID 是 128 位元的數字,用於在電腦系統、資料庫和分散式應用中唯一識別資訊,而無需中央協調機構。 UUID(通用唯一識別碼),在 Microsoft 生態系統中也稱為 GUID(全域唯一識別碼),是一個 36 字元的字串,格式為五組以連字號分隔的十六進位數字:xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx。M 表示版本(隨機 UUID 為 4),N 編碼變體。version 4 擁有 122 位元的隨機性,兩個產生的 UUID 相同的機率微乎其微,使碰撞實際上不可能發生。 UUID 在現代軟體開發中無處不在:作為資料庫主鍵、工作階段識別碼、API 權杖、檔案名稱、訊息 ID 等。它們消除了對中央 ID 機構的需求,非常適合分散式系統。此產生器使用您瀏覽器的安全隨機數產生器建立密碼學安全的 version 4 UUID,可以一次產生單個 UUID 或數千個批次 UUID。運作原理
此產生器建立 version 4 UUID,這種 UUID 的大部分使用隨機位元。它使用瀏覽器的 crypto.getRandomValues() 函式,該函式從作業系統的熵池提供密碼學安全的亂數。 version 4 UUID 的格式為:xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx,其中 x 是隨機十六進位數字(0-9、a-f),y 是 8、9、a 或 b 其中之一。位置 13 的「4」標識為 version 4,y 值(以 8、9、a 或 b 開頭)標識 RFC 4122 變體。其餘 122 位元是隨機產生的,提供 2¹²² 種可能的 UUID。 碰撞機率極低,在所有實際應用中都可以忽略。要有 50% 的機率發生單次碰撞,您需要產生約 2.71 京個 UUID。即使每秒產生十億個 UUID 持續 85 年,碰撞機率仍然微不足道。此產生器可以產生大寫或小寫的 UUID,可包含或不包含連字號,並支援可設定數量的批次產生。使用方法
- 設定要產生的 UUID 數量。
- 選擇格式選項(大小寫、連字號)。
- 點擊「產生」建立 UUID。
- 複製單個 UUID 或一次複製全部。
- 在您的專案中將它們用作唯一識別碼。
常見問題
常見問題
UUID 用於什麼?
UUID 用作資料庫(主鍵)、分散式系統(訊息/事件 ID)、API(請求追蹤)、檔案儲存(唯一檔案名稱)等需要唯一參考而無需中央 ID 機構的場合的唯一識別碼。
產生的 UUID 真的是唯一的嗎?
version 4 UUID 擁有 122 位元的隨機性,使碰撞極不可能發生。即使產生 103 兆個 UUID,碰撞機率仍不到十億分之一。在所有實際應用中,它們是唯一的。
UUID 和 GUID 有什麼區別?
它們本質上是相同的東西。UUID 是 RFC 4122 標準名稱,而 GUID 是 Microsoft 對相同概念的名稱。格式和用途完全相同。GUID 通常用大括號書寫,但底層資料是相同的。
產生的 UUID 是密碼學安全的嗎?
是的。此產生器使用 crypto.getRandomValues(),從作業系統提供密碼學安全的亂數。產生的 UUID 適用於安全敏感的應用,如工作階段權杖和 API 金鑰。
技巧與建議
UUID 解決了在系統之間無需協調即可產生唯一識別碼的問題。version 4(隨機)是一般使用中最常見的,因為它不需要狀態,可以在任何地方產生。version 1(基於時間和 MAC 地址)在您需要可排序的 ID 時很有用,但會揭露產生機器的 MAC 地址。version 3 和 5(基於名稱和雜湊)從名稱字串產生確定性的 UUID,在相同輸入應始終產生相同 UUID 時很有用。對於資料庫主鍵,UUID 避免了序列整數猜測的漏洞,並自然適用於分散式資料庫。在 URL 中使用 UUID 時,請考慮省略連字號或使用 base62 編碼來縮短它們。對於安全敏感的 UUID,請始終使用 crypto.getRandomValues(),而不是 Math.random()。