🆔 Outils UUID

Kit complet de génération et validation UUID/GUID supportant toutes les versions RFC 4122 plus les alternatives modernes comme ULID pour les systèmes distribués.

Générateur UUID v4

Générer des identifiants UUID v4 cryptographiquement aléatoires parfaits pour clés primaires de base de données et tokens de session sans exposer d'informations système.

Générateur UUID v1

Créer des identifiants UUID v1 basés sur horodatage qui intègrent temps de création et adresse MAC pour systèmes distribués nécessitant traçabilité.

Générateur UUID v3

Générer des identifiants UUID v3 déterministes utilisant hachage MD5 de namespace et nom pour IDs cohérents depuis même entrée.

Générateur UUID v5

Créer des identifiants UUID v5 sécurisés basés sur nom utilisant hachage SHA-1 pour meilleure résistance aux collisions que v3 depuis noms DNS ou URLs.

Générateur UUID v6

Générer des identifiants UUID v6 modernes qui combinent tri par horodatage avec performance d'indexation base de données améliorée.

Générateur UUID v7

Créer des identifiants UUID v7 de pointe utilisant horodatages Unix epoch avec précision milliseconde pour systèmes distribués modernes.

Générateur ULID

Générer des Identifiants Uniques Universels Triables Lexicographiquement avec encodage 26 caractères pour alternatives sûres URL et triables aux UUID.

Générateur UUID Court

Créer des identifiants UUID courts compacts utilisant encodage base62 pour réduire longueur de 36 à 22 caractères pour codes QR et URLs.

Générateur UUID Nil

Générer l'UUID Nil RFC 4122 (tous zéros) représentant valeurs UUID vides ou nulles pour initialisation base de données et états par défaut.

Décodeur et Validateur UUID

Analyser et valider UUID de toute version, extrayant informations intégrées comme horodatages, numéros de version et détails de variante pour débogage.

Générateur UUID en Masse

Générer des milliers d'UUID simultanément pour semence base de données, tests de charge et opérations données massives avec capacités d'export.

Qu'est-ce qu'un UUID ?

UUID (Identifiant Universel Unique) est un format d'identifiant standardisé conçu pour être unique au niveau mondial dans l'espace et le temps. Les UUIDs sont des valeurs de 128 bits généralement représentées par 32 chiffres hexadécimaux, affichés en cinq groupes séparés par des tirets : b2c3d4e5-f6a7-4890-b234-56789abcdef0.

Les UUIDs sont définis par la norme RFC 9562 (qui remplace l'ancienne RFC 4122) et sont utilisés dans les plateformes informatiques pour identifier des informations sans nécessiter d'enregistrement ou de coordination centralisée.

Format d'un UUID

Tous les UUIDs partagent un format commun composé de 36 caractères (32 chiffres hexadécimaux plus 4 tirets) organisés selon le modèle :

xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx

Où :

  • x est un chiffre hexadécimal quelconque (0-9, a-f)
  • M indique la version de l'UUID (1-7)
  • N indique la variante de l'UUID (typiquement 8, 9, A ou B pour les UUIDs modernes)

Comparaison des versions d'UUID

VersionNomMéthode de GénérationTrié par TempsCas d'Utilisation
UUID v1HorodatageHorodatage actuel + ID de nœud (MAC)Oui (partiellement)Enregistrements, systèmes distribués
UUID v3Basé sur le Nom (MD5)Hash MD5 de l'espace de noms + nomNonIDs cohérents pour la même entrée
UUID v4AléatoireNombres aléatoires ou pseudo-aléatoiresNonUsage général, le plus courant
UUID v5Basé sur le Nom (SHA-1)Hash SHA-1 de l'espace de noms + nomNonIDs cohérents avec un hash plus fort
UUID v6Horodatage RéordonnéHorodatage (ordonné pour le tri)OuiClés de base de données, enregistrements triés par temps
UUID v7Horodatage UnixHorodatage Unix + données aléatoiresOuiIdentifiants modernes triables
Nil UUIDUUID NulTout à zéroN/AValeur spéciale, marqueur non initialisé

Avantages des UUIDs

  • Pas de Coordination Requise : Générer des IDs sans coordination centrale
  • Unicité Globale : Probabilité extrêmement faible de collision
  • Longueur Fixe : Représentation cohérente de 36 caractères
  • Multi-plateforme : Compatible avec pratiquement tous les langages de programmation
  • Polyvalent : Différentes versions pour différents cas d'utilisation

Alternatives non standard aux UUIDs

Type d'IDDescriptionAvantagesInconvénients
GUIDImplémentation UUID de MicrosoftÉquivalent fonctionnel à UUIDQuelques différences d'implémentation sur les anciens systèmes
ULIDIdentifiant Universel Unique Ordonnable LexicographiquementOrdonnable lexicographiquement, horodatage en premier, insensible à la cassePlus récent, adoption moins généralisée
Snowflake IDSystème d'ID distribué de TwitterTriable par temps, compact (64 bits)Nécessite une coordination centrale
CUID/CUID2IDs résistants aux collisionsCourts, adaptés à la génération côté clientPas une norme officielle
Nano IDGénérateur de chaînes uniques petites, sécurisées et adaptées aux URLPlus petit qu'un UUID, alphabet configurableNon standardisé
Short UUIDCodage plus court des UUIDs standardsReprésentation plus compacteNécessite une conversion vers/depuis UUID standard
Nil UUIDUUID avec tous les bits à zéroSignification sémantique spécialeNon unique (utilisé comme valeur spéciale)
Minecraft UUIDUUIDs avec ou sans tiretsCompatible avec les UUIDs standardsDifférences de format uniquement

Applications Pratiques

  • Clés Primaires de Base de Données : Surtout dans les bases de données distribuées ou répliquées
  • Systèmes Distribués : Identifier des entités dans plusieurs systèmes
  • Applications Web : Identifiants de session, suivi des utilisateurs anonymes
  • Gestion de Contenus : Identifiants de documents et de médias
  • APIs : Identifiants de requêtes et de transactions pour le suivi et le débogage
  • Internet des Objets : Identification des appareils sans enregistrement central
  • Synchronisation de Données : Identifier des enregistrements dans plusieurs magasins de données
  • Licences de Logiciels : Clés uniques de produit ou de licence