Gerador de UUID

Todo sistema distribuido precisa de identificadores que nunca colidam, nao importa quantos servidores os gerem. Chaves de banco de dados com auto incremento deixam de funcionar assim que dois servicos criam registros de forma independente. Escrever a logica de geracao de UUID do zero adiciona codigo repetitivo a cada novo projeto. Buscar IDs um por um em um script tambem e lento demais quando um conjunto de testes precisa de centenas.

Este gerador de UUID resolve isso instantaneamente, produzindo identificadores compativeis com a RFC 4122 nas versoes 1, 3, 4, 5 e 7, alem de UUID Nil e ULIDs. Escolha uma versao, defina a quantidade e gere valores um a um ou em lotes completos. Cada UUID e criado com um gerador de numeros aleatorios criptograficamente seguro, entao nada e enviado a um servidor. Copie os resultados, baixe-os como arquivo ou use-os diretamente no seu codigo, banco de dados ou dados de teste.

Geracao de UUID

Todo sistema distribuido precisa de identificadores que nunca colidam, nao importa quantos servidores os gerem. Chaves de banco de dados com auto incremento deixam de funcionar assim que dois servicos criam registros de forma independente. Escrever a logica de geracao de UUID do zero adiciona codigo repetitivo a cada novo projeto. Buscar IDs um por um em um script tambem e lento demais quando um conjunto de testes precisa de centenas.

Tipo de identificador
Arquivo de texto (.txt)
Opcoes de formato
0 caracteres
0 item(ns) neste lote

Decodificar / Inspecionar

O que e um gerador de UUID?

Um gerador de UUID e uma ferramenta que cria identificadores unicos universais, valores de 128 bits usados para rotular dados sem um registro central. Cada identificador e criado para que as chances de dois sistemas produzirem o mesmo valor sejam proximas de zero. Desenvolvedores recorrem a isso sempre que um ID precisa ser unico em varios servidores, bancos de dados ou aplicativos executados de forma independente.

Ao contrario de IDs sequenciais, um UUID nao depende de um contador de banco de dados nem de coordenacao entre servicos. Isso torna a geracao de UUID ideal para microsservicos, aplicativos offline-first e qualquer sistema em que varios nos criam registros ao mesmo tempo. UUIDs sao padronizados pela RFC 4122, portanto ferramentas e bibliotecas de diferentes linguagens produzem valores compativeis.

Como usar este gerador de UUID online

Gerar um UUID com este gerador online leva apenas alguns cliques, e todo o processo acontece no seu navegador. Escolha uma versao no seletor: v1, v3, v4, v5, v7, Nil ou ULID. Informe quantos voce precisa, de 1 a 1.000 por lote. Clique em Gerar e seus identificadores aparecerao instantaneamente, prontos para copiar.

As opcoes de formatacao se aplicam a todas as versoes: alterne entre maiusculas e minusculas, com ou sem hifens, e chaves se o seu sistema exigir. Copie um unico resultado, copie o lote completo ou baixe-o como arquivo `.txt`, `.json` ou `.csv`. Nao e necessario cadastro, instalacao nem configuracao para comecar.

  • Escolha uma versao de UUID: v1, v3, v4, v5, v7, Nil ou ULID.
  • Para v3 ou v5, selecione um namespace e digite um nome (veja abaixo).
  • Informe quantos identificadores voce precisa, ate 1.000.
  • Defina a formatacao: caixa, hifens e chaves.
  • Clique em Gerar e depois copie os resultados ou baixe-os como TXT, JSON ou CSV.

Gerando UUIDs baseados em namespace (v3 e v5)

As versoes 3 e 5 precisam de um namespace e um nome em vez de pura aleatoriedade, porque foram projetadas para ser deterministicas. Escolha um namespace padrao da RFC 4122, DNS, URL, OID ou X.500, ou forneca seu proprio UUID de namespace. Digite um nome e a ferramenta combina os dois com MD5 para v3 ou SHA-1 para v5. O mesmo namespace e nome sempre produzirao o mesmo UUID, e esse e o objetivo. Sistemas independentes podem gerar identificadores correspondentes para a mesma entrada sem se coordenar diretamente.

Decodificando um UUID ou ULID existente

Cole qualquer UUID ou ULID no painel de decodificacao deste gerador de UUID para inspeciona-lo sem gerar um novo. A ferramenta identifica sua versao e variante instantaneamente. Para valores v1, v7 e ULID, ela tambem decodifica o timestamp embutido em uma data e hora legiveis.

