Générateur UUID v7 - Créer des UUID basés sur le temps Unix

Générez des UUID de version 7 basés sur l'horodatage Unix en ligne. Créez des UUID modernes précis à la milliseconde et ordonnés par temps pour une utilisation optimale dans les bases de données.

Essayez ces exemples :

Qu'est-ce que UUID v7 ?

UUID version 7 est un identifiant de 128 bits (chaîne de 36 caractères) ordonné chronologiquement proposé dans le nouveau projet de spécification UUID. Il se compose de :

  • Horodatage Unix : 48 bits de temps Unix avec une précision en millisecondes
  • Données aléatoires : 74 bits de données aléatoires
  • Bits de version et de variante : 6 bits pour l'identification du format

Exemple de format : 017f22e2-79b0-7cc3-98c4-dc0c0c07398f

Comment fonctionne UUID v7

  1. Obtenir l'horodatage Unix actuel en millisecondes (48 bits)
  2. Générer 74 bits de données aléatoires cryptographiquement fortes
  3. Définir les bits de version à 0111 (version 7)
  4. Définir les bits de variante à 10 (norme RFC 4122)
  5. Assembler sous forme de 32 chiffres hexadécimaux avec des tirets : format 8-4-4-4-12

Avantages et considérations

AvantagesConsidérations
  • Triable lexicographiquement
  • Aucun problème de confidentialité
  • Horodatage Unix intégré
  • Simplifié pour les bases de données
  • Statut de spécification en projet
  • Résolution d'horodatage limitée (ms)
  • Support limité dans les systèmes hérités
  • Ne peut pas remonter avant 1970

Structure de UUID v7

BitsContenu
0-47Horodatage Unix (millisecondes)
48-51Version (0111 pour v7)
52-63Données aléatoires
64-65Variante (10 pour RFC4122)
66-127Données aléatoires

UUID v7 vs. autres versions

VersionBasé surCas d'utilisationConfidentialité
UUID v1Temps + MACIDs ordonnés par temps⚠️ Révèle MAC
UUID v3Espace de noms + MD5IDs déterministes✅ Privé
UUID v4AléatoireIDs aléatoires sécurisés✅ Privé
UUID v5Espace de noms + SHA-1IDs déterministes✅ Privé
UUID v6Temps (réordonné)IDs triables⚠️ Révèle MAC
UUID v7Temps + aléatoireIDs triables✅ Privé

Cas d'utilisation courants

  • Clés primaires de base de données : Index efficaces
  • Systèmes distribués : Ordonnés par temps sans coordination
  • Applications modernes : Identifiants axés sur la confidentialité
  • Microservices : IDs triables entre services
  • Event sourcing : IDs d'événements chronologiques
  • Entrepôts de données : IDs d'analyse ordonnés par temps

Questions fréquemment posées

Quel est l'avantage de UUID v7 par rapport à v1 ou v6 ?

UUID v7 utilise des millisecondes d'horodatage Unix et des données aléatoires plutôt que des adresses MAC, offrant une protection de la confidentialité tout en maintenant la possibilité de tri par heure de génération.

UUID v7 est-il une norme officielle ?

UUID v7 est actuellement une spécification en projet dans le document proposé RFC 4122bis. Ce n'est pas encore une norme RFC officielle, mais il est implémenté dans de nombreuses bibliothèques UUID.

Puis-je extraire l'heure de création d'un UUID v7 ?

Oui. L'horodatage Unix en millisecondes peut être extrait des 48 premiers bits et converti en un format de date et heure standard.

Les UUIDs v7 sont-ils triables par heure de création ?

Oui. UUID v7 est conçu pour être triable lexicographiquement, avec l'horodatage Unix dans les bits les plus significatifs, permettant une comparaison directe des chaînes pour correspondre à l'ordre chronologique.

UUID v7 expose-t-il des informations système ?

Non. Contrairement à v1/v6, UUID v7 n'utilise pas d'adresses MAC. Il combine horodatage et données aléatoires, protégeant la confidentialité tout en maintenant la capacité de tri.

Ressources