Hoe slaan UUID's tijdstempels op?

Verschillende UUID-versies bevatten een tijdstempel direct in hun structuur. UUID v1, geïntroduceerd in RFC 4122, codeert een 60-bit Gregoriaanse tijdstempel die 100-nanoseconde-intervallen vertegenwoordigt sinds 15 oktober 1582. UUID v6 herschikt dezelfde tijdstempelvelden voor betere sorteerbaarheid, en UUID v7, gedefinieerd in RFC 9562, slaat een 48-bit Unix epoch-tijdstempel op in milliseconden. Deze ingebedde tijdstempels maken het mogelijk om het exacte moment te achterhalen waarop een UUID werd gegenereerd — nuttig voor debugging, auditing en forensische analyse.

Niet elke UUID bevat tijdinformatie. Versies 3, 4 en 5 zijn afgeleid van willekeurige gegevens of namespace-hashes, waardoor ze geen herstelbare tijdstempel bevatten. Versie 2 (DCE Security) bevat wel een tijdstempel, maar wordt in de praktijk zelden gebruikt.

Beschrijving van de tool

Deze tool extraheert en decodeert de tijdstempel die is ingebed in tijdgebaseerde UUID's. Plak een willekeurige UUID en bekijk direct de gecodeerde datum en tijd in meerdere formaten: ISO 8601, UTC, lokale tijd en Unix-tijdstempels in zowel seconden als milliseconden. De tool detecteert automatisch de UUID-versie en past het juiste decoderingsalgoritme toe.

Voorbeelden

UUID v1 invoer:

6ba7b810-9dad-11d1-80b4-00c04fd430c8 → 7 april 1998

UUID v7 invoer:

018f3e88-5c00-7b3a-8512-2d4a3f8e9c01 → 3 mei 2024

UUID v4 invoer (geen tijdstempel):

550e8400-e29b-41d4-a716-446655440000 → "Deze UUID-versie bevat geen tijdstempel"

Functies

  • Ondersteunt UUID v1 (Gregoriaanse tijdstempel), v6 (herschikt Gregoriaans) en v7 (Unix epoch milliseconden)
  • Toont resultaten in ISO 8601, UTC, lokale tijd en Unix-tijdstempelformaten
  • Detecteert automatisch de UUID-versie en selecteert de juiste decoderingsmethode
  • Valideert het UUID-formaat voordat extractie wordt geprobeerd
  • Toont een duidelijke melding voor UUID-versies die geen tijdstempels bevatten

Hoe het werkt

Elke tijdgebaseerde UUID-versie slaat zijn tijdstempel op een andere manier op:

  • UUID v1 verdeelt een 60-bit Gregoriaanse tijdstempel over drie velden: time_low (bits 0–31), time_mid (bits 32–47) en time_hi (bits 48–59). De tijdstempel telt 100-nanoseconde-intervallen sinds 15 oktober 1582.
  • UUID v6 herordent de v1-tijdstempelvelden zodat de meest significante bits eerst komen, waardoor UUID's van nature sorteerbaar zijn op aanmaaktijd, terwijl dezelfde Gregoriaanse epoch wordt gebruikt.
  • UUID v7 hanteert een eenvoudigere aanpak: de eerste 48 bits bevatten een standaard Unix-tijdstempel in milliseconden, waardoor extractie eenvoudig en compatibel is met moderne systemen.

Toepassingen

  • Debugging van gedistribueerde systemen — bepaal precies wanneer een record of gebeurtenis is aangemaakt door de UUID die eraan is toegewezen te decoderen
  • Audit en forensisch onderzoek — verifieer aanmaaktijdstempels in databases die tijdgebaseerde UUID's als primaire sleutels gebruiken
  • Migratieplanning — analyseer UUID-tijdstempels om de gegevensverdeling en -leeftijd te begrijpen voordat er tussen systemen wordt gemigreerd