O que é um GUID?
Um GUID (globally unique identifier) é exatamente o que as RFC 4122 e 9562 chamam de UUID: 128 bits escritos no padrão 8-4-4-4-12. A Microsoft criou o termo antes de a especificação se popularizar.
A única diferença está na aparência da string. O .NET escreve GUIDs tradicionalmente em maiúsculas e os coloca entre chaves, por exemplo {4C6E0549-7D63-4A0C-9E1F-4D63B7A2B4F1}, enquanto a escrita da RFC é minúscula e sem chaves.
Como usar
- Mantenha os padrões — maiúsculas e chaves já vêm ativadas.
- Escolha a quantidade de GUIDs.
- Clique em Gerar e cole o valor direto no seu código ou em um script SQL.
Casos de uso
- Substituir
Guid.NewGuid()ao escrever testes em .NET. - Alimentar colunas
uniqueidentifierno SQL Server. - Chaves de registro e arquivos de configuração do Windows.
As versões de UUID em resumo
| Versão | Ordenável | Baseada em | Use para |
|---|---|---|---|
| v1 | Não | Carimbo de tempo + endereço MAC | Sistemas antigos que ainda esperam v1 |
| v3 | Não | Hash MD5 de um nome | Identificadores determinísticos quando MD5 é exigido |
| v4 | Não | 122 bits aleatórios | Praticamente qualquer identificador de uso geral |
| v5 | Não | Hash SHA-1 de um nome | Quando o mesmo nome precisa dar sempre o mesmo ID |
| v6 | Sim | Carimbo de tempo reordenado | Identificadores ordenáveis sem abrir mão do aleatório |
| v7 | Sim | Tempo Unix em milissegundos | Chaves primárias de banco e IDs de eventos |
| v8 | Não | Seu próprio layout de bits | Formatos de fabricante ou experimentais |
As sete versões têm 128 bits e são escritas no mesmo formato 8-4-4-4-12. Só o significado dos bits muda.
Perguntas frequentes
GUID é a mesma coisa que UUID?
Só a escrita os diferencia. Os dois têm 128 bits e compartilham a mesma estrutura, com versão e variante. O .NET converte entre as duas formas, e um validador aceita ambas.
Qual versão este gerador produz?
A mesma de Guid.NewGuid(), ou seja, v4: 122 bits aleatórios. Se precisar de outras versões, use as páginas v1, v3, v5, v6, v7 ou v8 e mude lá o formato.
Por que o .NET escreve GUIDs em maiúsculas?
Por razões históricas e porque assim a saída fica uniformemente legível em logs. A caixa não importa para o SQL Server, que guarda GUIDs em 16 bytes.