第 4 版就是純隨機
v4 UUID 是 122 個隨機位元,另有六位用來標記版本和變體。裡面既不含時間也不含機器資訊——正因如此,兩套系統才能各自獨立產生,事先不必約定任何事。
為什麼不用擔心撞號
122 個隨機位元意味著,要讓重複變得可能,你得每秒產生十億個 UUID 連續產生一個世紀。這裡的亂數來自瀏覽器的密碼學亂數源,不是 Math.random。
廣告
順便看看 — 加密貨幣交易所註冊優惠
其他計算機
常見問題
Q. 可以拿來當資料庫主鍵嗎?
可以,不過隨機主鍵會把寫入分散到整個索引上。如果插入吞吐量要緊,可以看看 UUIDv7 或者別的可排序方案。
Q. 大小寫有區別嗎?
沒有。UUID 不區分大小寫;小寫是慣例,多數函式庫輸出的也是小寫。
Q. 亂數從哪來?
瀏覽器的 crypto.getRandomValues——和產生金鑰用的是同一個來源,不是較弱的 Math.random。