Generateur d’UUID

Chaque systeme distribue a besoin d’identifiants qui ne se heurteront jamais, quel que soit le nombre de serveurs qui les generent. Les cles de base de donnees auto-incrementees cessent d’etre fiables des que deux services creent des enregistrements independamment. Recrire une logique de generation d’UUID a chaque nouveau projet ajoute du code repetitif. Recuperer des identifiants un par un depuis un script est aussi trop lent lorsqu’un jeu de tests en reclame des centaines.

Ce generateur d’UUID regle cela instantanement en produisant des identifiants conformes a la RFC 4122 dans les versions 1, 3, 4, 5 et 7, ainsi que des UUID Nil et des ULID. Choisissez une version, indiquez la quantite voulue et generez des valeurs a l’unite ou par lot complet. Chaque UUID est cree avec un generateur de nombres aleatoires cryptographiquement sur, donc rien n’est jamais envoye a un serveur. Copiez les resultats, telechargez-les en fichier ou inserez-les directement dans votre code, votre base de donnees ou vos jeux de test.

Generation d’UUID

Chaque systeme distribue a besoin d’identifiants qui ne se heurteront jamais, quel que soit le nombre de serveurs qui les generent. Les cles de base de donnees auto-incrementees cessent d’etre fiables des que deux services creent des enregistrements independamment. Recrire une logique de generation d’UUID a chaque nouveau projet ajoute du code repetitif. Recuperer des identifiants un par un depuis un script est aussi trop lent lorsqu’un jeu de tests en reclame des centaines.

Type d’identifiant
Fichier texte (.txt)
Options de format
0 caractères
0 element(s) dans ce lot

Decoder / Inspecter

Qu’est-ce qu’un generateur d’UUID ?

Un generateur d’UUID est un outil qui cree des identifiants universellement uniques, des valeurs de 128 bits utilisees pour etiqueter des donnees sans registre central. Chaque identifiant est concu de sorte que la probabilite que deux systemes produisent la meme valeur soit proche de zero. Les developpeurs y ont recours chaque fois qu’un identifiant doit etre unique sur plusieurs serveurs, bases de donnees ou applications fonctionnant independamment.

Contrairement aux ID sequentiels, un UUID ne depend ni d’un compteur de base de donnees ni d’une coordination entre services. Cela rend la generation d’UUID ideale pour les microservices, les applications offline-first et tout systeme ou plusieurs noeuds creent des enregistrements en meme temps. Les UUID sont normalises sous RFC 4122, de sorte que les outils et bibliotheques de differents langages produisent des valeurs compatibles.

Comment utiliser ce generateur d’UUID en ligne

Generer un UUID avec ce generateur d’UUID en ligne ne demande que quelques clics et tout le processus s’execute dans votre navigateur. Choisissez une version dans le selecteur : v1, v3, v4, v5, v7, Nil ou ULID. Indiquez la quantite voulue, de 1 a 1 000 par lot. Cliquez sur Generer et vos identifiants apparaissent instantanement, prets a etre copies.

Les options de format s’appliquent a toutes les versions : majuscules ou minuscules, avec ou sans tirets, et avec des accolades si votre systeme les attend. Copiez un seul resultat, copiez le lot complet ou telechargez-le en fichier `.txt`, `.json` ou `.csv`. Aucune inscription, installation ni configuration n’est necessaire avant de commencer.

  • Choisissez une version d’UUID : v1, v3, v4, v5, v7, Nil ou ULID.
  • Pour v3 ou v5, selectionnez un espace de noms et saisissez un nom (voir ci-dessous).
  • Indiquez combien d’identifiants il vous faut, jusqu’a 1 000.
  • Definissez le format : casse, tirets et accolades.
  • Cliquez sur Generer, puis copiez les resultats ou telechargez-les en TXT, JSON ou CSV.

Generer des UUID bases sur un espace de noms (v3 et v5)

Les versions 3 et 5 ont besoin d’un espace de noms et d’un nom au lieu d’une alea pur, car elles sont construites pour etre deterministes. Choisissez un espace de noms standard RFC 4122, DNS, URL, OID ou X.500, ou fournissez votre propre UUID d’espace de noms. Saisissez un nom et l’outil combine les deux avec MD5 pour v3 ou SHA-1 pour v5. Le meme espace de noms et le meme nom produiront toujours le meme UUID, et c’est le but. Des systemes independants peuvent ainsi generer des identifiants identiques pour la meme entree sans jamais se coordonner directement.

Decoder un UUID ou ULID existant

Collez n’importe quel UUID ou ULID dans le panneau de decodage de ce generateur d’UUID pour l’inspecter sans en creer un nouveau. L’outil identifie instantanement sa version et sa variante. Pour les valeurs v1, v7 et ULID, il decode aussi l’horodatage integre en date et heure lisibles.

