Gerador de UUID / GUID

Gere UUIDs nos formatos v1, v4 ou v5 — em massa, formatados, com prefixo/sufixo opcionais.

Referência de Versões


v4 — Aleatório

UUIDs versão 4 são gerados inteiramente a partir de bytes aleatórios (ou pseudo-aleatórios). 122 dos 128 bits são aleatórios; os 6 bits restantes codificam a versão (4) e a variante. Por não conterem informações estruturadas, os UUIDs v4 são a escolha mais simples: não exigem estado compartilhado, relógio de rede nem coordenação de namespace. A probabilidade de gerar um duplicado é astronomicamente baixa. Use v4 como padrão para chaves primárias de banco de dados, tokens de sessão e qualquer contexto em que unicidade é necessária, mas a ordenação temporal não.

Wikipedia — UUID Version 4 (random)

v1 — Baseado em Tempo

UUIDs versão 1 incorporam um timestamp de 60 bits (intervalos de 100 nanossegundos desde 15 de outubro de 1582, data da reforma do calendário gregoriano), uma sequência de clock de 14 bits e um identificador de nó de 48 bits (historicamente o endereço MAC da máquina geradora). Como o timestamp é o componente mais significativo, os UUIDs v1 ordenam cronologicamente quando comparados lexicograficamente — uma propriedade útil para índices de banco de dados agrupados. A desvantagem é a privacidade: um UUID v1 expõe o endereço MAC da máquina e o horário exato de criação. Implementações modernas substituem o nó por um valor aleatório para evitar essa exposição.

Wikipedia — UUID Version 1 (time-based)

v5 — Namespace + Nome (SHA-1)

UUIDs versão 5 são determinísticos: dado o mesmo UUID de namespace e a mesma string de nome, a saída é sempre idêntica. O algoritmo concatena os bytes do namespace e o nome codificado em UTF-8, os processa com SHA-1 e compacta o resumo de 160 bits em 128 bits. Isso torna o v5 ideal para gerar identificadores estáveis e reproduzíveis — por exemplo, mapear uma URL para um UUID que nunca muda, ou converter uma chave de string legada em um UUID sem tabela de consulta. O v3 usa MD5; o v5 é preferido por produzir menos colisões.

Wikipedia — UUID Version 5 (name-based)