ByteCompress

Generador de UUID

Genera UUIDs de Versión 4 aleatorios al instante en tu navegador. Generación individual o masiva usando la API Web Crypto según RFC 9562.

51
FreeClient-sideNo signup

UUID v4 tiene 122 bits aleatorios, dando aproximadamente 5.3×1036 valores posibles. Para tener un 50% de probabilidad de una colisión única, necesitarías generar 2.71×1018 UUIDs. A mil millones por segundo, eso toma 85 años. UUID v4 está estandarizado en RFC 9562 (sucesor de RFC 4122) y es el formato de identificador más ampliamente desplegado en sistemas distribuidos modernos. Este generador utiliza la API crypto.randomUUID() del navegador, respaldada por el CSPRNG del sistema operativo. Genera un UUID o cientos a la vez - sin servidor, sin registro.

Cómo Generar UUIDs

  1. Haz clic en Generar para crear un solo UUID al instante.
  2. Ingresa una cantidad (por ejemplo, 10, 100, 1000) y haz clic en Generar Masivo para múltiples UUIDs a la vez.
  3. Haz clic en cualquier UUID de la lista para copiarlo individualmente, o usa Copiar Todo para copiar la lista completa.
  4. Elige el formato de salida en mayúsculas o minúsculas según lo requiera tu sistema objetivo.
  5. Usa Descargar para exportar como un archivo de texto.

UUID v4 Explicado

Estructura y Formato

Un UUID es 32 caracteres hexadecimales en un patrón de 8-4-4-4-12: xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx. El 4 en el tercer grupo es fijo (versión 4). Los primeros 1-2 bits del cuarto grupo son fijos como 10 en binario (variante RFC 4122). Los 122 bits restantes son generados aleatoriamente. UUID v4 aparece en todos los principales proveedores de nube, sistemas de bases de datos y frameworks web como el formato de identificador predeterminado.

Probabilidad de Colisión

Con 2122 valores posibles (~5.3×1036), generar un UUID v4 duplicado a partir de un CSPRNG adecuado es estadísticamente insignificante para cualquier aplicación del mundo real. Las colisiones de UUID v4 se consideran imposibles para fines prácticos.

Ejemplo

UUID v4 Generado

f47ac10b-58cc-4372-a567-0e02b2c3d479

Mismo UUID en diferentes representaciones

Con guiones:  f47ac10b-58cc-4372-a567-0e02b2c3d479
Mayúsculas:   F47AC10B-58CC-4372-A567-0E02B2C3D479
Sin guiones:  f47ac10b58cc4372a5670e02b2c3d479
Formato URN:  urn:uuid:f47ac10b-58cc-4372-a567-0e02b2c3d479

Versiones de UUID Comparadas

  • v1 - Basado en tiempo, incorpora la dirección MAC de la máquina generadora. Expone información de hardware y tiene patrones secuenciales. Evitar para identificadores sensibles a la seguridad.
  • v3 / v5 - Basado en nombre y determinista: el mismo espacio de nombres + nombre siempre produce el mismo UUID. Útil para identificadores reproducibles.
  • v4 - Totalmente aleatorio (122 bits). Sin información incrustada, sin patrones secuenciales. El tipo más utilizado para identificadores generados por aplicaciones.
  • v7 - UUIDs aleatorios ordenados por tiempo (RFC 9562). Los primeros 48 bits son una marca de tiempo en milisegundos de Unix, lo que hace que los UUIDs v7 sean ordenables por tiempo de creación. Mejor para el rendimiento del índice B-tree de la base de datos que v4.

Casos de Uso Comunes

  • Claves primarias en PostgreSQL (uuid tipo), MySQL (VARCHAR(36)), y MongoDB
  • IDs de sistemas distribuidos donde múltiples servicios crean registros de forma independiente sin una secuencia central
  • Identificadores de recursos API expuestos en URLs públicas (más seguros que enteros secuenciales que permiten ataques de enumeración)
  • Nombres de archivos para activos subidos para prevenir colisiones
  • Claves de idempotencia para solicitudes API para prevenir procesamiento duplicado en reintentos

Para generar contraseñas aleatorias seguras (en lugar de identificadores), usa el Generador de Contraseñas. Para identificadores basados en tiempo que también sean ordenables en la base de datos, busca soporte para UUID v7 en tu controlador de base de datos o ORM.

Preguntas frecuentes

¿Qué tan único es un UUID de Versión 4 en la práctica?

UUID v4 tiene 122 bits de aleatoriedad, lo que da aproximadamente 5.3×1036 valores posibles. Para tener un 50% de probabilidad de una colisión única, necesitarías generar 2.71×1018 UUIDs - a mil millones por segundo, eso tomaría alrededor de 85 años. Para todas las aplicaciones prácticas, las colisiones de UUID v4 se consideran imposibles.

¿Son los UUID generados aquí criptográficamente seguros?

Sí. Esta herramienta utiliza crypto.randomUUID() (o crypto.getRandomValues() como respaldo), ambos respaldados por el CSPRNG del sistema operativo. Los UUID generados son adecuados para usar como tokens de seguridad, identificadores de sesión y otros contextos sensibles a la seguridad.

¿Debería usar UUIDs o enteros autoincrementales como claves primarias de base de datos?

Ambos tienen sus pros y contras. UUID v4 funciona bien en sistemas distribuidos donde múltiples nodos generan IDs de forma independiente, hace que los IDs sean impredecibles en URLs públicas (previniendo ataques de enumeración) y simplifica la fusión de bases de datos. Los enteros autoincrementales son más simples, más pequeños (4-8 bytes frente a 16 bytes) y tienen un mejor rendimiento de índice B-tree para inserciones secuenciales. UUID v7 ofrece un término medio: UUIDs aleatorios que también son ordenables por tiempo.

¿Qué formato tiene un UUID?

Un UUID tiene 32 caracteres hexadecimales en un patrón de 8-4-4-4-12: xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx. La longitud total de la cadena con guiones es de 36 caracteres. PostgreSQL almacena UUIDs como un tipo binario nativo de 16 bytes; MySQL y SQLite generalmente almacenan la cadena de 36 caracteres.

¿Puedo generar UUIDs sin conexión?

Sí. Una vez que se carga esta página, la generación de UUID se realiza completamente utilizando JavaScript local y la API crypto integrada del navegador. No se realizan solicitudes de red durante la generación. La herramienta funciona sin conexión después de la carga inicial de la página.