通用唯一識別碼(英文:Universally Unique Identifier,縮寫:UUID)是用於電腦系統中以識別資訊的一個128位元識別碼。 UUID依照標準方法產生時,在實際應用上具有唯一性,且不依賴中央機構的註冊和分配。 UUID重複的機率接近零,可以忽略不計。
因此,所有人都可以自行建立和使用UUID,幾乎可以確定其不會與既有的識別碼重複。 也因為如此,在不同地方產生的UUID可以使用於同一個資料庫或同一個頻道中,幾乎不可能重複。
UUID的格式是這樣的:xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx。 N只能是8,9,a,b其中之一。 M代表版本號,由於UUID的標準實作有5個版本,所以只會是1,2,3,4,5
透過當前時間戳記、機器MAC位址產生; 由於在演算法中使用了MAC位址,這個版本的UUID可以保證在全球範圍的唯一性。 但同時,因為它暴露了電腦的MAC位址和產生這個UUID的時間,這就是這個版本UUID被詬病的地方。
DCE安全的UUID和基於時間的UUID演算法相同,但會把時間戳記的前4位置換為POSIX的UID或GID。 不過,在UUID的規格裡面沒有明確指定,所以基本上所有的UUID實作都不會實作這個版本。
由使用者指定1個namespace和1個特定的字串,透過MD5散列,來產生1個UUID。 根據規範描述,這個版本的存在是為了向後相容,平常也很少用到。
根據隨機數,或偽隨機數產生UUID。 這個版本是用得最多的版本。
和版本3一樣,不過散列函數換成了SHA1。