Hashes/Cripto
UUID Generator
Geração de UUID versões 1, 3, 4, 5, 6 e 7 — aleatórios, baseados em tempo e derivados de um nome (name-based).
A UUID (Universally Unique Identifier) is a 128-bit identifier that's unique in practice without a central registry: two independent servers can generate one at the same moment and almost never collide. The versions differ in how they're generated.
Which version to pick
- v4 — fully random, the most common choice for database record IDs, session keys, and similar cases.
- v1 and v6 — based on creation time; v6 carries the same content as v1 but with the fields reordered so it sorts naturally — handy as a primary key.
- v3 and v5 — deterministic, derived from a namespace and a name (v3 uses MD5, v5 uses SHA-1) — the same input always produces the same UUID.
- v7 — the newest standard: a millisecond Unix timestamp plus a random part, sortable by time like v1/v6, but without a MAC address.
Common uses
- Primary keys in databases where auto-increment doesn't fit (distributed systems, offline-first apps).
- Session IDs, request IDs for tracing, temporary file names.
- Deterministic IDs (v5) for objects that need the same identifier across different systems given the same name.
Things to keep in mind
UUID v1 and v6 embed the generating device's MAC address — avoid them if that's an unwanted disclosure.
The format is 32 hexadecimal characters grouped with hyphens as 8-4-4-4-12 (e.g. 550e8400-e29b-41d4-a716-446655440000).
Artigo sobre esta ferramenta: UUID: como são gerados identificadores que quase nunca se repetem
Perguntas frequentes
Qual a diferença entre UUID v4 e as outras versões?
A v4 é gerada quase inteiramente a partir de bytes aleatórios, sem relação com tempo ou informações do dispositivo. Já a v1 e a v6 incorporam um timestamp (e podem revelar quando o identificador foi criado), enquanto a v3 e a v5 são derivadas de forma determinística de um nome e um namespace.
Qual a chance de dois UUID v4 colidirem?
Praticamente nula: com 122 bits aleatórios, seriam necessários bilhões de UUIDs gerados por segundo, durante décadas, para ter uma probabilidade relevante de colisão.
Para que servem os UUIDs na prática?
São usados como identificadores únicos de registros em bancos de dados, chaves de sessão, nomes de arquivos temporários e qualquer situação em que seja preciso gerar um ID sem coordenação central nem risco de conflito.
O que é o UUID v7 e por que é melhor que o v4 para bancos de dados?
O UUID v7 incorpora um timestamp nos primeiros bits, então os valores são ordenados naturalmente pelo horário de criação — diferente do v4, totalmente aleatório, que prejudica o desempenho dos índices do banco de dados devido à ordem caótica de inserção de novos registros.
Posso usar um UUID como token secreto?
Para UUID v4, sim, já que é gerado por um gerador de aleatoriedade criptograficamente seguro. Mas o UUID v1 revela parcialmente o horário de criação e o endereço MAC do dispositivo, então não é adequado onde a imprevisibilidade é necessária.