Herramientas para desarrolladores

Generador de UUID

Genera las ocho versiones de UUID una junto a otra. Usa la configuración para IDs MAC o de nodo, identificadores locales DCE, nombres de espacios de nombres y cargas útiles UUIDv8 personalizadas; después copia el resultado que necesites.

8 versiones RFC en el navegador Leer RFC 9562

Generador

Generar UUID

Los UUID se recrean al actualizar la página o pulsar un botón

Configuración de versiones

Los navegadores no pueden leer tu dirección MAC. Introduce una para reproducir un campo de nodo o déjalo vacío para usar un ID de nodo aleatorio y privado.

Un UID, GID u otro identificador de 32 bits con significado en el dominio DCE seleccionado.

UUIDv2 es un formato de compatibilidad de seguridad DCE y no es habitual en aplicaciones nuevas.

El nombre se codifica en UTF-8 antes de aplicar el hash. El mismo espacio de nombres más el mismo nombre producen el mismo UUID.

UUIDv8 solo estandariza sus bits de versión y variante. Este valor es una carga útil experimental específica de la aplicación, no un mecanismo que garantice la unicidad.

La generación, el hashing y la configuración permanecen en esta pestaña del navegador. Nada de lo que introduzcas se envía al servidor ni se guarda.

Resultados

Listo para generar.

v1

Basado en el tiempo

Tiempo gregoriano + secuencia de reloj + nodo

Pulsa para generar
marca de tiempo MAC / nodo heredado

Útil para la interoperabilidad con sistemas antiguos. Una MAC real puede identificar el equipo, por eso esta página usa un nodo local aleatorio salvo que proporciones uno.

v2

Seguridad DCE

ID local + dominio DCE + tiempo + nodo

Pulsa para generar
marca de tiempo ID local MAC / nodo heredado

RFC 9562 remite UUIDv2 a las especificaciones DCE. Este generador ofrece la disposición habitual de UID, GID y organización para trabajos de compatibilidad.

v3

Basado en nombre · MD5

UUID de espacio de nombres + nombre con hash MD5

Pulsa para generar
basado en nombre determinista MD5

Determinista e interoperable con sistemas antiguos. Prefiere v5 para diseños nuevos basados en nombres, salvo que necesites compatibilidad con v3.

v4

Aleatorio

122 bits criptográficamente aleatorios

Pulsa para generar
aleatorio sin MAC uso general

El valor predeterminado conocido en muchas plataformas. No contiene marca de tiempo, dirección MAC, nombre ni señal de ordenación.

v5

Basado en nombre · SHA-1

UUID de espacio de nombres + nombre con hash SHA-1

Pulsa para generar
basado en nombre determinista SHA-1

Úsalo cuando un nombre estable deba corresponder al mismo UUID en varios sistemas. El hash sirve para crear espacios de nombres, no para proteger contraseñas.

v6

Basado en tiempo reordenado

Campos de v1 con los bytes de tiempo al principio

Pulsa para generar
ordenado por tiempo MAC / nodo favorable para ordenar

Está diseñado para mejorar la localidad en cargas de trabajo de tipo v1. Elige v7 para un sistema nuevo que no necesite compatibilidad con v1.

v7

Ordenado por tiempo Unix

Milisegundos desde la época Unix + bits aleatorios

Pulsa para generar
ordenado por tiempo aleatorio favorable para ordenar

La opción moderna ordenada por tiempo: los bytes de marca de tiempo se ordenan primero y los bits restantes aportan unicidad sin una dirección MAC.

v8

Personalizado / experimental

122 bits definidos por la aplicación

Pulsa para generar
carga útil personalizada experimental aleatorio

Solo están estandarizados la versión y la variante. Define la estructura y las reglas de unicidad antes de usar v8 en un formato de intercambio.

Guía de compatibilidad

Lo que suele generar tu lenguaje

Las API integradas y las funciones de base de datos suelen cubrir solo las versiones más usadas en cada ecosistema. Comprueba siempre la versión y el contrato de orden de bytes en cada límite.

.NET / ASP.NET

v4v7 · .NET 9+

Guid.NewGuid() produce v4. El .NET moderno también tiene Guid.CreateVersion7() para v7; las demás versiones suelen provenir de una biblioteca o del código de la aplicación.

Java SE

v3v4

UUID.randomUUID() produce v4 y UUID.nameUUIDFromBytes() produce v3. El tipo UUID estándar de Java puede inspeccionar campos antiguos, mientras que las demás versiones suelen necesitar una biblioteca o código de aplicación.

Python

v1 · v3 · v4 · v5v6 · v7 · v8 · Python 3.14+

El módulo estándar uuid cubre v1, v3, v4 y v5; Python 3.14 añade v6, v7 y v8. UUIDv2 no forma parte del módulo estándar.

Node.js / JavaScript

core · v4uuid · v1/v3/v4/v5/v6/v7

El crypto.randomUUID() integrado en Node es v4, mientras que las versiones recientes de Node también exponen v7. El popular paquete uuid proporciona v1, v3, v4, v5, v6 y v7; deja v8 como específico de la aplicación.

Lo que generan las bases de datos de forma nativa

Lo que generan las bases de datos de forma nativa

La compatibilidad nativa varía según el motor y la versión. Un ayudante para UUID secuenciales o binarios no es automáticamente UUIDv6 ni UUIDv7.

v4 · v7 · PostgreSQL 18+

Generación nativa de v4 y v7: gen_random_uuid() para v4 y uuidv7() para v7 ordenado por tiempo.

v1 · binary(16)

UUID() devuelve v1. UUID_TO_BIN(..., 1) puede reordenar los campos de tiempo de v1 para almacenarlos, pero no produce UUIDv6 ni UUIDv7.

v4 · GUID secuencial

NEWID() produce un GUID compatible con RFC 4122. NEWSEQUENTIALID() es secuencial para mejorar la localidad de los índices, pero no es UUIDv6 ni UUIDv7.

v4 · Oracle 23ai+

UUID() devuelve v4 en Oracle Database 23ai y posteriores. SYS_GUID() sigue siendo un generador RAW de 16 bytes, pero no está etiquetado como una versión UUID de RFC.

sin UUID nativo · randomblob(16)

SQLite no tiene un tipo UUID ni un generador de UUID por versiones. randomblob(16) más hex() puede crear texto aleatorio de 128 bits, pero las aplicaciones deben establecer por sí mismas los bits de UUID v4.

v4 · mongosh UUID() · ObjectId ≠ UUID

UUID() en mongosh genera UUID BSON v4 aleatorios. El ObjectId predeterminado es un identificador separado de 12 bytes, no uno de los UUID v1-v8.

Ordenación

v6 y v7 colocan el tiempo al principio, por lo que la ordenación de bytes o texto opaco sigue el momento de creación. Son útiles para la localidad de las bases de datos; el orden de campos heredado de v1 no se ordena naturalmente de forma lexicográfica.

Privacidad de MAC / nodo

v1, v2 y v6 tienen un campo de nodo. Puede ser una dirección MAC o un valor aleatorio. Esta página nunca descubre la MAC del navegador y, cuando la configuración está vacía, usa un nodo multicast aleatorio.

UUIDv8 no es un hash mágico

v8 reserva 122 bits para tu formato; no promete unicidad global. Documenta la carga útil, el versionado y la estrategia contra colisiones junto con tu aplicación.