fixmint
ES

UUID v4 o v7: cuál usar y por qué importa

Por · · actualizado el 8 de noviembre de 2026 · 5 min de lectura

Usa UUID v4 cuando necesites un identificador aleatorio y nada más. Usa UUID v7 cuando el identificador vaya a ser una clave de base de datos, o cuando quieras que los ID se ordenen por fecha de creación. Ambos tienen 128 bits y se escriben con la misma forma de 36 caracteres, así que la diferencia está en cómo se organizan los bits. El generador de UUID de abajo crea cualquiera de las dos versiones, de uno en uno o hasta 500 a la vez, directamente en tu navegador.

Generador de UUIDNecesito IDs únicos para mi códigoÚsalo gratis

Cómo es un UUID

Un UUID, o identificador único universal, es un número de 128 bits escrito como 32 dígitos hexadecimales en cinco grupos: 8, 4, 4, 4 y 12 dígitos, separados por guiones. Un ejemplo es 3f2b8c1e-6d4a-4f7b-9c2e-8a1d5e0b7f63.

Hay dos partes del número que son fijas. Cuatro bits indican la versión, así que el tercer grupo empieza por 4 en v4 o por 7 en v7. Dos bits indican la variante, así que el cuarto grupo empieza por 8, 9, a o b. El resto contiene el propio identificador. Por los bits de versión y de variante, un UUID v4 tiene 122 bits aleatorios, no 128.

UUID v4: aleatorio

Un UUID v4 es aleatorio salvo esos bits fijos. Sus 122 bits aleatorios hacen que repetir un valor sea extremadamente improbable. Supongamos que generas mil millones de UUID v4. La probabilidad de que dos coincidan es aproximadamente n al cuadrado dividido por el doble del número de valores posibles, lo que da unos 10 elevado a menos 19. Dicho de otro modo, las colisiones no son algo para lo que debas diseñar.

Esta estimación supone que el generador toma sus bits de una fuente de aleatoriedad criptográfica. Un generador predecible invalidaría esa estimación. Esta herramienta usa la fuente de aleatoriedad criptográfica del navegador, a través de crypto.randomUUID o crypto.getRandomValues.

UUID v7: primero el tiempo

La RFC 9562 define v7. Sus primeros 48 bits contienen la hora Unix en milisegundos, así que un ID creado más tarde tiene una primera parte mayor que uno creado antes. Después vienen los bits de versión, luego bits aleatorios, los bits de variante y más bits aleatorios. Parte del espacio aleatorio puede contener un contador, que mantiene el orden de los IDs cuando se generan varios dentro del mismo milisegundo.

Como el tiempo va primero, ordenar los IDs v7 como texto, en una misma capitalización, los ordena por fecha de creación, con precisión de milisegundos. Esto funciona porque los dígitos hexadecimales tienen un ancho fijo y la hora está en los caracteres iniciales.

El tiempo también es visible. Cualquiera que lea un UUID v7 puede ver aproximadamente cuándo se creó. Puedes comprobarlo tú mismo con el campo Inspeccionar del generador de UUID, que convierte los primeros 48 bits de nuevo en fecha y hora.

Por qué v7 encaja bien con los índices de bases de datos

Un índice de base de datos suele ser un B-tree, una estructura que se mantiene ordenada por clave. Cuando la clave es aleatoria, como en v4, cada nueva fila cae en un lugar aleatorio del índice. La base de datos tiene entonces que escribir en muchas partes distintas del índice, lo que provoca más divisiones de páginas y más fallos de caché. En una tabla grande, ese trabajo se acumula.

Una clave v7 es mayor que casi todas las claves que ya están en el índice, porque su parte temporal crece. Las filas nuevas se añaden cerca del final del índice, igual que lo haría un número autoincremental. Las páginas recientes del índice se quedan en memoria y las escrituras son más eficientes. La diferencia se nota sobre todo en tablas grandes que crecen constantemente, y es difícil de apreciar en una tabla pequeña.

