Generar identificadores
Generá UUID de las versiones 1, 3, 4, 5, 6 y 7, o ULID, de a uno o en lotes de hasta mil, y analizá cualquier identificador para saber qué versión es, qué variante usa y qué fecha lleva adentro. Se calculan en tu navegador con el generador criptográfico del sistema.
122 bits aleatorios. El más usado cuando sólo hace falta un identificador único.
Formato
Resultado
Analizar un UUID o ULID
Acepta guiones, llaves, el prefijo urn:uuid: o un ULID de 26 caracteres
Tipo
Versión 7: fecha Unix ordenable
Variante
RFC 9562 (antes RFC 4122)
Fecha de creación
22 feb 2022, 4:22:22 p.m. 2022-02-22T19:22:22.000Z · 1645557742000 ms
Canónico017f22e2-79b0-7cc3-98c4-dc0c0c07398f
Mayúsculas017F22E2-79B0-7CC3-98C4-DC0C0C07398F
GUID con llaves{017F22E2-79B0-7CC3-98C4-DC0C0C07398F}
URNurn:uuid:017f22e2-79b0-7cc3-98c4-dc0c0c07398f
Como ULID01FWHE4YDGFK1SHH6W1G60EECF
Hexadecimal017f22e279b07cc398c4dc0c0c07398f
Entero decimal1989357241971137676463954034883508623
Base64AX8i4nmwfMOYxNwMDAc5jw==

Cómo funciona

Un UUID es un número de 128 bits que se escribe como 32 dígitos hexadecimales en cinco grupos (8-4-4-4-12). Sirve para identificar un registro sin preguntarle a nadie si el valor ya está usado: dos servidores, dos apps móviles o dos procesos pueden crear identificadores al mismo tiempo sin coordinarse y sin chocar. El formato lo define la RFC 9562, que en 2024 reemplazó a la RFC 4122 y sumó las versiones 6, 7 y 8.

El dígito que abre el tercer grupo indica la versión, y cada versión arma los bits de otra manera. La 4 es puro azar. La 7 empieza con la fecha en milisegundos, así que los identificadores quedan ordenados por creación. Las versiones 3 y 5 no tienen nada aleatorio: salen del hash de un espacio de nombres y un nombre, y por eso siempre dan el mismo resultado. La 1 y la 6 llevan una fecha con precisión de 100 nanosegundos y un nodo que históricamente era la MAC de la computadora.

El analizador hace el camino inverso: lee la versión y la variante, recupera la fecha de los UUID v1, v6 y v7 y de los ULID, y muestra el mismo valor escrito como GUID, URN, hexadecimal, entero o Base64. Todo se calcula en tu navegador; ningún identificador viaja a un servidor.

Ejemplos

v5 · DNS · www.example.com2ed6657d-e927-568b-95e1-2665a8aea6a2Es el vector de prueba de la RFC 9562. Cualquier biblioteca que implemente bien la versión 5 tiene que devolver exactamente este valor para ese nombre en el espacio DNS.
017F22E2-79B0-7CC3-98C4-DC0C0C07398F2022-02-22T19:22:22.000ZLos primeros 12 dígitos de un UUID v7 son los milisegundos Unix en hexadecimal: 0x017F22E279B0 es 1645557742000.
C232AB00-9414-11EC-B3C8-9F6BDECED8461EC9414C-232A-6B00-B3C8-9F6BDECED846El mismo instante como versión 1 y como versión 6. La 6 reordena los bits de la fecha de mayor a menor para que el texto ordene cronológicamente; la secuencia de reloj y el nodo no cambian.
01ARZ3NDEKTSV4RRFFQ69G5FAV01563e3a-b5d3-d676-4c61-efb99302bd5bUn ULID ocupa los mismos 128 bits que un UUID, así que se puede guardar en una columna uuid. Pero no tiene versión ni variante: al leerlo como UUID, esos dígitos son parte del azar.

Casos de uso

  • Crear la clave primaria en el cliente o en varios servicios a la vez, sin esperar a que la base de datos asigne un autoincremental.
  • Generar claves de idempotencia para que un pago o un pedido reintentado no se procese dos veces.
  • Etiquetar cada petición con un identificador de correlación para seguirla a través de los logs de varios microservicios.
  • Derivar con v5 un identificador estable a partir de una clave natural (un correo, una URL, un SKU) para que dos sistemas lleguen al mismo valor sin compartir una tabla.
  • Saber cuándo se creó un registro a partir de su UUID v7 o su ULID cuando aparece en un log o en un reporte de error.
  • Cargar datos de prueba con cientos de identificadores válidos de una sola vez.

Preguntas frecuentes

¿v4 o v7 para una clave primaria?

v7, salvo que tengas un motivo para esconder la fecha de creación. Los índices de árbol B guardan las claves en orden, y un v4 cae en cualquier lugar del índice: cada inserción toca una página distinta, se parten páginas y la caché rinde menos. Un v7 siempre va al final, como un autoincremental. Ojo con SQL Server: el tipo uniqueidentifier ordena empezando por los últimos seis bytes, así que ahí un v7 tampoco queda secuencial.

¿Se pueden repetir dos UUID v4?

En teoría sí, en la práctica no. Un v4 tiene 122 bits aleatorios, y para llegar a un 50 % de probabilidad de que haya al menos una repetición habría que generar unos 2,7 × 10¹⁸, es decir, mil millones por segundo durante más de 85 años. La condición es usar un generador criptográfico: los duplicados reales que se reportan vienen de semillas mal inicializadas, no de la matemática.

¿UUID y GUID son lo mismo?

Sí, GUID es el nombre que usa Microsoft y el texto es idéntico; en Windows suele aparecer en mayúsculas y entre llaves. La diferencia está en el binario: Guid.ToByteArray de .NET guarda los tres primeros grupos en little-endian, así que si leés esos bytes crudos desde otro lenguaje vas a ver los primeros dígitos invertidos.

¿Puedo usar un UUID como token secreto?

Un v4 bien generado tiene 122 bits impredecibles, que alcanzan para un enlace difícil de adivinar, pero la RFC 9562 aclara que los UUID no están pensados como credenciales: muchas bibliotecas no garantizan un generador criptográfico, y las versiones 1, 6 y 7 revelan la fecha de creación. Para tokens de sesión o de recuperación de contraseña conviene generar bytes aleatorios dedicados.

¿ULID o UUID v7?

Llevan casi la misma información: 48 bits de milisegundos y el resto aleatorio. El ULID se escribe en 26 caracteres sin guiones ni letras ambiguas, más cómodo en una URL. El v7 es un UUID estándar, así que entra en las columnas uuid de PostgreSQL y en cualquier validador sin conversión. Si arrancás de cero y tu base tiene tipo uuid, v7.

¿Por qué el nodo de mis UUID v1 no es mi MAC?

Porque exponer la MAC de la placa de red permite rastrear qué equipo creó cada identificador, y así se identificó al autor del virus Melissa en 1999. La RFC 9562 recomienda usar un nodo aleatorio con el bit multicast encendido, que es lo que hace esta herramienta; el analizador te avisa cuando un UUID v1 tiene una MAC real.