Gerador de UUID

Gera UUID versão 4 ou versão 7. A 4 é aleatória. A 7 começa com a hora atual, então ids novos ordenam depois dos antigos.

A versão 4 é aleatória. A 7 começa pela hora

Um UUID são 128 bits escritos em hexadecimal. A versão 4 é aleatória, que é o que a maioria dos bancos ainda pede. A versão 7 põe na frente o tempo Unix em milissegundos, então ids criados depois ordenam após os anteriores, como texto ou num índice. Esta página gera no navegador. Não confere se um id que você já tem é único no seu banco.

Como usar

  1. Escolha versão 4 ou versão 7. O resultado aparece na hora, e de novo sempre que você muda uma opção.
  2. «Quantos» vai de 1 a 100. Cada toque em Gerar faz um conjunto novo.
  3. Maiúsculas mudam as letras hexadecimais. Hífens vêm ligados; desligue para 32 dígitos hexadecimais. Chaves acrescentam { e }. «Prefixo urn:uuid:» coloca esse esquema na frente.
  4. Copie o resultado. Não há caixa de entrada, porque nada está sendo convertido.

O formato do id

Com hífens, a forma é 8-4-4-4-12. O nibble de versão é 4 ou 7. O nibble de variante é o valor do RFC 4122, então o primeiro dígito hexadecimal do quarto grupo é 8, 9, a ou b. Os primeiros 48 bits da versão 7 são o tempo Unix atual em milissegundos: por isso dois ids feitos com um milissegundo de diferença ordenam no tempo quando comparados como texto. O resto é aleatório. A página usa a fonte aleatória criptográfica do navegador quando ela existe.

Onde entra

  • Uma chave primária para uma linha que você vai inserir num banco de teste.
  • Um id de pedido numa linha de log.
  • Versão 7 quando linhas novas devem se agrupar por tempo, sem uma ordenação separada de created-at.

Perguntas

Dois cliques podem coincidir?

A versão 4 tem 122 bits aleatórios. Uma coincidência não é preocupação prática. A versão 7 pode compartilhar o prefixo de tempo no mesmo milissegundo e ainda diferir na cauda aleatória.

Isso é um segredo?

Não. Um UUID identifica uma linha. Não use como senha nem como token de acesso.