¿Qué es Short UUID?
Short UUID es una técnica para comprimir UUIDs estándar de 128 bits en cadenas más cortas y amigables para URLs. Normalmente implica:
- Conversión de base: Convertir el UUID de base-16 (hexadecimal) a una base superior (usualmente base-58 o base-62)
- Selección del conjunto de caracteres: Uso de conjuntos de caracteres seguros para URL sin caracteres ambiguos
- Compresión sin pérdida: Conservando toda la información del UUID original
Ejemplo de transformación:
- UUID estándar:
f47ac10b-58cc-4372-a567-0e02b2c3d479
- Short UUID (base-58):
2kLrTdCQVWFjc7dYXzzB5A
Cómo funciona Short UUID
- Eliminar guiones del UUID estándar
- Convertir la cadena hexadecimal resultante de 32 caracteres a un número decimal
- Convertir el número decimal a una base superior (58, 62, 64, etc.)
- Rellenar el resultado si es necesario para asegurar longitud consistente
Los alfabetos de codificación comunes incluyen:
- Base-58: Alfanumérico sin caracteres ambiguos (0, O, I, l)
- Base-62: Todos los caracteres alfanuméricos (a-z, A-Z, 0-9)
- Base-64: Alfanumérico más dos caracteres especiales (a menudo + y /)
Ventajas y consideraciones
Advantages | Considerations |
---|---|
|
|
Comparación de longitud
Format | Length | Conjunto de caracteres | Example |
---|---|---|---|
UUID estándar | 36 caracteres | Hex + guiones | f47ac10b-58cc-4372-a567-0e02b2c3d479 |
Hex (sin guiones) | 32 caracteres | 0-9, a-f | f47ac10b58cc4372a5670e02b2c3d479 |
Base-58 | 22 caracteres | Sin 0, O, I, l | 2kLrTdCQVWFjc7dYXzzB5A |
Base-62 | ~22 caracteres | Alphanumeric | 3pqLYdcw9TGKxNVgeO0gOd |
Base-64 | ~22 caracteres | Alfanumérico + símbolos | 9HrBC1jMQ3KlZw4CssPUeQ== |
Alfabeto común Base-58
El alfabeto Base-58 está diseñado para ser visualmente no ambiguo cuando se muestra en fuentes de ancho fijo y proporcional:
Conjunto de caracteres | Content |
---|---|
Numbers | 1-9 (excluyendo 0) |
Letras mayúsculas | A-Z (excluyendo I, O) |
Letras minúsculas | a-z (excluyendo l) |
Caracteres: 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz
Casos de uso comunes
- Acortamiento de URL: Parámetros de URL más compactos
- IDs para usuarios: Identificadores de usuario o contenido
- Optimización de código QR: Menos caracteres = códigos más simples
- Aplicaciones móviles: Menor transmisión de datos
- Diseño de API: Identificadores de recursos más limpios y compactos
- Compartir en redes sociales: Enlaces más amigables para el usuario
Preguntas frecuentes
¿Son los Short UUID tan únicos como los UUID estándar?
Sí. Los Short UUID son solo una representación diferente del mismo valor de 128 bits. La conversión es sin pérdida, preservando todas las propiedades de unicidad de los UUID estándar.
¿Puedo convertir entre formatos UUID estándar y Short UUID?
Sí. La conversión es bidireccional: puedes codificar un UUID estándar a Short UUID y decodificarlo de nuevo al mismo UUID estándar exactamente.
¿Cuál codificación base es la más recomendada?
Base-58 es a menudo preferida porque evita caracteres ambiguos (0/O y l/I) mientras se mantiene segura para URL sin requerir codificación URL.
¿Cuánto más cortos son los Short UUID?
Los UUID estándar tienen 36 caracteres (con guiones). Los Short UUID suelen tener 22 caracteres cuando se usa codificación base-58/62/64, una reducción de aproximadamente 40%.
¿Debería almacenar Short UUID en mi base de datos?
Generalmente se recomienda almacenar el formato UUID estándar en bases de datos y convertir a Short UUID solo al mostrar a usuarios o en URLs. Esto proporciona mejor compatibilidad con tipos UUID de base de datos.