ToolActToolAct

Generador UUID

Generar identificadores únicos conformes a RFC 4122

Resultados0 total

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

  1. Selecciona la versión de UUID (v1, v4 o Nil)
  2. Define la cantidad a generar (1-100)
  3. Elige el caso de la salida (mayúsculas o minúsculas)
  4. Selecciona el formato (con guiones, sin guiones o con llaves)
  5. 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

Generar lotes de UUID para datos de desarrolloCrea 1, 5, 10, 20, 50 o 100 UUIDs a la vez, y luego copia valores individuales, copia todos o descárgalos como archivo de texto. UUID v4 usa crypto.getRandomValues cuando está disponible, y la semilla aleatoria se genera localmente en el navegador, sin consultar un servicio de aleatoriedad remoto ni una fuente de entropía compartida, lo que mantiene los datos de prueba reproducibles en redes aisladas.
Elegir versión y formato de salidaGenera UUID v4 aleatorios, UUID v1 simulados con estilo de marca de tiempo o el UUID nil, y luego fórmalos con guiones, sin guiones o entre llaves, eligiendo mayúsculas o minúsculas. Como cada identificador se produce a partir de una semilla aleatoria local o una marca de tiempo más un nodo marcador embebido, los IDs resultantes pueden compartirse en fixtures sin exponer ningún token específico del entorno.
Trabajar rápidamente con atajos de tecladoLa página genera un UUID inicial al cargarse y admite Ctrl+G para regenerar y Ctrl+Shift+C para copiar todos los valores actuales. Es útil para IDs en fixtures, semillas de bases de datos, seguimiento de solicitudes y ejemplos de API. Cada generación extrae una nueva semilla aleatoria local, por lo que los IDs no colisionan entre ejecuciones incluso en una máquina que lleva horas desconectada.
Generar identificadores ordenables estilo v1Elige UUID v1 para IDs que deban ordenarse cronológicamente en un índice de base de datos. Ten en cuenta que estos filtran información de marca de tiempo y MAC, así que no los expongas públicamente cuando la hora de creación sea sensible. La página usa una marca de tiempo del navegador para los campos de tiempo, lo que mantiene el orden correcto en pruebas pero no debe confiarse para correlación precisa de reloj entre máquinas.
Validar un UUID existente antes de insertarloPega un valor candidato en el campo de entrada; la página vuelve a renderizar la versión analizada y los bits de variante para que detectes guiones mal formados, longitud incorrecta o uso no canónico de mayúsculas antes de escribir en la base de datos. La validación solo lee la cadena del campo de entrada, no se registra ni envía nada, por lo que los identificadores proporcionados por el usuario pueden comprobarse sin filtrarlos a un servicio externo.

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 v4

Formato 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 v1

Generació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 B

Preguntas 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.