Elegir entre v4 y v7

  • Claves primarias de bases de datos, o cualquier tabla que crezca con el tiempo: v7. El índice se mantiene ordenado.
  • Registros, eventos o mensajes que sueles ordenar por fecha: v7, porque el propio ID lleva el orden.
  • IDs públicos en los que la fecha de creación debe quedar oculta: v4. Un ID v7 revela cuándo se creó.
  • Muchos dispositivos con relojes poco fiables: tanto v4 como v7 siguen siendo únicos, porque los bits aleatorios hacen ese trabajo. Solo el orden de los v7 depende de que los relojes sean correctos.

Ambas versiones son estándar, pero algunas bibliotecas antiguas solo conocen v4. La RFC 4122 describió durante muchos años las versiones de 1 a 5. La RFC 9562 se publicó en mayo de 2024, sustituye a la RFC 4122 y define las versiones 6, 7 y 8. Antes de depender de una biblioteca, comprueba que admita v7.

Almacenar UUID

Un UUID escrito como texto ocupa 36 caracteres. Sus 16 bytes pueden guardarse en formato binario, que ocupa mucho menos espacio. Muchas bases de datos tienen un tipo UUID nativo o una columna binaria de 16 bytes para este fin, y compara más rápido que el texto.

Elige un formato y mantenlo. Mayúsculas, minúsculas, guiones y llaves son, para una persona, el mismo UUID, pero una base de datos o una comparación de cadenas puede tratarlos como valores distintos. Las opciones del generador para mayúsculas, sin guiones y con llaves existen para los sistemas que necesitan esos formatos.

Nunca uses un UUID como secreto

Un UUID es un identificador, no una contraseña, un token de sesión ni una clave de acceso. Está diseñado para ser único, no para ser imposible de adivinar. Además, un UUID v7 lleva su fecha de creación. Y los identificadores acaban pegados en enlaces, registros, correos y capturas de pantalla, donde cualquiera que los vea puede reutilizarlos.

El control de acceso debe estar en el servidor. Quien conozca un ID no debería tener acceso automático a ver o modificar el registro al que hace referencia. Para contraseñas, frases de contraseña o tokens, usa un generador pensado para secretos. El generador de contraseñas crea contraseñas aleatorias o frases de palabras en tu dispositivo, con aleatoriedad segura, y estima su fortaleza. Para entender por qué importan la longitud y la aleatoriedad, lee contraseñas seguras y entropía.

Cómo usar la herramienta

  1. Elige la versión 4 para IDs aleatorios, o la versión 7 para IDs que se ordenen por tiempo.
  2. Indica la cantidad, de 1 a 500 a la vez.
  3. Marca mayúsculas, sin guiones o sin llaves si tu código necesita un formato concreto.
  4. Copia todos, o descarga la lista como archivo .txt.
  5. Pega cualquier UUID en Inspeccionar para leer su versión, su variante y, en el caso de v7, la hora incluida en él.

Respuestas rápidas

¿Es único un UUID v4? En la práctica, sí. Sus 122 bits aleatorios hacen que repetir un valor sea tan improbable que no necesitas comprobarlo.

¿Debo usar v7 para todo? No siempre. Usa v7 para claves de bases de datos y para cualquier cosa que se ordene por tiempo. Usa v4 cuando la fecha de creación deba quedar oculta.

¿Puedo usar un UUID como contraseña? No. Es un identificador. Usa un generador de contraseñas para cualquier cosa que deba mantenerse en secreto.

¿La herramienta envía los IDs a algún sitio? No. Los IDs se generan y se muestran en tu navegador, y no se envían a ningún servidor.

Traducido del Original en inglés con ayuda de IA.

Comentarios

    Aún no hay comentarios. Sé el primero.

    Tu valoración (opcional)

    Tu correo nunca se muestra ni se guarda.

    Portada de Open Data for AGI - Why Public, Free, and Open Datasets MatterOpen Data for AGI - Why Public, Free, and Open Datasets Matter

    Por qué los conjuntos de datos públicos, gratuitos y abiertos darán forma a la inteligencia artificial general tanto como lo hacen los algoritmos y la capacidad de cómputo.

    $4.99Consíguelo en GumroadEn inglés