Vad är en UUID-version?

En UUID (Universally Unique Identifier) är en 128-bitars identifierare standardiserad av RFC 4122 och RFC 9562. Varje UUID innehåller ett versionsfält som anger hur den genererades. Versionen kodas i det 13:e hexadecimala tecknet (den höga nibble i den 7:e byten), och den bestämmer algoritmen och datakällorna som användes för att skapa identifieraren.

Det finns för närvarande åtta definierade versioner (v1 till v8), plus två specialformer: Nil UUID (alla nollor) och Max UUID (alla ettor). Varje version tjänar ett annat syfte — vissa bäddar in tidsstämplar för kronologisk sortering, vissa använder kryptografiska hash-funktioner för deterministisk generering, och andra förlitar sig på slumptal för enkelhetens skull. Att känna till versionen hjälper dig att förstå egenskaperna, säkerhetsimplikationerna och det avsedda användningsfallet för en UUID.

Variantfältet, kodat separat, identifierar vilken UUID-specifikation identifieraren överensstämmer med. De flesta moderna UUID:er använder RFC 4122/RFC 9562-varianten, men äldre system kan producera NCS- eller Microsoft-varianter.

Verktygsbeskrivning

Det här verktyget tar vilken UUID som helst som indata och identifierar dess versionsnummer, versionsnamn, variant, genereringsmetod och en detaljerad beskrivning av hur den versionen fungerar. Det stöder alla standardversioner (v1 till v8), samt Nil och Max UUID:er. Klistra bara in en UUID och se omedelbart dess fullständiga uppdelning.

Exempel

Indata-UUID Version Namn
550e8400-e29b-41d4-a716-446655440000 4 Slumpmässig (v4)
6ba7b810-9dad-11d1-80b4-00c04fd430c8 1 Tidsbaserad (v1)
018f3e88-5c00-7b3a-8512-2d4a3f8e9c01 7 Unix Epoch-tidsbaserad (v7)
00000000-0000-0000-0000-000000000000 Nil Nil UUID
ffffffff-ffff-ffff-ffff-ffffffffffff Max Max UUID

Funktioner

  • Identifierar alla UUID-versioner från v1 till v8, samt Nil och Max UUID:er
  • Identifierar varianten (RFC 4122/9562, NCS, Microsoft eller Reserverad)
  • Visar en läsbar beskrivning som förklarar hur versionen genereras
  • Visar genereringsmetoden som användes för att producera UUID:n
  • Omedelbar identifiering i realtid när du skriver eller klistrar in

Användningsområden

  • Felsökning av distribuerade system: Avgör om UUID:er i dina loggar är tidsbaserade (v1/v6/v7) eller slumpmässiga (v4) för att förstå om de innehåller inbäddade tidsstämplar som du kan extrahera.
  • Databasoptimering: Identifiera om dina primärnycklar använder en sorterbar UUID-version (v6, v7) eller en slumpmässig (v4) som kan orsaka indexfragmentering.
  • Säkerhetsgranskning: Identifiera v1 UUID:er som kan läcka MAC-adresser eller tidsstämplar, vilket hjälper dig att bedöma risker för informationsläckage.

Hur det fungerar

Verktyget tolkar UUID:ns hexadecimala struktur för att extrahera två nyckelfält:

  1. Version: Läses från det 13:e hex-tecknet (index 12 i den avskalade hex-strängen). Denna nibble kodar direkt versionsnumret (1–8). Nil och Max UUID:er identifieras genom att kontrollera om alla bitar är noll respektive ett.
  2. Variant: Bestäms av de mest signifikanta bitarna i det 17:e hex-tecknet (index 16). Bitmönstret mappas till en av fyra variantfamiljer: NCS, RFC 4122/9562, Microsoft eller Reserverad.

UUID-versioner i korthet

Version Namn Nyckelegenskap
v1 Tidsbaserad Tidsstämpel + MAC-adress
v2 DCE Security Tidsstämpel + MAC + POSIX UID/GID
v3 Namnbaserad (MD5) Deterministisk från namnrymd + namn
v4 Slumpmässig 122 slumpmässiga bitar
v5 Namnbaserad (SHA-1) Deterministisk, starkare hash än v3
v6 Omordnad tidsbaserad Sorterbar variant av v1
v7 Unix Epoch-tidsbaserad Unix ms-tidsstämpel + slump, idealisk för DB-nycklar
v8 Anpassad Leverantörsspecifik eller experimentell
Nil Nil UUID Alla 128 bitar satta till noll
Max Max UUID Alla 128 bitar satta till ett

Vanliga frågor

Vad är skillnaden mellan UUID-version och variant? Versionen anger genereringsalgoritmen (tidsbaserad, slumpmässig, hash-baserad, osv.), medan varianten identifierar vilken specifikation UUID:n överensstämmer med (RFC 4122, NCS, Microsoft). De flesta UUID:er du stöter på kommer att vara av RFC 4122/9562-varianten.

Vilken UUID-version bör jag använda? För de flesta tillämpningar är v4 (slumpmässig) den enklaste och mest brett stödda. Om du behöver tidssorteringsbara identifierare för databasprimärnycklar är v7 den moderna rekommendationen. Använd v5 när du behöver deterministiska UUID:er härledda från ett namn.

Kan det här verktyget extrahera tidsstämpeln från en UUID? Det här verktyget identifierar endast version och variant. För att extrahera inbäddade tidsstämplar från v1-, v6- eller v7-UUID:er, använd det dedikerade verktyget UUID Time Extractor.