O que é Short UUID?
Short UUID é uma técnica para comprimir UUIDs padrão de 128 bits em strings mais curtas e amigáveis para URLs. Geralmente envolve:
- Conversão de base: Converter o UUID de base-16 (hexadecimal) para uma base mais alta (geralmente base-58 ou base-62)
- Seleção do conjunto de caracteres: Uso de conjuntos de caracteres seguros para URL sem caracteres ambíguos
- Compressão sem perdas: Preservar todas as informações do UUID original
Exemplo de transformação:
- UUID padrão:
f47ac10b-58cc-4372-a567-0e02b2c3d479
- Short UUID (base-58):
2kLrTdCQVWFjc7dYXzzB5A
Como o Short UUID funciona
- Remover hífens do UUID padrão
- Converter a string hexadecimal resultante de 32 caracteres para um número decimal
- Converter o número decimal para uma base mais alta (58, 62, 64, etc.)
- Preencher o resultado se necessário para garantir comprimento consistente
Alfabetos comuns de codificação incluem:
- Base-58: Alfanumérico sem caracteres ambíguos (0, O, I, l)
- Base-62: Todos os caracteres alfanuméricos (a-z, A-Z, 0-9)
- Base-64: Alfanumérico mais dois caracteres especiais (geralmente + e /)
Vantagens e Considerações
Advantages | Considerations |
---|---|
|
|
Comparação de comprimento
Format | Length | Conjunto de Caracteres | Example |
---|---|---|---|
UUID padrão | 36 caracteres | Hex + hífens | f47ac10b-58cc-4372-a567-0e02b2c3d479 |
Hex (sem hífens) | 32 caracteres | 0-9, a-f | f47ac10b58cc4372a5670e02b2c3d479 |
Base-58 | 22 caracteres | Sem 0, O, I, l | 2kLrTdCQVWFjc7dYXzzB5A |
Base-62 | ~22 caracteres | Alphanumeric | 3pqLYdcw9TGKxNVgeO0gOd |
Base-64 | ~22 caracteres | Alfanumérico + símbolos | 9HrBC1jMQ3KlZw4CssPUeQ== |
Alfabeto comum Base-58
O alfabeto Base-58 é projetado para ser visualmente não ambíguo quando exibido em fontes de largura fixa e proporcional:
Conjunto de caracteres | Content |
---|---|
Numbers | 1-9 (excluindo 0) |
Letras maiúsculas | A-Z (excluindo I, O) |
Letras minúsculas | a-z (excluindo l) |
Caracteres: 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz
Casos comuns de uso
- Encurtamento de URL: Parâmetros de URL mais compactos
- IDs públicos: Identificadores de usuário ou conteúdo
- Otimização de código QR: Menos caracteres = códigos mais simples
- Aplicações móveis: Menos transmissão de dados
- Design de API: Identificadores de recursos mais limpos e compactos
- Compartilhamento social: Links mais amigáveis para o usuário
Perguntas Frequentes
Short UUIDs são tão únicos quanto UUIDs padrão?
Sim. Short UUIDs são apenas uma representação diferente do mesmo valor de 128 bits. A conversão é sem perdas, preservando todas as propriedades de unicidade dos UUIDs padrão.
Posso converter entre os formatos padrão e Short UUID?
Sim. A conversão é bidirecional - você pode codificar um UUID padrão para Short UUID e decodificá-lo de volta para exatamente o mesmo UUID padrão.
Qual codificação base é mais recomendada?
Base-58 é frequentemente preferida porque evita caracteres ambíguos (0/O e l/I) enquanto permanece segura para URLs sem exigir codificação de URL.
Quão mais curtos são os Short UUIDs?
UUIDs padrão têm 36 caracteres (com hífens). Short UUIDs geralmente têm 22 caracteres ao usar codificação base-58/62/64, uma redução de cerca de 40%.
Devo armazenar Short UUIDs no meu banco de dados?
Geralmente é recomendado armazenar o formato UUID padrão nos bancos de dados e converter para Short UUID apenas ao exibir para usuários ou em URLs. Isso proporciona melhor compatibilidade com tipos UUID de banco de dados.