Ir al contenido principal

Generar valores UUID v4 aleatorios

Un UUID versión 4 es un valor de 128 bits en el que 122 bits proceden de una fuente aleatoria criptográficamente segura. Los 6 bits restantes indican la versión y la variante RFC; por eso todo UUID v4 tiene un 4 al inicio del tercer grupo.

Ejemplo resuelto

Bytes aleatorios de entrada
9d 41 7c 02 e8 5b 13 f6 2a 7e c1 94 06 d3 b8 5f
Resultado
9d417c02-e85b-43f6-aa7e-c19406d3b85f
UUID generadosProbabilidad de al menos un duplicado
10⁶≈ 9,4 × 10⁻²⁶
10⁹≈ 9,4 × 10⁻²⁰
10¹²≈ 9,4 × 10⁻¹⁴
10¹⁵≈ 9,4 × 10⁻⁸

UUID necesarios para un 50 % de probabilidad de duplicado: ≈ 2,71 × 10¹⁸

Cómo funciona

  • El generador llena 16 bytes con datos aleatorios seguros y luego fija el nibble alto del byte 6 en 4 (versión) y los dos bits superiores del byte 8 en 10 (variante). Así, el tercer grupo empieza por 4 y el cuarto por 8, 9, a o b.
  • Con 2¹²² valores posibles, la aproximación del cumpleaños p ≈ 1 − e^(−n²/2¹²³) da la probabilidad de que n UUID aleatorios contengan al menos un duplicado.
  • Un UUID v4 no revela marcas de tiempo ni datos del equipo. Úsalo como identificador, no como contraseña ni como secreto de autenticación.
Versión de UUID

Genere de 1 a 100 UUIDs a la vez

Acerca de los UUIDs

UUID v1: UUIDs basados en tiempo que incluyen una marca de tiempo y la dirección MAC de la computadora que genera el UUID. Útil cuando necesita saber cuándo se creó el UUID.

UUID v4: UUIDs generados aleatoriamente. Esta es la versión más comúnmente utilizada y proporciona buena unicidad con fuga mínima de información.

UUID v5: UUIDs basados en nombres usando hash SHA-1. Dado el mismo espacio de nombres y nombre, siempre obtendrá el mismo UUID. Útil para generación determinística de UUID.

Más guías de UUID