Gerador UUID
Gerar identificadores únicos compatíveis com RFC 4122
Clique "Gerar UUID" para começar
O que é UUID?
UUID, ou Identificador Único Universal, é um identificador de 128 bits usado para marcar registros, objetos, sessões, arquivos, dispositivos, mensagens e outras entidades em sistemas distribuídos. Sua forma textual comum usa grupos hexadecimais no padrão 8-4-4-4-12. UUIDs são úteis quando vários servidores, clientes ou serviços precisam criar IDs sem consultar um banco central pelo próximo número sequencial. Diferentes versões são geradas com aleatoriedade, informação de tempo ou hashes baseados em namespace, o que afeta privacidade, ordenação, previsibilidade e risco de colisão. A ferramenta serve para gerar e inspecionar UUIDs rapidamente, mas eles não substituem autorização nem material secreto.
Como Usar
Passos de Geração
- Selecione a versão do UUID (v1, v4 ou Nil)
- Defina a quantidade a gerar (1-100)
- Escolha o formato de caixa (maiúsculas ou minúsculas)
- Selecione o formato (com hífens, sem hífens ou com chaves)
- Clique no botão Gerar para criar os identificadores solicitados
Atalhos de Teclado
- Ctrl + GGerar UUID
- Ctrl + Shift + CCopiar Tudo
Observações sobre Identificadores
- UUID v4 geralmente é a escolha certa para identificadores aleatórios no lado do cliente; não codifica informações de tempo nem de dispositivo.
- Não use UUIDs como segredos. Eles identificam registros, mas não substituem tokens de autenticação ou chaves de acesso.
Casos de uso
Princípio técnico
UUID é um identificador de 128 bits na forma padrão 8-4-4-4-12, 36 caracteres no total (incluindo 4 hífens). Os 128 bits são divididos em: time-low (32 bits), time-mid (16 bits), version-and-time-high (16 bits, os 4 bits superiores são a versão), variant-and-clock-seq (16 bits, os 2 a 3 bits superiores são a variante) e node (48 bits). A RFC 4122 define cinco versões, v1 a v5. O v1 é construído a partir de um timestamp de 60 bits (resolução de 100 nanossegundos, contado a partir de 15 de outubro de 1582) mais um endereço MAC de 48 bits mais uma sequência de clock de 14 bits. É teoricamente ordenável por tempo de geração, mas vaza a identidade da máquina e o tempo de geração. O v4 é a versão mais usada: 122 bits preenchidos com uma fonte criptograficamente segura de aleatoriedade, e bits fixos de versão (4) e variante (10). A probabilidade de colisão é uma preocupação central no design de UUID. O v4 tem 122 bits de espaço aleatório, e pelo paradoxo do aniversário são necessários um bilhão de UUIDs por segundo durante 85 anos consecutivos para atingir 50% de chance de uma única colisão, o que é mais do que suficiente na prática. O v7 emergente coloca o timestamp primeiro e os bits aleatórios por último, equilibrando unicidade e ordenação temporal, e é mais adequado para chaves primárias de bancos de dados.
- UUID v4: 122 bits aleatórios com bit de versão fixo 4 e bit de variante 10; funciona para quase todos os cenários e não vaza privacidade
- UUID v1: timestamp de 60 bits + MAC de 48 bits + sequência de clock de 14 bits; ordenável por tempo, mas expõe a impressão digital da máquina, use com cautela
- UUID v7: timestamp primeiro, bits aleatórios por último; um padrão rascunho de 2024 projetado especificamente para chaves primárias de bancos de dados
- Probabilidade de colisão: o espaço aleatório do v4 é 2^122, e são necessários um bilhão de UUIDs por segundo durante 85 anos consecutivos para 50% de chance de uma colisão
- UUID Nil: todos zeros 00000000-0000-0000-0000-000000000000, comumente usado como placeholder ou valor padrão
- Variantes de formato: além do padrão 8-4-4-4-12, existe a forma de 32 caracteres sem hífen, a forma {chaves} e a forma URN (urn:uuid:...)
Exemplos
UUID v4 (aleatório) em formato padrão
550e8400-e29b-41d4-a716-446655440000
Dígito de versão (13º char hex): 4 -> v4, aleatório
Bits de variante (17º char hex): 8/9/a/b -> variante RFC 4122
Uso: chaves primárias em bancos de dados, IDs de requisição, IDs de assets — escolha padrão quando a ordem não importa
RFC: RFC 4122 seção 4.4 define a geração de v4Formato UUID v1 (timestamp + MAC)
c232ab00-9414-11ec-b909-0242ac120002
Dígito de versão: 1 -> v1, baseado em tempo
Nota: codifica o timestamp de geração em time_low; os últimos 12 chars hex são o node id (frequentemente um MAC)
Uso: quando você precisa de IDs ordenáveis ou uma origem determinística por host, mas atente que o MAC vaza a identidade do host
RFC: RFC 4122 seção 4.1 define o layout de v1Gerar 5 IDs v4 em lote
a1b2c3d4-e5f6-4789-a012-3456789abcde
f7e8d9c0-b1a2-43f4-95e6-7d8c9b0a1e2f
3c4d5e6f-7a8b-49c0-9d1e-2f3a4b5c6d7e
8e9f0a1b-2c3d-44e5-bf6a-7b8c9d0e1f2a
5f6a7b8c-9d0e-45f1-a2b3-c4d5e6f7a8b9
Nota: cada ID é sorteado independentemente via crypto.getRandomValues; a probabilidade de colisão para 2^122 IDs é desprezível segundo o RFC 4122 Apêndice BPerguntas frequentes
O que é um UUID?
Um Universally Unique Identifier é um valor de 128 bits (RFC 4122/9562) geralmente escrito como 32 dígitos hexadecimais no padrão 8-4-4-4-12, por exemplo, 550e8400-e29b-41d4-a716-446655440000. Versões diferentes codificam tempo, dados aleatórios ou hashes; o objetivo deles é serem únicos entre sistemas sem um coordenador central.
Qual a diferença entre UUID v1, v4 e v7?
v1 mistura o endereço MAC do host com um timestamp de 100 ns (boa ordenação, mas vaza informação do host). v4 é puramente aleatório (122 bits de entropia, sem ordenação). v7 (RFC 9562) coloca um timestamp Unix-ms de 48 bits nos bits mais altos com bits aleatórios mais baixos — ordenável como v1 mas sem vazamento de MAC. v7 é o padrão moderno para chaves de banco de dados.
Um UUID é realmente único?
Estatisticamente, sim. Gerar um bilhão de UUIDs v4 por segundo durante 100 anos ainda dá uma probabilidade de colisão de cerca de 50% (limite do paradoxo do aniversário). Para todos os sistemas práticos, você pode tratar UUIDs como únicos sem coordenação.
UUIDs são aleatórios e impossíveis de adivinhar?
UUIDs v4 são aleatórios e efetivamente impossíveis de adivinhar (122 bits de entropia). UUIDs v1 não são aleatórios de forma alguma — eles expõem o MAC do host e o timestamp, então não use v1 como token de segurança. O prefixo de timestamp do v7 também é previsível; apenas os bits aleatórios finais são imprevisíveis.
Devo usar UUID como chave primária do banco?
Funciona, mas tem trade-offs. UUIDs v4 aleatórios causam fragmentação da B-tree em bancos que clusterizam pela chave primária (MySQL InnoDB), prejudicando o desempenho de inserção em escala. UUIDs v7 ordenáveis evitam isso. Inteiros auto-incrementados ainda são menores e mais rápidos — use UUIDs quando geração distribuída for importante.
A geração de UUID é feita no meu navegador?
Sim. A página usa crypto.randomUUID (ou crypto.getRandomValues para navegadores mais antigos) que faz parte da Web Crypto API. Nada é enviado para um servidor, e atualizar a página gera um novo fluxo de entropia.
Por que alguns UUIDs parecem quase iguais no início?
UUIDs v1 e v7 codificam o tempo nos caracteres iniciais, então UUIDs gerados no mesmo milissegundo compartilham um prefixo e diferem apenas nos bytes finais. Essa propriedade é o que os torna naturalmente ordenáveis. UUIDs v4 são aleatórios e não exibem isso.