Isso e util para verificar quando um registro foi criado ou para confirmar que uma API de terceiros retornou um identificador valido. Tambem ajuda a confirmar qual versao um UUID desconhecido realmente e.

Entendendo as versoes de UUID

UUID significa Identificador Unico Universal, e a especificacao define varias versoes, cada uma criada com um metodo diferente. O numero da versao e incorporado ao proprio identificador, entao qualquer UUID revela como foi gerado. Este gerador oferece suporte a todas as principais versoes, com a v4 definida como padrao para uso geral.

Ao contrario de IDs sequenciais, um UUID nao depende de um contador de banco de dados nem de coordenacao entre servicos. Isso torna a geracao de UUID ideal para microsservicos, aplicativos offline-first e qualquer sistema em que varios nos criam registros ao mesmo tempo. UUIDs sao padronizados pela RFC 4122, portanto ferramentas e bibliotecas de diferentes linguagens produzem valores compativeis.

UUIDs da versao 1 combinam um timestamp com o endereco MAC do dispositivo que os gera. Esse metodo pode expor informacoes de hardware, por isso hoje e menos usado. UUIDs da versao 4 usam numeros aleatorios ou pseudoaleatorios, evitando completamente esse compromisso. UUIDs da versao 5 geram um valor deterministico a partir de um namespace e um nome usando SHA-1, semelhante a saida do <hashLink>Gerador de hash</hashLink>.

Versao
Tipo
Ideal para
Gerado por esta ferramenta
v1Baseado em tempoIDs ordenados quando a exposicao do timestamp e aceitavelSim
v3Baseado em nome (MD5)IDs deterministicos a partir de namespace e nomeSim
v4AleatorioIDs de uso geral, chaves de banco e tokensSim (padrao)
v5Baseado em nome (SHA-1)IDs deterministicos, repetiveis a partir de nome e namespaceSim
v7Ordenado por tempoChaves de banco ordenaveis em sistemas distribuidosSim
NilMarcador tudo zeroValores explicitamente vazios ou nao definidosSim
ULIDOrdenado por tempo, Base32Identificadores compactos, ordenaveis e amigaveis para URLSim

Quao unicos sao os UUIDs deste gerador?

UUIDs da versao 4 contem 122 bits aleatorios, ja que alguns bits sao fixados para marcar a versao e a variante. Isso deixa um numero enorme de combinacoes possiveis, cerca de 5,3 undecilhoes. As chances de dois UUIDs aleatorios colidirem sao tao pequenas que, na pratica, sao tratadas como zero.

Nenhuma autoridade central rastreia quais UUIDs ja foram emitidos. Isso nao e necessario para a matematica funcionar. Mesmo gerando um bilhao de UUIDs por segundo durante cem anos, apenas uma pequena fracao dos valores possiveis seria usada. Versoes deterministicas como v3 e v5 funcionam de forma diferente, porque o mesmo namespace e nome devem se repetir de proposito.

Dentro de um unico lote, os valores v1, v4 e v7 sao verificados automaticamente uns contra os outros. Duplicatas sao regeneradas antes de os resultados serem exibidos, entao voce nao vera repeticoes acidentais. Lotes das versoes 3 e 5 pulam essa etapa de proposito, porque o mesmo namespace e nome devem se repetir. Um lote de UUID Nil tambem se repete, porque UUID Nil tem apenas um valor possivel: tudo zero.

Lotes de ULID usam uma protecao diferente. Cada valor combina um timestamp em milissegundos com um componente aleatorio monotono. Isso mantem as colisoes improvaveis mesmo dentro do mesmo lote.

Casos de uso comuns para um gerador de UUID

Esse tipo de ferramenta e essencial onde quer que sistemas independentes precisem criar IDs sem consultar uns aos outros primeiro. Chaves primarias de banco de dados sao um caso de uso comum, especialmente em bancos distribuidos ou fragmentados. Versoes ordenaveis como v7 e ULID se encaixam bem em bancos que tambem precisam de ordenacao cronologica, ja que UUIDs aleatorios padrao nao conseguem fornecer isso.

Tokens de sessao de API e codigos de autenticacao tambem dependem de UUIDs por sua imprevisibilidade, de forma semelhante as strings aleatorias do <passwordLink>Gerador de senhas</passwordLink>.

