Pular para o conteúdo
UtiliaTools

O que é um UUID? Entendendo os identificadores universalmente únicos

Um UUID (Universally Unique Identifier) é um rótulo de 128 bits usado para identificar informações de forma exclusiva em sistemas computacionais. Com mais de 5,3 × 10³⁶ valores possíveis, colisões são praticamente impossíveis sem necessidade de autoridade central.

O que significa UUID?

UUID significa Universally Unique Identifier (identificador universalmente único). A especificação mais recente, RFC 9562, usa o termo Universally Unique IDentifier. Independentemente do nome, o conceito é o mesmo: um formato padronizado para gerar identificadores que são únicos no espaço e no tempo, sem coordenação entre as partes que os geram.

O formato UUID

Um UUID é um valor de 128 bits exibido como 32 caracteres hexadecimais organizados em cinco grupos separados por hífens:

550e8400-e29b-41d4-a716-446655440000
xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx
  • O dígito M indica a versão do UUID (1-8).
  • O dígito N indica a variante (tipicamente 8, 9, a ou b para UUIDs RFC 4122).
  • Os 122 bits restantes contêm os dados únicos propriamente ditos.

A representação padrão usa letras minúsculas, embora maiúsculas também sejam válidas.

Versões de UUID explicadas

Cada versão atende a propósitos diferentes:

  • Versão 1: Baseada em timestamp e endereço MAC. Garante unicidade através do tempo e identidade do hardware, mas revela o endereço MAC da máquina geradora.
  • Versão 2: Similar à v1, mas com precisão temporal reduzida, incorporando um UID POSIX. Raramente utilizada.
  • Versão 3: Gerada fazendo hash de um namespace e nome com MD5. Determinística — a mesma entrada sempre produz o mesmo UUID.
  • Versão 4: Completamente aleatória (ou pseudoaleatória). A versão mais usada atualmente. Depende de um bom gerador de números aleatórios.
  • Versão 5: Como a v3, mas usa SHA-1 em vez de MD5. Preferida em relação à v3 para novas aplicações.
  • Versão 6: Uma versão reorganizada da v1 que se ordena cronologicamente mantendo a unicidade.
  • Versão 7: Baseada em timestamp com preenchimento aleatório, projetada para indexação em banco de dados. Ordenável e moderna.
  • Versão 8: Implementação personalizada que permite incorporar dados específicos da aplicação.

Por que UUIDs garantem unicidade

Um UUID de versão 4 possui 122 bits aleatórios, gerando aproximadamente 5,3 × 10³⁶ valores possíveis. A probabilidade de gerar dois UUIDs idênticos é astronomicamente baixa — comparável à chance de um meteorito atingir sua sala de servidores no exato momento da colisão.

Casos de uso comuns

  • Chaves primárias de banco de dados: UUIDs evitam os problemas de coordenação de inteiros autoincrementais em bancos de dados distribuídos.
  • Tokens de sessão: Aplicações web usam UUIDs para identificar sessões de usuário sem expor IDs sequenciais.
  • Nomes de arquivos: Sistemas que aceitam uploads de usuários usam UUIDs para prevenir colisões de nomes.
  • Sistemas distribuídos: Microsserviços geram UUIDs de forma independente sem risco de conflitos de IDs.
  • Identificadores de recursos de API: APIs RESTful usam UUIDs em URLs para prevenir ataques de enumeração.

Perguntas frequentes

Dois UUIDs podem ser iguais?

Teoricamente sim, mas a probabilidade é tão baixa que é considerada praticamente impossível. Para UUID v4, seriam necessários gerar aproximadamente 2,7 × 10¹⁸ UUIDs antes de ter 50% de chance de uma única colisão.

Devo usar UUIDs como chaves primárias em banco de dados?

UUIDs funcionam bem como chaves primárias em sistemas distribuídos, mas sua aleatoriedade pode fragmentar índices. O UUID v7 é preferido porque seu prefixo de timestamp fornece ordenação natural.

Qual é a diferença entre UUID e GUID?

GUID (Globally Unique Identifier) é a implementação da Microsoft do conceito de UUID. Ambos seguem o mesmo formato e padrões, embora as ferramentas da Microsoft possam gerá-los com algoritmos ligeiramente diferentes.

Guias relacionados

Experimente a ferramenta

Use nossa ferramenta gratuita para começar instantaneamente.

Gerador de UUID →

Última atualização em 2026-09-27