Decodificador de UUID
Pega un UUID para ver lo que lleva dentro. El decodificador comprueba el formato, indica la versión y la variante y, en los UUID con tiempo (v1, v6 y v7), muestra cuándo se creó el identificador. Las versiones 1 y 6 muestran también su clock sequence y su node.
Funciona en tu navegador: nada de lo que escribes se envía a ningún sitio.
Cómo se usa
- Pega un UUID. Sirven mayúsculas o minúsculas, con o sin guiones, entre llaves o con el prefijo urn:uuid:.
- Lee la versión y la variante y, para v1, v6 y v7, la hora en UTC y en milisegundos Unix.
- Copia la forma canónica en minúsculas o el entero de 128 bits si los necesitas.
Cómo funciona
Un UUID son 128 bits escritos como 32 dígitos hexadecimales. El primer dígito del tercer grupo es la versión; los bits altos del cuarto grupo son la variante (10 en binario para la estructura estándar RFC 9562, es decir, 8, 9, a o b).
- v7: los primeros 12 dígitos son milisegundos desde 1970-01-01 UTC.
- v1: el tiempo está partido en tres trozos guardados empezando por el bajo; el decodificador los une, resta el intervalo entre 1582 y 1970 (122.192.928.000.000.000 intervalos de 100 ns) y muestra el resultado.
- v6: el mismo tiempo de 60 bits guardado empezando por el alto.
- v1 y v6 contienen además un clock sequence de 14 bits y un node de 48 bits.
Ejemplo
017f22e2-79b0-7cc3-98c4-dc0c0c07398f es versión 7 (el tercer grupo empieza por 7) con la variante estándar (9). Sus primeros 12 dígitos, 017f22e279b0, son 1.645.557.742.000 en decimal: milisegundos desde 1970, es decir, 2022-02-22T19:22:22.000Z.
El UUID versión 1 c232ab00-9414-11ec-b3c8-9f6bdeced846 guarda el mismo instante: 2022-02-22T19:22:22.0000000Z, clock sequence 13256 y node 9f:6b:de:ce:d8:46, con el bit multicast activado, así que es aleatorio.
Consejos
- Para nuevas claves de base de datos, prefiere v7: se ordena por fecha de creación y no expone una dirección MAC.
- Un UUID que no pasa la comprobación suele tener un dígito de más o de menos; cuenta 8-4-4-4-12.
- Para crear identificadores nuevos usa el generador de UUID.
Preguntas frecuentes
¿Qué UUID contienen una fecha?
Las versiones 1, 6 y 7. Las versiones 1 y 6 cuentan intervalos de 100 nanosegundos desde el 15 de octubre de 1582; la 6 guarda la misma cuenta en orden inverso para que los identificadores se ordenen por tiempo. La versión 7 empieza con el tiempo Unix en milisegundos. La versión 4 (la más común) es aleatoria y no tiene fecha.
¿Cómo sé la versión de un UUID?
Es el primer dígito del tercer grupo: en 017f22e2-79b0-7cc3-98c4-dc0c0c07398f el tercer grupo 7cc3 empieza por 7, así que es versión 7. El primer dígito del cuarto grupo (8, 9, a o b) indica la variante estándar.
¿Un UUID v1 puede delatar mi ordenador?
Puede. Los últimos 12 dígitos de un UUID versión 1 suelen ser la dirección MAC de la tarjeta de red que lo creó. Los generadores que lo evitan activan el bit multicast y usan bits aleatorios; el decodificador te dice qué caso tienes.
¿La hora es exacta?
Es la hora que escribió el generador. La versión 7 guarda milisegundos; las versiones 1 y 6, pasos de 100 nanosegundos, mostrados con siete decimales de segundo. Los generadores pueden redondear o desplazar el reloj, así que tómala como la hora de creación según el reloj de esa máquina.
¿Qué diferencia hay entre UUID y GUID?
En la práctica ninguna: GUID es el nombre que usa Microsoft para el mismo identificador de 128 bits. Los GUID antiguos de Microsoft podían usar su propia variante, que el decodificador marca como Microsoft.