從命名空間 UUID 和名稱產生 UUID v5 識別碼,而不會將任何值傳送到伺服器。當你需要可從相同輸入日後重新建立的穩定識別碼時,UUID v5 很有用,例如網域名稱、URL、物件路徑、帳號代號或測試資料記錄的 ID。
How UUID v5 Works
UUID v5 會將命名空間 UUID 與名稱字串結合,使用 SHA-1 對這些位元組進行雜湊,然後套用 RFC 4122 的版本與變體位元。由於輸入是確定性的,DNS 命名空間中的 example.com 永遠會產生相同的 UUID:cfbff0d1-9375-5685-968c-48ce8b15ae17。
Choosing A Namespace
網域名稱使用 ns:DNS,URL 使用 ns:URL,物件識別碼使用 ns:OID,X.500 辨別名稱使用 ns:X.500 DN。當你的應用程式需要以產品、租戶、資料集或遷移範圍限定的識別碼時,也可以貼上自己的 UUID 命名空間。
When To Use It
當可重現性比隨機性更重要時,請選擇 UUID v5。它很適合確定性匯入、測試資料、具命名空間的記錄,以及需要同一個邏輯項目在多次執行中取得相同 ID 的系統。若是祕密權杖或不可預測的公開 ID,請改用隨機產生器。