Gerador de ULID Online
Gere ULIDs ordenáveis, decodifique o timestamp embutido e converta entre ULID e UUID no seu navegador. Nada é enviado.
O Gerador de ULID roda inteiramente no seu navegador. A aleatoriedade vem da Web Crypto API, e os ULIDs que você gera, decodifica ou converte nunca saem do seu dispositivo nem chegam à ArrayKit.
Abrir o Gerador de UUID
Sobre Gerador de ULID
O Gerador de ULID cria ULIDs, o identificador ordenável lexicograficamente que empacota um timestamp de 48 bits em milissegundos e 80 bits de aleatoriedade em uma string compacta de 26 caracteres em Crockford base32. Gere um único ULID ou um lote de centenas, ative o modo monotônico para que IDs feitos no mesmo milissegundo ainda ordenem na ordem de criação, e alterne maiúsculas/minúsculas para o formato que seu banco de dados prefere. O modo Decodificar reverte o processo: cole qualquer ULID e leia de volta o horário exato de criação como milissegundos de época e um timestamp ISO-8601. O conversor embutido transforma um ULID em seu UUID de 128 bits equivalente e de volta sem perder um bit. Útil quando você precisa de chaves de banco que ordenam por tempo, IDs de correlação de log, ou uma alternativa a UUID. Os bytes aleatórios vêm da Web Crypto API do seu navegador e cada ULID é montado no seu dispositivo, então nada que você gera é enviado a um servidor.
Recursos
- Gere um ULID ou um lote de até 500 de uma vez
- O modo monotônico incrementa o campo aleatório para que IDs do mesmo milissegundo ainda ordenem corretamente
- Usa a Web Crypto API para forte aleatoriedade nos últimos 80 bits
- Decodifique qualquer ULID em seu timestamp embutido em ms de época e ISO-8601
- Converta sem perdas entre um ULID e seu UUID de 128 bits equivalente
- Saída em maiúsculas ou minúsculas para combinar com seu schema
- O alfabeto Crockford base32 pula I, L, O e U para evitar erros de digitação com caracteres parecidos
- Copie o lote inteiro ou um único ID com um clique
Como usar Gerador de ULID
- Mantenha a aba Gerar selecionada e defina quantos ULIDs você precisa
- Ative Monotônico para chaves ordenadas por tempo, ou desative para sufixos aleatórios independentes
- Copie o ULID ou o lote inteiro da caixa de saída
- Mude para Decodificar para ler o timestamp de um ULID, ou ULID para UUID para converter
Exemplo
Entrada
01ARZ3NDEKTSV4RRFFQ69G5FAV
Saída
timestamp: 1469922850259 (2016-07-30T23:54:10.259Z)
uuid: 01563e3a-b5d3-d676-4c61-efb99302bd5b
Os primeiros 10 caracteres decodificam para o horário de criação; todos os 128 bits mapeiam para um UUID.
Erros comuns e solução de problemas
- A decodificação informa que o ULID é inválido mesmo parecendo certo. — Um ULID tem exatamente 26 caracteres. Remova aspas ou espaços ao redor, e note que o primeiro caractere precisa ser 0–7 para que o timestamp de 48 bits não estoure.
- Dois ULIDs criados em um laço apertado ordenam fora de ordem. — Ative Monotônico. Sem ele, IDs que compartilham o mesmo milissegundo recebem sufixos aleatórios independentes e podem ordenar em qualquer ordem.
- O banco de dados rejeita ULIDs em minúsculas. — Crockford base32 é canonicamente em maiúsculas. Desative a opção Minúsculas, ou armazene-os sem diferenciar maiúsculas de minúsculas já que a decodificação aceita qualquer caixa.
- Um UUID convertido não parece um UUID versão 4. — Um ULID não tem bits de versão ou variante, então sua forma UUID não carregará um 4 no nibble de versão. Isso é esperado — a conversão preserva os 128 bits brutos, não o layout do UUID.
Perguntas frequentes
- O que é um ULID e como ele difere de um UUID?
- Um ULID é um identificador de 128 bits escrito como 26 caracteres em Crockford base32. Diferente de um UUIDv4 aleatório, seus bits iniciais são um timestamp em milissegundos, então ULIDs ordenam na ordem de criação como texto simples enquanto ainda são globalmente únicos.
- Como funciona a geração monotônica de ULID?
- Quando vários ULIDs são gerados dentro do mesmo milissegundo, o modo monotônico reutiliza o campo aleatório daquele milissegundo e soma um a ele para cada novo ID em vez de sortear aleatoriedade nova. Isso garante que cada ULID seja estritamente maior que o anterior.
- Posso recuperar o horário de criação de um ULID?
- Sim. Os primeiros 10 caracteres codificam um timestamp de 48 bits em milissegundos. Cole um ULID no modo Decodificar e a ferramenta mostra o valor exato em ms de época e a data e hora ISO-8601 correspondentes.
- A conversão de ULID para UUID é reversível?
- Sim. Um ULID e um UUID ambos têm 128 bits, então o conversor mapeia cada bit sem perda. Converta um ULID em UUID e de volta e você obtém o ULID original exatamente.
- Por que o alfabeto pula I, L, O e U?
- ULIDs usam Crockford base32, que omite I, L, O e U para que os IDs sejam fáceis de ler e difíceis de digitar errado. Na decodificação a ferramenta ainda aceita I e L como 1 e O como 0 por conveniência.
- Os ULIDs que eu gero aqui são privados?
- Sim. Cada ULID é montado no seu navegador usando a Web Crypto API para aleatoriedade. Os IDs que você gera, decodifica ou converte nunca são enviados à ArrayKit nem a nenhum servidor.
Ferramentas relacionadas
Todas as ferramentas de ArrayKit