Como usar o gerador de UUID
- Escolha Gerar versão 4 para UUIDs aleatórios ou Gerar versão 7 para UUIDs que ficam em ordem de criação.
- Defina a Quantidade (até 1.000) e o formato: minúsculas com hífens, 32 dígitos sem hífens, entre {chaves} como o Windows e o .NET escrevem GUIDs, ou como URN (
urn:uuid:…). Marque Letras maiúsculas se o seu sistema esperar assim. - Toque em Copiar para levar a lista inteira, um UUID por linha, ou em Gerar para um lote novo.
- Para conferir um UUID que você já tem, escolha Inspecionar ou validar um UUID e cole em qualquer formato comum. Você vê se ele é válido, a versão, a variante e, nas versões 1, 6 e 7, a data e a hora em que foi criado — inclusive no horário de Brasília, se o seu aparelho estiver nesse fuso.
O que é um UUID
UUID (universally unique identifier, identificador universalmente único) — o GUID dos produtos Microsoft — é um número de 128 bits escrito como 32 dígitos hexadecimais em grupos de 8, 4, 4, 4 e 12. Qualquer sistema pode criar um sem consultar um cadastro central, e a chance de dois coincidirem é tão pequena que bancos de dados, APIs, aplicativos e sistemas operacionais usam UUIDs como chave. O padrão atual é a RFC 9562, de maio de 2024, que substituiu a RFC 4122.
Duas posições são fixas em todo UUID. O 13º dígito é a versão, que diz como o resto foi gerado, e o 17º traz a variante: 8, 9, a ou b nos UUIDs do padrão RFC. Por isso todo UUID versão 4 tem a cara xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx, com y igual a 8, 9, a ou b.
| Versão | Gerado a partir de | Ordena por tempo |
|---|---|---|
| 1 | Horário em passos de 100 ns desde 1582, sequência de relógio e ID do nó (muitas vezes o endereço MAC) | Não |
| 3 e 5 | Hash MD5 ou SHA-1 de um namespace com um nome: o mesmo nome sempre dá o mesmo UUID | Não |
| 4 | 122 bits aleatórios | Não |
| 6 | Os campos da versão 1, reordenados com o horário na frente | Sim |
| 7 | Tempo Unix de 48 bits em milissegundos, seguido de 74 bits aleatórios | Sim |
| 8 | Formato livre, definido pelo software que o cria | — |
Versão 4 ou versão 7?
A versão 4 é a escolha clássica: totalmente aleatória, não revela nada sobre quando nem onde foi criada. O ponto fraco é o índice do banco de dados. Chaves aleatórias caem em qualquer lugar da árvore B, cada inserção mexe numa página diferente, e tabelas grandes ficam mais lentas e fragmentadas. A versão 7 começa com o horário atual, então as linhas novas entram no fim do índice, quase como um número autoincremento — e continuam únicas entre servidores que nunca conversam entre si. A RFC 9562 recomenda a versão 7 para sistemas novos que precisam de IDs em ordem de tempo.
O preço é que um UUID versão 7 mostra a quem o vê quando ele foi criado, ao milissegundo. Para a maioria dos registros isso não importa, mas prefira a versão 4 quando a data de criação é ela mesma uma informação privada — num link público que não deveria revelar quando um cadastro foi aberto, por exemplo. Dentro de um mesmo milissegundo, este gerador trata os 74 bits aleatórios como um contador que avança um passo aleatório (RFC 9562 §6.2, método 2), então um lote de 1.000 sai em ordem estrita de criação e continua impossível de adivinhar.
Exemplo: lendo a data dentro de um UUID
O UUID versão 7 de exemplo da RFC 9562 é 017F22E2-79B0-7CC3-98C4-DC0C0C07398F. O 13º dígito, 7, é a versão; o 17º, 9, o coloca na variante RFC. Os 12 primeiros dígitos, 017F22E279B0, são o hexadecimal de 1.645.557.742.000 milissegundos desde 1º de janeiro de 1970 — 2022-02-22T19:22:22Z, ou seja, 22 de fevereiro de 2022 às 16:22:22 no horário de Brasília (UTC−3). Os exemplos das versões 1 e 6 da mesma RFC guardam o mesmo instante como 138.648.505.420.000.000 intervalos de 100 nanossegundos desde 15 de outubro de 1582, o primeiro dia do calendário gregoriano:
| UUID | Versão | Criado em (UTC) |
|---|---|---|
017f22e2-79b0-7cc3-98c4-dc0c0c07398f | Versão 7 | 2022-02-22T19:22:22Z |
c232ab00-9414-11ec-b3c8-9f6bdeced846 | Versão 1 | 2022-02-22T19:22:22Z |
1ec9414c-232a-6b00-b3c8-9f6bdeced846 | Versão 6 | 2022-02-22T19:22:22Z |
Na versão 1 o horário é dividido em três pedaços, com os bits mais baixos na frente, por isso UUIDs versão 1 não ficam em ordem de tempo; a versão 6 põe os mesmos bits em ordem.
Qual a chance de um UUID repetido?
Um UUID versão 4 tem 122 bits aleatórios, ou seja, 2122 — cerca de 5,3 × 1036 — valores possíveis. Pelo paradoxo do aniversário, são necessários cerca de 2,7 × 1018 UUIDs para a chance de uma única repetição chegar a 50%. Gerando um bilhão por segundo, isso levaria uns 86 anos. Repetições reais vêm de geradores de números aleatórios com defeito — uma biblioteca antiga, máquinas virtuais clonadas com o mesmo estado aleatório —, não da matemática. Esta página usa o crypto.getRandomValues, o gerador criptograficamente seguro do navegador.
Formatos e dicas para o seu banco
- Maiúsculas ou minúsculas: a RFC 9562 recomenda gerar em minúsculas, e o software deve comparar UUIDs sem diferenciar maiúsculas de minúsculas.
- Chaves são o jeito do registro do Windows, do COM e do
Guid.ToString("B")do .NET. URNs (urn:uuid:…) aparecem em XML e RDF. - Armazenamento: guarde UUIDs em 16 bytes — o tipo
uuiddo PostgreSQL,BINARY(16)no MySQL,uniqueidentifierno SQL Server — e não em 36 caracteres de texto. - SQL Server e versão 7: o
uniqueidentifierdo SQL Server ordena os bytes num esquema próprio, começando pelos últimos seis, então um UUID versão 7 não fica em ordem de tempo nesse tipo de coluna. Para chaves sequenciais ali, o caminho nativo éNEWSEQUENTIALID(). - No código: JavaScript
crypto.randomUUID(); Pythonuuid.uuid4(), euuid.uuid7()a partir do Python 3.14; PostgreSQLgen_random_uuid(), euuidv7()a partir da versão 18; JavaUUID.randomUUID(); .NETGuid.NewGuid(), eGuid.CreateVersion7()a partir do .NET 9; SQL ServerNEWID(). - Chave aleatória do Pix: ela tem o formato de um UUID (36 caracteres com hífens), mas quem gera é o seu banco no cadastro junto ao Banco Central. Um UUID gerado aqui não vira chave Pix.
- Para um segredo, e não um ID, use o gerador de senhas. Para levar UUIDs a uma planilha a partir de um JSON, o conversor de JSON para CSV.
Os UUIDs são gerados no seu navegador e nunca são enviados a lugar nenhum; a página não guarda lista de nada.
Perguntas frequentes
Qual a diferença entre UUID e GUID?
Na prática, nenhuma. GUID (globally unique identifier) é o nome que a Microsoft dá ao mesmo identificador de 128 bits. Os GUIDs que o Windows e o .NET geram hoje são UUIDs versão 4, muitas vezes escritos em maiúsculas e entre chaves, como {0F8FAD5B-D9CB-469F-A165-70867728950E}.
Um UUID versão 4 é mesmo único?
Não há garantia, mas é o bastante para qualquer sistema real: com 122 bits aleatórios, seriam precisos uns 2,7 × 1018 UUIDs para uma chance de 50% de uma única repetição. Mesmo assim, vale pôr uma restrição UNIQUE na coluna: não custa nada e pega o raro defeito de um gerador aleatório.
Posso usar um UUID como senha ou token secreto?
Melhor não. A RFC 9562 diz que não se deve presumir que UUIDs sejam difíceis de adivinhar; um UUID versão 7 tem só 74 bits aleatórios e um horário legível, e algumas bibliotecas usam números aleatórios fracos. Para segredos, use um token feito para isso, como 32 bytes aleatórios em Base64, ou o gerador de senhas.
Como validar se um texto é um UUID?
Cole em Inspecionar ou validar um UUID. No código, a expressão regular ^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$ (sem diferenciar maiúsculas) aceita UUIDs das versões 1 a 8 na variante padrão; o UUID nulo e o máximo precisam de verificação à parte.
Devo usar UUID como chave primária?
Funciona bem quando os IDs nascem em vários lugares — vários servidores, apps que funcionam offline — ou quando não devem revelar quantos registros existem. Prefira a versão 7 para chave primária, porque valores em ordem de tempo mantêm o índice compacto, e guarde numa coluna nativa de UUID ou binária de 16 bytes.
Última atualização: 16 de outubro de 2026