Gerador de UUID

Gere UUIDs v4 e v7 online, em lote, com maiúsculas ou sem hífens. Valide e identifique a versão. Grátis, direto no navegador.

Nenhum UUID gerado ainda. Clique em "Gerar" para criar a lista.

Como usar

  1. Escolha a versão: v4 (aleatório) ou v7 (baseado em tempo, ordenável).
  2. Informe a quantidade de 1 a 100 e ajuste maiúsculas, minúsculas e hífens.
  3. Clique em "Gerar" para criar a lista de UUIDs.
  4. Use "Copiar todos" ou o botão de cada linha para levar os valores para a área de transferência.
  5. Para conferir um UUID existente, cole-o em "Validar um UUID" e veja versão e variante.

Como funciona

UUID (Identificador Único Universal) é um número de 128 bits escrito em 32 dígitos hexadecimais, normalmente separados em cinco grupos no padrão 8-4-4-4-12. Ele serve para identificar registros sem precisar de um servidor central que distribua números: cada sistema pode criar o seu próprio identificador com chance desprezível de repetir o de outro.

Esta ferramenta gera UUIDs v4 e v7 conforme a RFC 9562, usando crypto.getRandomValues, o gerador criptograficamente seguro do navegador. Nada é enviado a servidores e nenhum valor é gerado antes do seu clique em "Gerar".

Diferença entre v4 e v7

  • v4: 122 bits aleatórios e 6 bits fixos (versão e variante). Não revela nada sobre quando foi criado e não tem ordem.
  • v7: começa com um timestamp Unix de 48 bits em milissegundos, seguido de bits aleatórios. Como o tempo vem primeiro, os valores crescem de forma aproximada com o relógio e podem ser ordenados.

Colisão e chave de banco de dados

Com 122 bits aleatórios, o v4 tem cerca de 5,3 x 1036 combinações. Pelo paradoxo do aniversário, seria preciso gerar aproximadamente 2,7 x 1018 UUIDs para ter 50% de chance de uma única colisão. Na prática, colisão acidental não é uma preocupação, desde que a fonte de aleatoriedade seja boa.

Como chave primária, o v4 espalha as inserções por todo o índice, o que causa divisão de páginas e cache menos eficiente em tabelas grandes. O v7 insere sempre perto do fim do índice, como um número sequencial, e por isso costuma ser a melhor opção para novas tabelas. O custo é que o v7 expõe o momento de criação: evite-o em identificadores que não podem vazar essa informação.

Erros comuns

  • Usar UUID como segredo ou token de acesso: ele é identificador, não credencial.
  • Gerar UUIDs com Math.random(), que não é seguro nem tem entropia boa.
  • Comparar UUIDs sem normalizar maiúsculas, minúsculas e hífens.
  • Guardar como texto de 36 caracteres quando o banco tem tipo UUID nativo.

Exemplo

O valor 550e8400-e29b-41d4-a716-446655440000 tem o dígito 4 na primeira posição do terceiro grupo (versão 4) e a na primeira posição do quarto grupo. Em binário, a é 1010, que começa com 10 e indica a variante padrão. No v7, o mesmo dígito de versão é 7 e os 12 primeiros dígitos formam o timestamp em milissegundos.

Perguntas frequentes

Os UUIDs gerados aqui são realmente aleatórios?

Sim. A ferramenta usa crypto.getRandomValues, o gerador criptograficamente seguro do navegador, e não Math.random. Os valores são criados no seu computador no momento do clique e não são enviados nem guardados em nenhum servidor.

Devo usar UUID v4 ou v7 como chave primária?

Para tabelas novas e grandes, o v7 costuma ser melhor, porque os valores crescem com o tempo e as inserções ficam concentradas no fim do índice. O v4 é ideal quando o identificador não pode revelar a data de criação ou quando a ordenação não importa.

Dois UUIDs podem ser iguais?

Em teoria sim, na prática não. No v4 há 122 bits aleatórios: seriam necessários cerca de 2,7 quintilhões de UUIDs para atingir 50% de chance de uma colisão. Por garantia, a coluna de chave primária no banco deve ter restrição de unicidade.

Posso usar UUID como senha ou token de sessão?

Não é recomendado. UUID foi feito para identificar registros, não para autenticar. O v7 ainda embute o horário de criação, o que o torna parcialmente previsível. Para segredos, use tokens gerados especificamente para isso, com tamanho e entropia adequados.