Saltar al contenido

Generador de UUID (v4 y v7)Beta

Genera tantos UUID v4 o v7 como necesites, o pega uno para ver su versión, variante y (en v7) la marca de tiempo incluida. Todo ocurre en tu navegador.

Generar UUID

Versión
Genera de 1 a 1000 a la vez.

Resultados

Analizador de UUID

Cómo usarlo

Elige una versión y una cantidad (de 1 a 1000) y pulsa «Generar» para crear los UUID directamente en tu navegador. Al activar mayúsculas, quitar los guiones o añadir llaves, el resultado cambia, y puedes copiarlo todo de una vez o descargarlo como archivo .txt. Pega un único UUID en el analizador de abajo para ver su versión, su variante y, en el caso de v7, la marca de tiempo que contiene.

La diferencia entre v4 y v7

La versión 4 rellena los 122 bits no fijos con aleatoriedad criptográficamente segura, así que no se puede deducir nada a partir del valor. Su inconveniente es que no tiene ningún orden: usada como clave primaria en una base de datos, las filas nuevas caen en posiciones aleatorias del índice (poca localidad), lo que provoca divisiones frecuentes de las páginas del árbol B y reduce el acierto de la caché. La versión 7 guarda una marca de tiempo con precisión de milisegundos en sus primeros 48 bits, de modo que los propios valores quedan ordenados por orden de creación. Usada como clave primaria, las filas nuevas siempre se añaden al final del índice, lo que significa menos divisiones de página y mejor localidad de caché. Ambas versiones siguen el estándar RFC 9562, y esta herramienta genera la parte aleatoria con la función criptográfica del navegador (crypto.getRandomValues).

Por qué se mantiene el orden dentro del mismo milisegundo

La versión 7 tiene 12 bits libres justo después de la marca de tiempo (rand_a), y esta herramienta incrementa ese valor por cada UUID creado dentro del mismo milisegundo. Como resultado, al generar varios a la vez, el simple orden alfabético de las cadenas coincide con el orden real de generación.

Qué tan probable es una colisión

La versión 4 usa un espacio aleatorio de 122 bits, así que incluso generando mil millones por segundo, la probabilidad de una coincidencia accidental es prácticamente cero (un cálculo con el problema del cumpleaños muestra que harían falta más de 10^18 UUID para alcanzar una probabilidad de colisión del 50 %). La versión 7 tiene una parte aleatoria más pequeña, de 74 bits, pero como esta herramienta cuenta hacia arriba dentro del mismo milisegundo, ningún valor se repite dentro de un mismo lote.

Privacidad

Los UUID se generan por completo dentro de tu navegador y nunca se envían a un servidor. Ten en cuenta que un UUID v7 lleva su momento exacto de creación, así que usa v4 para cualquier valor que no deba revelar cuándo se creó, como un identificador que deba seguir siendo anónimo.

Fuentes

Preguntas frecuentes

¿Debería usar UUID v4 o v7?

Usa v7 cuando el orden y el rendimiento de inserción importan, como en una clave primaria de base de datos. Usa v4 cuando el valor no deba revelar en absoluto cuándo se creó. En ambas versiones la probabilidad de colisión es prácticamente insignificante.

¿Pueden coincidir por casualidad dos UUID generados?

En teoría es posible, pero la probabilidad es extremadamente baja. La v4 usa un espacio aleatorio de 122 bits, y en la v7 esta herramienta también incrementa un contador para los valores creados en el mismo milisegundo, así que un mismo lote nunca se repite.

¿La marca de tiempo de una UUID v7 revela exactamente cuándo se creó?

Sí. Los primeros 48 bits guardan el número de milisegundos transcurridos desde el 1 de enero de 1970, así que al pegarla en el analizador se muestra la fecha y hora exactas de creación. Por eso v4 es la opción más segura cuando el momento de creación debe permanecer oculto.

¿Cuándo se usan las opciones sin guiones o con llaves?

El formato de 32 caracteres sin guiones resulta cómodo para nombres de archivo o algunas columnas de bases de datos, mientras que el formato entre llaves se usa sobre todo en el registro de Windows y en los GUID de componentes COM.