Microsservicos usam UUIDs para marcar eventos, mensagens e transacoes, permitindo rastreio entre servicos independentes. Tokens de autenticacao como JWT geralmente usam um UUID como declaracao jti, e o <jwtLink>Decodificador e codificador JWT</jwtLink> pode inspecionar essa declaracao diretamente. Sistemas de arquivos e armazenamento de objetos usam UUIDs para nomear uploads sem risco de colisao. Suites de teste usam esta ferramenta para criar dados simulados realistas e nao repetidos para ambientes de QA.

UUID vs GUID: qual e a diferenca?

UUID e GUID se referem ao mesmo conceito subjacente: um identificador de 128 bits projetado para ser unico sem coordenacao central. GUID significa Globally Unique Identifier e e o termo usado pela Microsoft em Windows, .NET e SQL Server. UUID e o termo usado na especificacao oficial RFC 4122 e na maioria das outras plataformas.

Na pratica, os dois formatos sao intercambiaveis e seguem a mesma estrutura. Um GUID gerado em um sistema Windows sera validado como UUID em qualquer outro lugar. A unica diferenca real e a convencao de nomenclatura, nao o algoritmo nem a estrutura de dados.

Entendendo o formato UUID

Um UUID e exibido como 32 caracteres hexadecimais organizados em cinco grupos, separados por hifens. O padrao segue uma estrutura 8-4-4-4-12, por exemplo 550e8400-e29b-41d4-a716-446655440000. Dois desses caracteres sao reservados para codificar a versao e a variante do UUID.

O digito da versao fica no inicio do terceiro grupo. Um UUID com 4 nessa posicao e um UUID da versao 4. Os bits de variante ficam no inicio do quarto grupo e confirmam que o identificador segue o layout da RFC 4122. Um ULID e diferente: sao 26 caracteres em Base32 de Crockford, sem hifens e sem um digito de versao visivel.

Este gerador de UUID e seguro e privado?

Cada UUID produzido por este gerador e criado diretamente no seu navegador usando uma fonte de aleatoriedade criptograficamente segura. Nenhum UUID nem dado relacionado a sua sessao e transmitido para um servidor. Isso torna a ferramenta segura para identificadores internos, sensiveis ou proximos de producao.

Como a geracao acontece no lado do cliente, atualizar ou fechar a pagina nao deixa registro do que foi criado. Nao ha conta, rastreamento nem armazenamento vinculado aos seus UUIDs gerados. Voce pode gerar novos lotes quantas vezes precisar, na mesma aba do navegador.

Para fluxos que tambem precisam de integridade de mensagem, o <hmacLink>Gerador HMAC</hmacLink> oferece uma forma complementar de verificar que os dados nao foram adulterados.

Exemplos de gerador de UUID

Os exemplos a seguir mostram como a mesma saida do gerador e aplicada em diferentes cenarios reais. Cada um parte de um UUID produzido por esta ferramenta e mostra onde ele se encaixa em um sistema real. Ver alguns casos concretos facilita entender como um UUID se comporta depois que sai do gerador.

  • Chave primaria de banco de dados:a1b2c3d4-e5f6-4789-a0bc-def012345678inserida como chave primaria de um novo registro de cliente, sem depender de um contador auto incremental.
  • Token de sessao de API:f47ac10b-58cc-4372-a567-0e02b2c3d479emitido para um usuario autenticado no lugar de um ID de sessao sequencial e previsivel.
  • ID de evento ordenavel (v7):018f4b3c-7a2e-7c91-b8d4-2f6a9e1c5d3banexado a um evento de fila de mensagens, mantendo ordem cronologica ate entre servicos.
  • Nome de arquivo enviado:c4a760a8-dbcf-4a91-8e97-3b4a1e6c8b2f.jpgusado como nome de arquivo no armazenamento de objetos para evitar sobrescrever arquivos com nomes duplicados.
  • Entrada de log de atividade (ULID):01ARZ3NDEKTSV4RRFFQ69G5FAVusada como ID compacto e ordenavel para uma linha de log, mais curta e mais amigavel para URL do que um UUID padrao.
  • Popular dados de teste:um lote de 500 UUIDs gerados com um clique para popular um banco de QA com identificadores realistas e nao sequenciais.

Cada cenario acima usa exatamente o mesmo formato de saida, entao nao e preciso converter nem reformatar entre casos de uso. Quer o identificador acabe em uma coluna de banco, uma URL ou um nome de arquivo, ele funciona sem modificacao.

Essa consistencia e o motivo pelo qual equipes padronizam UUIDs em toda a stack, muitas vezes junto com ferramentas como o <base64Link>Codificador Base64</base64Link>.

Perguntas frequentes

Perguntas Frequentes