Wat is een UUID-versie?

Een UUID (Universally Unique Identifier) is een 128-bit identifier gestandaardiseerd door RFC 4122 en RFC 9562. Elke UUID bevat een versieveld dat aangeeft hoe deze is gegenereerd. De versie is gecodeerd in het 13e hexadecimale cijfer (de hoge nibble van de 7e byte), en bepaalt het algoritme en de gegevensbronnen die zijn gebruikt om de identifier te maken.

Er zijn momenteel acht gedefinieerde versies (v1 tot en met v8), plus twee speciale vormen: de Nil UUID (alle nullen) en de Max UUID (alle enen). Elke versie dient een ander doel — sommige bevatten tijdstempels voor chronologische sortering, sommige gebruiken cryptografische hashes voor deterministische generatie, en andere vertrouwen op willekeurige getallen voor eenvoud. Het kennen van de versie helpt u de eigenschappen, beveiligingsimplicaties en het beoogde gebruik van een UUID te begrijpen.

Het variantveld, afzonderlijk gecodeerd, geeft aan aan welke UUID-specificatie de identifier voldoet. De meeste moderne UUID's gebruiken de RFC 4122/RFC 9562-variant, maar oudere systemen kunnen NCS- of Microsoft-varianten produceren.

Beschrijving van de tool

Deze tool neemt een willekeurige UUID als invoer en identificeert het versienummer, de versienaam, de variant, de generatiemethode en een gedetailleerde beschrijving van hoe die versie werkt. De tool ondersteunt alle standaardversies (v1 tot en met v8), evenals Nil- en Max UUID's. Plak eenvoudig een UUID en bekijk direct de volledige uitsplitsing.

Voorbeelden

Invoer UUID Versie Naam
550e8400-e29b-41d4-a716-446655440000 4 Willekeurig (v4)
6ba7b810-9dad-11d1-80b4-00c04fd430c8 1 Tijdgebaseerd (v1)
018f3e88-5c00-7b3a-8512-2d4a3f8e9c01 7 Unix Epoch-tijdgebaseerd (v7)
00000000-0000-0000-0000-000000000000 Nil Nil UUID
ffffffff-ffff-ffff-ffff-ffffffffffff Max Max UUID

Functies

  • Detecteert alle UUID-versies van v1 tot v8, plus Nil- en Max UUID's
  • Identificeert de variant (RFC 4122/9562, NCS, Microsoft of Gereserveerd)
  • Toont een leesbare beschrijving die uitlegt hoe de versie wordt gegenereerd
  • Geeft de generatiemethode weer die is gebruikt om de UUID te produceren
  • Directe realtime identificatie terwijl u typt of plakt

Gebruikssituaties

  • Debuggen van gedistribueerde systemen: Bepaal of UUID's in uw logs tijdgebaseerd (v1/v6/v7) of willekeurig (v4) zijn, om te begrijpen of ze ingebedde tijdstempels bevatten die u kunt extraheren.
  • Database-optimalisatie: Identificeer of uw primaire sleutels een sorteerbare UUID-versie (v6, v7) of een willekeurige (v4) gebruiken die indexfragmentatie kan veroorzaken.
  • Beveiligingsaudit: Detecteer v1 UUID's die mogelijk MAC-adressen of tijdstempels lekken, zodat u risico's op informatieblootstelling kunt beoordelen.

Hoe het werkt

De tool parseert de hexadecimale structuur van de UUID om twee sleutelvelden te extraheren:

  1. Versie: Gelezen uit het 13e hex-cijfer (index 12 in de gestripte hex-string). Deze nibble codeert direct het versienummer (1–8). Nil- en Max UUID's worden gedetecteerd door te controleren of alle bits nul of alle bits één zijn.
  2. Variant: Bepaald door de meest significante bits van het 17e hex-cijfer (index 16). Het bitpatroon verwijst naar een van vier variantfamilies: NCS, RFC 4122/9562, Microsoft of Gereserveerd.

UUID-versies in één oogopslag

Versie Naam Belangrijkste eigenschap
v1 Tijdgebaseerd Tijdstempel + MAC-adres
v2 DCE Security Tijdstempel + MAC + POSIX UID/GID
v3 Naamgebaseerd (MD5) Deterministisch op basis van naamruimte + naam
v4 Willekeurig 122 willekeurige bits
v5 Naamgebaseerd (SHA-1) Deterministisch, sterkere hash dan v3
v6 Hergeordend tijdgebaseerd Sorteerbare variant van v1
v7 Unix Epoch-tijdgebaseerd Unix ms-tijdstempel + willekeurig, ideaal voor DB-sleutels
v8 Aangepast Leverancierspecifiek of experimenteel
Nil Nil UUID Alle 128 bits ingesteld op nul
Max Max UUID Alle 128 bits ingesteld op één

Veelgestelde vragen

Wat is het verschil tussen UUID-versie en variant? De versie geeft het generatie-algoritme aan (tijdgebaseerd, willekeurig, hashgebaseerd, enz.), terwijl de variant aangeeft aan welke specificatie de UUID voldoet (RFC 4122, NCS, Microsoft). De meeste UUID's die u tegenkomt, zijn van de RFC 4122/9562-variant.

Welke UUID-versie moet ik gebruiken? Voor de meeste toepassingen is v4 (willekeurig) de eenvoudigste en meest breed ondersteunde optie. Als u tijdsorteerbare identifiers nodig heeft voor primaire databasesleutels, is v7 de moderne aanbeveling. Gebruik v5 wanneer u deterministische UUID's nodig heeft die zijn afgeleid van een naam.

Kan deze tool de tijdstempel uit een UUID extraheren? Deze tool identificeert alleen de versie en variant. Om ingebedde tijdstempels uit v1-, v6- of v7 UUID's te extraheren, gebruikt u de speciale UUID Time Extractor-tool.