Generadores

Generador de UUID

UUID v4, v1 y v5 generados en el navegador, con analizador para saber qué lleva dentro uno que ya tienes.

Qué es y para qué sirve

Un UUID (identificador único universal, o GUID en el mundo Microsoft) es un número de 128 bits pensado para que dos sistemas que nunca se han hablado puedan generar identificadores sin chocar nunca, sin coordinarse y sin pedirle un número a nadie. Se escribe como 32 caracteres hexadecimales en cinco grupos separados por guiones (8-4-4-4-12), y esa forma fija es la mitad de por qué gusta: se reconoce a simple vista y cabe igual de bien en una URL, una columna de base de datos o el nombre de un archivo.

No todos los UUID se construyen igual, y la versión va marcada en uno de esos caracteres. La v4 es pura suerte: 122 bits al azar, tantas combinaciones que la probabilidad de que dos se repitan es, a efectos prácticos, cero. Es la que se usa el 99% de las veces: claves primarias, identificadores de sesión, nombres de archivo temporales. La v1 lleva en cambio la hora exacta de creación y un nodo, útil cuando importa poder ordenar los identificadores por cuándo se crearon. Y la v5 es determinista: el mismo espacio de nombres y el mismo texto de entrada producen siempre el mismo UUID, lo que sirve para convertir una URL o un nombre en un identificador estable sin guardar una tabla de conversión.

Todo se genera aquí con crypto.getRandomValues y crypto.subtle, las mismas piezas criptográficas del navegador que usan las conexiones cifradas, nunca con Math.random(). Nada de lo que generes o analices sale de tu navegador.

Casos de uso

  • Generar la clave primaria de una tabla nueva sin depender de un contador que otro servicio pueda repetir.
  • Crear identificadores de sesión, de petición o de traza para seguir una operación entre varios servicios.
  • Nombrar archivos subidos por usuarios sin que dos nombres choquen nunca.
  • Generar un UUID v5 a partir de una URL o de un nombre para tener siempre el mismo identificador sin guardarlo en ninguna parte.
  • Rellenar datos de prueba o semillas para una base de datos de desarrollo, de golpe y en lote.
  • Comprobar qué versión es un UUID que aparece en un log o en una respuesta de una API, y cuándo se creó si es v1.
  • Convertir de golpe una lista de correos o de URLs en UUID v5 estables, uno por línea, sin escribir una línea de código.
  • Pegar un volcado de IDs de una base de datos o de un log para comprobar si hay alguno repetido.
  • Sacar un UUID en Base64 para meterlo en una URL o en una cookie ocupando menos que los 36 caracteres habituales.

Cómo se usa

  1. Elige la versión: v4 para el caso general, v1 si necesitas la marca de tiempo, v5 si necesitas que el mismo nombre dé siempre el mismo resultado.
  2. Para v5, indica el espacio de nombres (DNS, URL, OID, X.500 o uno propio) y el texto de entrada.
  3. Ajusta cuántos generar de golpe, y el formato: mayúsculas, sin guiones, entre llaves o con el prefijo urn:uuid:.
  4. Copia uno solo, cópialos todos de golpe o descárgalos en un .txt.
  5. Para analizar un UUID que ya tienes, pégalo en el analizador: te dice la versión, la variante y, si es v1, la fecha exacta de creación.

Qué incluye Generador de UUID

  • UUID v4 con crypto.randomUUID cuando el navegador lo trae, y con crypto.getRandomValues como alternativa.
  • UUID v1 con la marca de tiempo real del momento de generación y un nodo aleatorio con el bit de multicast activado.
  • UUID v5 con los cuatro espacios de nombres estándar de la RFC (DNS, URL, OID, X.500) o uno personalizado.
  • UUID nil (todo ceros) y UUID max (todo efes), los dos casos especiales de la especificación.
  • Generación en lote de hasta 100 de una vez, con copia conjunta y descarga en .txt.
  • Formato configurable: mayúsculas o minúsculas, con o sin guiones, entre llaves, con el prefijo urn:uuid:.
  • Analizador que valida la forma, extrae la versión y la variante, y para v1 calcula la fecha de creación exacta.
  • El analizador acepta varias líneas a la vez y marca los UUID que se repiten.
  • Generación de UUID v5 para una lista entera de nombres de golpe (uno por línea), con descarga en .tsv.
  • Cada UUID se puede ver también en Base64 (22 caracteres) y como número decimal de 128 bits.
  • El comando equivalente en Node.js, Python, PowerShell o Linux para generar lo mismo desde la terminal.
  • Todo ocurre en tu navegador: nada se envía a ningún servidor y funciona sin conexión.

Preguntas frecuentes

¿Pueden dos UUID v4 repetirse?
En la práctica no. Un UUID v4 tiene 122 bits de azar, así que hay 2^122 posibilidades. Aunque se generaran mil millones por segundo durante mil años, la probabilidad de que dos coincidan sigue siendo muchísimo más pequeña que la de que un meteorito destruya el centro de datos donde se guardan.
¿Qué diferencia hay entre UUID y GUID?
Ninguna que importe: GUID es el nombre que usa Microsoft para lo mismo que el resto del mundo llama UUID. Los que genera esta página siguen la RFC 9562 (antes RFC 4122), que es el estándar que también usa Windows.
¿Cuándo conviene usar v1 en vez de v4?
Cuando importa poder ordenar los identificadores por el momento en que se crearon, algo que un v4 no permite porque es puro azar. El precio es que un v1 revela cuándo se generó, y eso a veces es información que no quieres soltar.
¿Para qué sirve un UUID v5 si ya existe el v4?
Para cuando necesitas que un mismo dato de entrada produzca siempre el mismo UUID, sin tener que guardar la relación en ninguna tabla. Por ejemplo, convertir la URL de un artículo en un identificador estable: cada vez que se lo pases a este generador con el mismo espacio de nombres, sale el mismo UUID.
¿Es seguro el azar que usa esta página?
Sí. Los v4 salen de crypto.getRandomValues (o de crypto.randomUUID, que lo usa por debajo), el generador criptográfico del navegador, y no de Math.random(), que es predecible y no sirve para nada que necesite ser realmente aleatorio.
¿Se envían los UUID que genero o analizo a algún servidor?
No. Todo el cálculo ocurre en tu navegador, con o sin conexión: esta página no tiene ningún servidor al que mandar nada.
¿Para qué sirve ver un UUID en Base64 o en decimal?
Son la misma información con otra ropa. El Base64 (22 caracteres en vez de 36) es lo que usan algunas bibliotecas de «UUID cortos» para que quepa mejor en una URL o en una cookie. El decimal es el mismo número de 128 bits leído como un entero, útil sobre todo para depurar cómo lo guarda una base de datos que lo trata como un número en vez de como texto.
¿Por qué hay líneas que salen marcadas como «repetido» en el analizador?
Porque has pegado el mismo UUID más de una vez, algo que conviene saber si vienes de revisar un log o una tabla en busca de duplicados. La comparación ignora mayúsculas y espacios, así que detecta el mismo UUID aunque esté escrito de formas distintas.

Privacidad

Generador de UUID funciona íntegramente en tu navegador. No hay servidor detrás: los datos que introduces no se envían a ninguna parte y desaparecen al cerrar la pestaña.