C’est utile pour verifier quand un enregistrement a ete cree, ou pour confirmer qu’une API tierce a renvoye un identifiant valide. Cela aide aussi a confirmer la version reelle d’un UUID inconnu.

Comprendre les versions d’UUID

UUID signifie Universally Unique Identifier, et la specification definit plusieurs versions, chacune construite selon une methode differente. Le numero de version est integre dans l’identifiant lui-meme, donc tout UUID revele comment il a ete genere. Ce generateur prend en charge toutes les versions majeures, avec v4 comme choix par defaut pour un usage general.

Contrairement aux ID sequentiels, un UUID ne depend ni d’un compteur de base de donnees ni d’une coordination entre services. Cela rend la generation d’UUID ideale pour les microservices, les applications offline-first et tout systeme ou plusieurs noeuds creent des enregistrements en meme temps. Les UUID sont normalises sous RFC 4122, de sorte que les outils et bibliotheques de differents langages produisent des valeurs compatibles.

Les UUID de version 1 combinent un horodatage avec l’adresse MAC de l’appareil qui les genere. Cette methode peut exposer des informations materielle, donc elle est moins utilisee aujourd’hui. Les UUID de version 4 s’appuient sur des nombres aleatoires ou pseudo-aleatoires, ce qui evite totalement ce compromis. Les UUID de version 5 produisent une valeur deterministe a partir d’un espace de noms et d’un nom via SHA-1, de maniere similaire a la sortie du <hashLink>Generateur de hash</hashLink>.

Version
Type
Ideal pour
Genere par cet outil
v1Base sur le tempsIdentifiants ordonnes lorsque l’exposition de l’horodatage est acceptableOui
v3Base sur le nom (MD5)Identifiants deterministes a partir d’un espace de noms et d’un nomOui
v4AleatoireIdentifiants generalistes, cles de base de donnees, jetonsOui (par defaut)
v5Base sur le nom (SHA-1)Identifiants deterministes, reproductibles a partir d’un nom et d’un espace de nomsOui
v7Ordonne dans le tempsCles de base de donnees triables dans les systemes distribuesOui
NilValeur de remplissage tout zeroValeurs d’identifiant vides ou explicitement non definiesOui
ULIDOrdonne dans le temps, Base32Identifiants compacts, triables et compatibles URLOui

A quel point les UUID de ce generateur sont-ils uniques ?

Les UUID de version 4 contiennent 122 bits aleatoires, car quelques bits sont fixes pour indiquer la version et la variante. Cela laisse un nombre immense de combinaisons possibles, environ 5,3 undecillions. La probabilite que deux UUID aleatoires entrent en collision est si faible qu’elle est consideree comme nulle en pratique.

Aucune autorite centrale ne suit les UUID deja emis. Ce n’est pas necessaire pour que les mathematiques tiennent. Meme en generant un milliard d’UUID chaque seconde pendant cent ans, on n’utiliserait qu’une fraction minuscule des valeurs possibles. Les versions deterministes comme v3 et v5 fonctionnent autrement, puisque le meme espace de noms et le meme nom sont censes se repeter volontairement.

Dans un meme lot, les valeurs v1, v4 et v7 sont comparees automatiquement entre elles. Les doublons sont regeneres avant l’affichage des resultats, vous ne verrez donc pas de repetition accidentelle. Les lots de version 3 et 5 sautent cette etape par conception, car le meme espace de noms et le meme nom sont faits pour se repeter. Un lot d’UUID Nil se repete aussi, puisqu’un UUID Nil n’a qu’une seule valeur possible : tout zero.

Les lots ULID utilisent une autre protection. Chaque valeur combine un horodatage a la milliseconde et un composant aleatoire monotone. Cela rend les collisions peu probables meme a l’interieur d’un meme lot.

Cas d’usage courants d’un generateur d’UUID

Ce type d’outil est essentiel partout ou des systemes independants doivent creer des identifiants sans se consulter d’abord. Les cles primaires de base de donnees sont un cas d’usage courant, surtout dans les bases distribuees ou partitionnees. Les versions triables comme v7 et ULID conviennent bien aux bases qui ont aussi besoin d’un ordre chronologique, car les UUID aleatoires standards ne peuvent pas l’offrir.

Les jetons de session d’API et les codes d’authentification s’appuient eux aussi sur les UUID pour leur imprevisibilite, comme les chaines aleatoires du <passwordLink>Generateur de mots de passe</passwordLink>.

