Generador UUID
Generar identificadores únicos conformes a RFC 4122
Clic en "Generar UUID" para comenzar
¿Qué es UUID?
Un UUID, o identificador único universal, es un identificador de 128 bits usado para etiquetar registros, objetos, sesiones, archivos, dispositivos, mensajes y otras entidades en sistemas distribuidos. Su forma textual habitual usa grupos hexadecimales con el patrón 8-4-4-4-12. Los UUID son útiles cuando varios servidores, clientes o servicios necesitan crear IDs sin pedir a una base central el siguiente número secuencial. Las distintas versiones se generan con aleatoriedad, información temporal o hashes basados en nombres, lo que afecta privacidad, ordenación, predictibilidad y riesgo de colisión. La herramienta sirve para generar e inspeccionar UUID rápidamente, pero un UUID no debe tratarse como permiso ni secreto.
Cómo usar
Pasos de generación
- Selecciona la versión de UUID (v1, v4 o Nil)
- Define la cantidad a generar (1-100)
- Elige el caso de la salida (mayúsculas o minúsculas)
- Selecciona el formato (con guiones, sin guiones o con llaves)
- Pulsa el botón Generar para crear los identificadores solicitados
Atajos de teclado
- Ctrl + GGenerar UUID
- Ctrl + Shift + CCopiar todo
Notas sobre identificadores
- UUID v4 suele ser la opción adecuada para identificadores aleatorios del lado del cliente; no codifica información de hora ni de dispositivo.
- No uses UUID como secretos. Sirven para identificar registros, pero no sustituyen a tokens de autenticación ni a claves de acceso.
Casos de uso
Principio técnico
UUID es un identificador de 128 bits en la forma estándar 8-4-4-4-12, 36 caracteres en total (incluyendo 4 guiones). Los 128 bits se dividen en: time-low (32 bits), time-mid (16 bits), version-and-time-high (16 bits, los 4 bits superiores son la versión), variant-and-clock-seq (16 bits, los 2 a 3 bits superiores son la variante) y node (48 bits). La RFC 4122 define cinco versiones, de v1 a v5. v1 se construye a partir de una marca de tiempo de 60 bits (resolución de 100 nanosegundos, contada desde el 15 de octubre de 1582) más una dirección MAC de 48 bits más una secuencia de reloj de 14 bits. Es teóricamente ordenable por tiempo de generación, pero expone la identidad de la máquina y el tiempo de generación. v4 es la versión más utilizada: 122 bits rellenados con una fuente de aleatoriedad criptográficamente segura, y bits fijos de versión (4) y variante (10). La probabilidad de colisión es una preocupación central en el diseño de UUID. v4 tiene 122 bits de espacio aleatorio, y por la paradoja del cumpleaños se necesitaría generar mil millones de UUIDs por segundo durante 85 años consecutivos para alcanzar un 50% de probabilidad de una única colisión, lo cual es más que suficiente en la práctica. La emergente v7 coloca la marca de tiempo primero y los bits aleatorios al final, equilibrando unicidad y ordenación temporal, y es más adecuada para claves primarias de bases de datos.
- UUID v4: 122 bits aleatorios con bit de versión fijo 4 y bit de variante 10; funciona para casi todos los escenarios y no filtra información privada.
- UUID v1: marca de tiempo de 60 bits + MAC de 48 bits + secuencia de reloj de 14 bits; ordenable por tiempo pero expone la huella de la máquina, usar con precaución.
- UUID v7: marca de tiempo primero, bits aleatorios al final; un estándar en borrador de 2024 diseñado específicamente para claves primarias de bases de datos.
- Probabilidad de colisión: el espacio aleatorio de v4 es 2^122, y se necesitan mil millones de UUIDs por segundo durante 85 años consecutivos para un 50% de probabilidad de una colisión.
- UUID nulo: todos ceros 00000000-0000-0000-0000-000000000000, comúnmente usado como marcador de posición o valor predeterminado.
- Variantes de formato: más allá del estándar 8-4-4-4-12 existe la forma de 32 caracteres sin guiones, la forma con {llaves} y la forma URN (urn:uuid:...).
Ejemplos
Formato estándar UUID v4 (aleatorio)
550e8400-e29b-41d4-a716-446655440000
Dígito de versión (13.º carácter hex): 4 -> v4, aleatorio
Bits de variante (17.º carácter hex): 8/9/a/b -> variante RFC 4122
Uso: claves primarias en bases de datos, IDs de petición, IDs de recursos - la opción por defecto cuando el orden no importa
RFC: RFC 4122 sección 4.4 define la generación de v4Formato UUID v1 (timestamp + MAC)
c232ab00-9414-11ec-b909-0242ac120002
Dígito de versión: 1 -> v1, basado en tiempo
Nota: codifica la marca de tiempo de generación en time_low; los últimos 12 caracteres hex son el node id (a menudo una MAC)
Uso: cuando necesitas IDs ordenables o una fuente determinista por host, pero ten en cuenta que la MAC filtra la identidad del host
RFC: RFC 4122 sección 4.1 define la disposición de v1Generación por lotes de 5 IDs v4
a1b2c3d4-e5f6-4789-a012-3456789abcde
f7e8d9c0-b1a2-43f4-95e6-7d8c9b0a1e2f
3c4d5e6f-7a8b-49c0-9d1e-2f3a4b5c6d7e
8e9f0a1b-2c3d-44e5-bf6a-7b8c9d0e1f2a
5f6a7b8c-9d0e-45f1-a2b3-c4d5e6f7a8b9
Nota: cada ID se obtiene de forma independiente desde crypto.getRandomValues; la probabilidad de colisión para 2^122 IDs es despreciable según RFC 4122 Apéndice BPreguntas frecuentes
¿Qué es un UUID?
Un Universally Unique Identifier es un valor de 128 bits (RFC 4122/9562) que normalmente se escribe como 32 dígitos hexadecimales con el patrón 8-4-4-4-12, p. ej. 550e8400-e29b-41d4-a716-446655440000. Las distintas versiones codifican tiempo, datos aleatorios o hashes; su propósito es ser únicos entre sistemas sin un coordinador central.
¿Cuál es la diferencia entre UUID v1, v4 y v7?
v1 mezcla la dirección MAC del host y una marca de 100 ns (buen orden, expone información del host). v4 es puramente aleatorio (122 bits de entropía, sin orden). v7 (RFC 9562) coloca una marca Unix-ms de 48 bits en los bits altos con bits aleatorios al final: ordenable como v1 pero sin filtrar la MAC. v7 es el valor por defecto moderno para claves de base de datos.
¿Es realmente único un UUID?
Estadísticamente, sí. Generar mil millones de UUIDs v4 por segundo durante 100 años aún da una probabilidad de colisión de aproximadamente el 50 % (cota de la paradoja del cumpleaños). Para todo sistema práctico puedes tratar los UUIDs como únicos sin coordinación.
¿Los UUIDs son aleatorios e impredecibles?
Los UUIDs v4 son aleatorios y, en la práctica, impredecibles (122 bits de entropía). Los UUIDs v1 no son nada aleatorios: exponen la MAC y la marca del host, así que no los uses como token de seguridad. El prefijo de timestamp de v7 también es predecible; solo los bits aleatorios finales son impredecibles.
¿Debo usar UUID como clave primaria en la base de datos?
Funciona pero tiene contrapartidas. Los UUIDs v4 aleatorios provocan fragmentación del árbol B en bases de datos que agrupan por la clave primaria (MySQL InnoDB), perjudicando el rendimiento de inserción a gran escala. Los UUIDs v7 ordenables lo evitan. Los enteros autoincrementales siguen siendo más pequeños y rápidos: usa UUIDs cuando importe la generación distribuida.
¿La generación de UUID se hace en mi navegador?
Sí. La página usa crypto.randomUUID (o crypto.getRandomValues para navegadores antiguos), que forma parte de la Web Crypto API. Nada se envía al servidor, y refrescar la página ofrece un nuevo flujo de entropía.
¿Por qué algunos UUIDs se parecen mucho al principio?
Los UUIDs v1 y v7 codifican el tiempo en sus caracteres iniciales, así que los UUIDs generados dentro del mismo milisegundo comparten prefijo y solo difieren en los bytes finales. Esa propiedad es lo que los hace ordenables de forma natural. Los UUIDs v4 son aleatorios y no muestran este comportamiento.