Hvordan lagrer UUID-er tidsstempler?

Flere UUID-versjoner inneholder et tidsstempel direkte i strukturen sin. UUID v1, introdusert i RFC 4122, koder et 60-bits gregoriansk tidsstempel som representerer 100-nanosekunders intervaller siden 15. oktober 1582. UUID v6 omorganiserer de samme tidsstempelfeltene for bedre sorterbarhet, og UUID v7, definert i RFC 9562, lagrer et 48-bits Unix epoch-tidsstempel i millisekunder. Disse innebygde tidsstemplene gjør det mulig å gjenopprette nøyaktig tidspunktet da en UUID ble generert — nyttig for feilsøking, revisjon og rettsmedisinske analyser.

Ikke alle UUID-er inneholder tidsinformasjon. Versjonene 3, 4 og 5 er avledet fra tilfeldige data eller namespace-hasher, og inneholder derfor ingen gjenopprettbart tidsstempel. Versjon 2 (DCE Security) inkluderer et tidsstempel, men brukes sjelden i praksis.

Verktøybeskrivelse

Dette verktøyet trekker ut og dekoder tidsstempelet som er innebygd i tidsbaserte UUID-er. Lim inn en hvilken som helst UUID og se umiddelbart den kodede datoen og klokkeslettet i flere formater: ISO 8601, UTC, lokal tid og Unix-tidsstempler i både sekunder og millisekunder. Verktøyet oppdager automatisk UUID-versjonen og bruker riktig dekodingsalgoritme.

Eksempler

UUID v1-inndata:

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

UUID v7-inndata:

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

UUID v4-inndata (ingen tidsstempel):

550e8400-e29b-41d4-a716-446655440000 → «Denne UUID-versjonen inneholder ikke et tidsstempel»

Funksjoner

  • Støtter UUID v1 (gregoriansk tidsstempel), v6 (omordnet gregoriansk) og v7 (Unix epoch-millisekunder)
  • Viser resultater i formatene ISO 8601, UTC, lokal tid og Unix-tidsstempel
  • Oppdager automatisk UUID-versjonen og velger riktig dekodingsmetode
  • Validerer UUID-formatet før uttrekking forsøkes
  • Viser en tydelig melding for UUID-versjoner som ikke inneholder tidsstempler

Slik fungerer det

Hver tidsbasert UUID-versjon lagrer tidsstempelet sitt på ulik måte:

  • UUID v1 deler et 60-bits gregoriansk tidsstempel på tvers av tre felt: time_low (bit 0–31), time_mid (bit 32–47) og time_hi (bit 48–59). Tidsstempelet teller 100-nanosekunders intervaller siden 15. oktober 1582.
  • UUID v6 omordner v1-tidsstempelfeltene slik at de mest signifikante bitene kommer først, noe som gjør UUID-er naturlig sorterbare etter opprettelsestidspunkt, samtidig som den samme gregorianske epoken brukes.
  • UUID v7 bruker en enklere tilnærming: de første 48 bitene inneholder et standard Unix-tidsstempel i millisekunder, noe som gjør uttrekkingen enkel og kompatibel med moderne systemer.

Bruksområder

  • Feilsøking i distribuerte systemer — fastslå nøyaktig når en post eller hendelse ble opprettet ved å dekode UUID-en som er tilordnet den
  • Revisjon og rettsmedisinske analyser — verifiser opprettelsestidsstempler i databaser som bruker tidsbaserte UUID-er som primærnøkler
  • Migrasjonsplanlegging — analyser UUID-tidsstempler for å forstå datadistribusjon og -alder før migrering mellom systemer