Como os UUIDs armazenam timestamps?

Várias versões de UUID incorporam um timestamp diretamente em sua estrutura. O UUID v1, introduzido no RFC 4122, codifica um timestamp Gregoriano de 60 bits representando intervalos de 100 nanossegundos desde 15 de outubro de 1582. O UUID v6 reorganiza os mesmos campos de timestamp para melhor ordenação, e o UUID v7, definido no RFC 9562, armazena um timestamp Unix epoch de 48 bits em milissegundos. Esses timestamps incorporados tornam possível recuperar o momento exato em que um UUID foi gerado — útil para depuração, auditoria e análise forense.

Nem todo UUID carrega informações de tempo. As versões 3, 4 e 5 são derivadas de dados aleatórios ou hashes de namespace, portanto não contêm nenhum timestamp recuperável. A versão 2 (DCE Security) inclui um timestamp, mas raramente é utilizada na prática.

Descrição da ferramenta

Esta ferramenta extrai e decodifica o timestamp incorporado em UUIDs baseados em tempo. Cole qualquer UUID e veja instantaneamente a data e hora codificadas em múltiplos formatos: ISO 8601, UTC, hora local e timestamps Unix em segundos e milissegundos. A ferramenta detecta automaticamente a versão do UUID e aplica o algoritmo de decodificação correto.

Exemplos

Entrada UUID v1:

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

Entrada UUID v7:

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

Entrada UUID v4 (sem timestamp):

550e8400-e29b-41d4-a716-446655440000 → "Esta versão de UUID não contém um timestamp"

Funcionalidades

  • Suporta UUID v1 (timestamp Gregoriano), v6 (Gregoriano reordenado) e v7 (Unix epoch em milissegundos)
  • Exibe resultados nos formatos ISO 8601, UTC, hora local e Unix timestamp
  • Detecta automaticamente a versão do UUID e seleciona o método de decodificação correto
  • Valida o formato do UUID antes de tentar a extração
  • Exibe uma mensagem clara para versões de UUID que não contêm timestamps

Como funciona

Cada versão de UUID baseada em tempo armazena seu timestamp de forma diferente:

  • UUID v1 divide um timestamp Gregoriano de 60 bits em três campos: time_low (bits 0–31), time_mid (bits 32–47) e time_hi (bits 48–59). O timestamp conta intervalos de 100 nanossegundos desde 15 de outubro de 1582.
  • UUID v6 reordena os campos de timestamp do v1 para que os bits mais significativos venham primeiro, tornando os UUIDs naturalmente ordenáveis por tempo de criação, enquanto utiliza o mesmo epoch Gregoriano.
  • UUID v7 adota uma abordagem mais simples: os primeiros 48 bits armazenam um timestamp Unix padrão em milissegundos, tornando a extração direta e compatível com sistemas modernos.

Casos de uso

  • Depuração de sistemas distribuídos — determine exatamente quando um registro ou evento foi criado decodificando o UUID atribuído a ele
  • Auditoria e forense — verifique timestamps de criação em bancos de dados que utilizam UUIDs baseados em tempo como chaves primárias
  • Planejamento de migração — analise timestamps de UUIDs para compreender a distribuição e a idade dos dados antes de migrar entre sistemas