Generador de UUID / GUID

Genera UUIDs en v1, v4 o v5 — en masa, formateados, con prefijo/sufijo opcionales.

Referencia de Versiones


v4 — Aleatorio

Los UUID versión 4 se generan íntegramente a partir de bytes aleatorios (o pseudoaleatorios). 122 de los 128 bits son aleatorios; los 6 bits restantes codifican la versión (4) y la variante. Al no contener información estructurada, los UUID v4 son la opción más sencilla: no requieren estado compartido, reloj de red ni coordinación de espacio de nombres. La probabilidad de generar un duplicado es astronómicamente baja. Use v4 como valor predeterminado para claves primarias de bases de datos, tokens de sesión y cualquier contexto donde se requiera unicidad pero no ordenación temporal.

Wikipedia — UUID Version 4 (random)

v1 — Basado en Tiempo

Los UUID versión 1 incorporan una marca de tiempo de 60 bits (intervalos de 100 nanosegundos desde el 15 de octubre de 1582, la fecha de la reforma del calendario gregoriano), una secuencia de reloj de 14 bits y un identificador de nodo de 48 bits (históricamente la dirección MAC de la máquina generadora). Como la marca de tiempo es el componente más significativo, los UUID v1 se ordenan cronológicamente al compararse lexicográficamente, una propiedad útil para índices de bases de datos agrupados. La desventaja es la privacidad: un UUID v1 revela la dirección MAC de la máquina y la hora exacta de creación.

Wikipedia — UUID Version 1 (time-based)

v5 — Espacio de Nombres + Nombre (SHA-1)

Los UUID versión 5 son deterministas: dado el mismo UUID de espacio de nombres y la misma cadena de nombre, la salida siempre es idéntica. El algoritmo concatena los bytes del espacio de nombres y el nombre codificado en UTF-8, los procesa con SHA-1 y compacta el resumen de 160 bits en 128 bits. Esto hace que v5 sea ideal para generar identificadores estables y reproducibles. v3 usa MD5 en su lugar; v5 es preferido porque SHA-1 produce menos colisiones.

Wikipedia — UUID Version 5 (name-based)