Gerador de UUID

Roda no seu navegador; nada é enviado

Gere UUIDs da versão 4 ou da versão 7, um ou mil de uma vez, e inspecione a versão, a variante e o timestamp de qualquer UUID.

Generated

Generating…

Inspect

Shows the version, the variant and, for time-based UUIDs (versions 1, 6 and 7), when it was made. Choose Inspect on a generated value to try it.

Ready
lowercase, dashes

O que é um UUID?

Um UUID (identificador único universal), também chamado de GUID, é um valor de 128 bits escrito como 32 dígitos hexadecimais em cinco grupos, como 3f2b8c1e-9a4d-4e7b-b5c2-6d1f0a8e9c47. Qualquer um pode criar um sem pedir a um servidor central e ainda ter praticamente certeza de que ninguém mais vai criar o mesmo valor. A RFC 9562 define os formatos.

A versão 4 é aleatória: 122 dos seus 128 bits vêm de um gerador aleatório seguro. A versão 7 começa com o tempo Unix em milissegundos seguido de bits aleatórios, então os valores ficam ordenados pela hora de criação. Isso faz do v7 uma chave melhor para banco de dados, porque as linhas novas vão para o fim de um índice em vez de lugares aleatórios. Dá para ver a versão pelo primeiro dígito do terceiro grupo: 4 ou 7.

As APIs usam UUIDs como IDs de recursos, chaves de idempotência e IDs de requisição. Nos testes, eles dão nomes e chaves únicos a cada execução, e um UUID bem formado que não existe é um bom jeito de conferir se a API responde 404 em vez de 500.

Como usar esta ferramenta

  1. 1Escolha v4 random ou v7 time-ordered, quantos você quer (até 1.000) e pressione Generate ou Ctrl+Enter.
  2. 2Escolha a forma escrita: em maiúsculas, com ou sem hífens, entre chaves como os GUIDs costumam aparecer, ou com o prefixo urn:uuid:. A lista atualiza sem gerar valores novos.
  3. 3Copie um valor com o botão da linha dele, ou a lista inteira com Copy all. Download (Ctrl+S) salva a lista como arquivo de texto, um por linha.
  4. 4Cole qualquer UUID em Inspect, ou escolha Inspect numa linha gerada, para ver a versão, a variante e, nas versões 1, 6 e 7, quando ele foi criado.

Solução de problemas

Inspect diz que o valor tem o número errado de dígitos
Um UUID tem exatamente 32 dígitos hexadecimais. Valores copiados de logs às vezes vêm cortados ou com caracteres a mais grudados; chaves, hífens e o prefixo urn:uuid: são aceitos.
A variante não é RFC 9562
Formatos antigos da Microsoft e do NCS usam outros bits de variante. Nesses valores, o dígito de versão não significa o que a RFC 9562 diz, então a ferramenta informa a variante e não interpreta o resto.
Valores v7 de duas abas do navegador não ficam perfeitamente ordenados
Dentro de um mesmo lote, a ferramenta mantém os valores v7 estritamente crescentes, mesmo dentro do mesmo milissegundo. Valores de abas ou máquinas diferentes criados no mesmo milissegundo podem se intercalar, como a RFC permite.

Perguntas frequentes

Dois UUIDs podem ser iguais?

Na prática, não. Com 122 bits aleatórios (ou 74 por milissegundo no v7), seria preciso gerar bilhões por segundo durante muitos anos para que uma duplicata ficasse provável.

Esses UUIDs podem ser usados como segredos?

Eles vêm do gerador aleatório seguro do seu navegador, mas um UUID é um identificador, não um segredo, e o v7 revela quando foi criado. Use o gerador de senhas para tokens e chaves.

Os UUIDs são gerados num servidor?

Não. Eles são gerados no seu navegador depois que a página carrega, e não são guardados nem enviados a lugar nenhum.