Como usar
- Escolha o Tipo: versão 4 para identificadores aleatórios, ou versão 7 ou ULID para identificadores que se ordenam pela hora.
- Defina Quantos com um número de 1 a 1000.
- Marque Maiúsculas ou Envolver em chaves se o seu sistema precisar delas.
- Use Copiar para copiar a lista, ou Baixar para salvá-la como arquivo de texto com um identificador em cada linha.
Formatos de UUID e ULID
Um UUID tem 128 bits escritos como 32 dígitos hexadecimais em cinco grupos de 8-4-4-4-12, como 3f2b8c1e-7a9d-4f3e-9b21-6d5e4c3b2a10. O dígito de versão mostra o tipo, e os bits de variante mostram que vale o layout da RFC. Um ULID tem 128 bits escritos como 26 caracteres da base32 de Crockford, como 01ARZ3NDEKTSV4RRFFQ69G5FAV.
UUID versão 4: 122 bits aleatórios
UUID versão 7: 48 bits de tempo e mais 74 bits
ULID: 48 bits de tempo e 80 bits aleatórios
Versão 7 e ULID se ordenam pelo tempo
Os dois começam com o tempo Unix em milissegundos, então um identificador criado depois se ordena depois de um criado antes, o que mantém os índices de banco de dados rápidos. Dentro de um lote, identificadores criados no mesmo milissegundo contam para cima, então a lista continua em ordem (RFC 9562, seção 6.2, e a regra monotônica da especificação do ULID).
Bits aleatórios e para que servem os identificadores
- Os bits aleatórios vêm do gerador criptográfico de números aleatórios do seu navegador, e não só do relógio.
- A versão 4 não leva tempo e não se ordena. Use-a quando a ordem não importar.
- Um UUID ou um ULID é um identificador, não uma senha nem uma chave de acesso. Não o trate como segredo.
Exemplo resolvido: ler a hora de uma versão 7 ou de um ULID
A página gera identificadores aleatórios novos, então um exemplo precisa ser um já existente. Os primeiros 48 bits do UUID versão 7 da RFC 9562, apêndice A.6, são 017f22e279b0. Isso dá 1.645.557.742.000 milissegundos, ou 22 de fevereiro de 2022, às 19:22:22 UTC.
Os primeiros dez caracteres do ULID 01ARZ3NDEKTSV4RRFFQ69G5FAV, da especificação do ULID, são a hora dele: 01ARZ3NDEK são 1.469.922.850.259 milissegundos, ou 30 de julho de 2016, 23:54:10.259 UTC.
| Identificador | Parte do tempo | Tempo (UTC) |
|---|---|---|
| 017f22e2-79b0-7cc3-98c4-dc0c0c07398f (UUID versão 7) | 1.645.557.742.000 ms | 2022-02-22 19:22:22 |
| 01ARZ3NDEKTSV4RRFFQ69G5FAV (ULID) | 1.469.922.850.259 ms | 2016-07-30 23:54:10.259 |
Perguntas frequentes
Qual é a diferença entre UUID v4, v7 e ULID?
A versão 4 é aleatória e não leva tempo. A versão 7 é um UUID que começa com o tempo Unix em milissegundos, e um ULID é um texto de 26 caracteres baseado na mesma ideia. Use a versão 7 ou o ULID quando a ordem de criação importar.
Dois identificadores gerados podem ser iguais?
O espaço aleatório da versão 4 é de 2 elevado a 122, então dois identificadores iguais são praticamente impossíveis. Dentro de um lote, identificadores da versão 7 e ULID criados no mesmo milissegundo nunca se repetem, porque o contador deles conta para cima.
Estes identificadores são seguros para usar como senhas ou chaves de acesso?
Não. Um identificador não foi feito para ser secreto, e uma versão 7 ou um ULID mostra a hora em que foi criado. Use um gerador de tokens feito para segredos.
Por que a hora aparece quando eu decodifico uma versão 7 ou um ULID?
Os dois guardam a hora de criação nos primeiros 48 bits, como milissegundos desde 1970. Quem vê o identificador pode ler essa hora, então não coloque informação privada nele.
A página guarda ou envia os identificadores?
Não. Eles são feitos no seu navegador e não são guardados, enviados nem registrados.
Fontes
- RFC 9562 (em inglês): Universally Unique IDentifiers (UUID), sections 5.4, 5.7 and 6.2 (IETF)
- Especificação do ULID (em inglês): GitHub, ulid/spec
- Codificação base32 de Crockford (em inglês): Douglas Crockford
Números e texto verificados pela última vez em terça-feira, 10 de novembro de 2026.