Les microservices utilisent les UUID pour etiqueter evenements, messages et transactions afin de pouvoir les suivre entre services independants. Les jetons d’authentification comme JWT utilisent souvent un UUID comme revendication jti, et le <jwtLink>Decodeur et encodeur JWT</jwtLink> peut inspecter cette revendication directement. Les systemes de fichiers et le stockage objet utilisent des UUID pour nommer les fichiers envoyes sans risque de collision. Les suites de test emploient cet outil pour creer des donnees factices realistes et non repetitives dans les environnements QA.

UUID vs GUID : quelle difference ?

UUID et GUID designent le meme concept sous-jacent : un identifiant 128 bits concu pour etre unique sans coordination centrale. GUID signifie Globally Unique Identifier et c’est le terme utilise par Microsoft dans Windows, .NET et SQL Server. UUID est le terme employe par la specification officielle RFC 4122 et sur la plupart des autres plateformes.

En pratique, les deux formats sont interchangeables et suivent la meme structure. Un GUID genere sur un systeme Windows sera valide comme UUID partout ailleurs. La seule difference reelle est la convention de nommage, pas l’algorithme ni la structure de donnees.

Comprendre le format UUID

Un UUID s’affiche sous la forme de 32 caracteres hexadecimaux repartis en cinq groupes separes par des tirets. Le schema suit une structure 8-4-4-4-12, par exemple 550e8400-e29b-41d4-a716-446655440000. Deux de ces caracteres sont reserves pour encoder la version et la variante de l’UUID.

Le chiffre de version se trouve au debut du troisieme groupe. Un UUID avec un 4 a cet endroit est un UUID de version 4. Les bits de variante se trouvent au debut du quatrieme groupe et confirment que l’identifiant suit le format RFC 4122. Un ULID se presente differemment : 26 caracteres en Base32 de Crockford, sans tirets et sans chiffre de version visible.

Ce generateur d’UUID est-il sur et prive ?

Chaque UUID produit par ce generateur est cree directement dans votre navigateur a l’aide d’une source aleatoire cryptographiquement sure. Aucun UUID, ni aucune donnee liee a votre session, n’est jamais transmis a un serveur. Cela rend l’outil adapte aux identifiants internes, sensibles ou proches de la production.

Comme la generation s’effectue cote client, recharger ou fermer la page ne laisse aucune trace de ce qui a ete cree. Aucun compte, suivi ni stockage n’est associe a vos UUID generes. Vous pouvez produire d’autres lots aussi souvent que necessaire, dans le meme onglet du navigateur.

Pour les flux de travail qui ont aussi besoin d’integrite des messages, le <hmacLink>Generateur HMAC</hmacLink> offre un moyen complementaire de verifier que les donnees n’ont pas ete modifiees.

Exemples de generateur d’UUID

Les exemples suivants montrent comment la meme sortie du generateur s’applique a differents cas concrets. Chacun part d’un UUID produit par cet outil et montre ou il s’insere dans un systeme reel. Examiner quelques scenarios concrets aide a comprendre comment un UUID se comporte une fois sorti du generateur.

  • Cle primaire de base de donnees:a1b2c3d4-e5f6-4789-a0bc-def012345678inseree comme cle primaire d’un nouvel enregistrement client, sans dependre d’un compteur auto-incremente.
  • Jeton de session API:f47ac10b-58cc-4372-a567-0e02b2c3d479attribue a un utilisateur connecte a la place d’un identifiant de session sequentiel et previsible.
  • ID d’evenement triable (v7):018f4b3c-7a2e-7c91-b8d4-2f6a9e1c5d3battache a un evenement de file de messages, tout en restant dans l’ordre chronologique entre les services.
  • Nom de fichier televerse:c4a760a8-dbcf-4a91-8e97-3b4a1e6c8b2f.jpgutilise comme nom de fichier en stockage objet pour eviter d’ecraser des fichiers portant le meme nom.
  • Entree de journal d’activite (ULID):01ARZ3NDEKTSV4RRFFQ69G5FAVutilisee comme identifiant compact et triable pour une ligne de journal, plus court et plus compatible URL qu’un UUID standard.
  • Alimentation de donnees de test:un lot de 500 UUID generes en un clic pour remplir une base QA avec des identifiants realistes et non sequentiels.

Chaque scenario ci-dessus utilise exactement le meme format de sortie, donc aucune conversion ni reformatage n’est necessaire entre les cas d’usage. Que l’identifiant finisse dans une colonne de base de donnees, une URL ou un nom de fichier, il fonctionne sans modification.

Cette constance explique pourquoi les equipes standardisent l’usage des UUID sur toute la pile, souvent aux cotes d’outils comme l’<base64Link>Encodeur Base64</base64Link>.

Questions frequentes

Foire aux questions