À propos du générateur d'UUID
Ce générateur d'UUID gratuit crée des UUID de version 4 aléatoires (aussi appelés GUID) — des identifiants universellement uniques utilisés dans les bases de données, les API, les fichiers de journalisation et les systèmes distribués. Générez-en un seul ou tout un lot, et copiez-les d'un clic.
Ils sont générés dans votre navigateur à l'aide de crypto.getRandomValues, la même source aléatoire cryptographiquement sûre que celle utilisée pour les clés de chiffrement. Rien n'est demandé à un serveur, donc chaque UUID que vous voyez ici n'a existé nulle part ailleurs.
Ce qu'est un UUID
Un UUID est un nombre de 128 bits, écrit sous forme de 32 chiffres hexadécimaux répartis en cinq groupes séparés par des traits d'union :
f47ac10b-58cc-4372-a567-0e02b2c3d479
Le découpage est 8-4-4-4-12, et la longueur totale est toujours de 36 caractères, traits d'union compris.
Son intérêt est de produire un identifiant unique sans avoir à demander à personne. Une base de données peut distribuer 1, 2, 3… parce qu'elle est la seule autorité sur ce qui vient ensuite. Mais quand deux téléphones créent des enregistrements hors ligne, ou que douze serveurs insèrent des lignes en même temps, ou que vous avez besoin d'un identifiant *avant* que la ligne n'existe, il n'y a aucune autorité à interroger. Un UUID résout cela en étant si grand et si aléatoire qu'une collision ne mérite pas qu'on y pense.
La version 4, et les deux chiffres qui la trahissent
Il existe plusieurs versions d'UUID. La version 4 est la version aléatoire, et c'est ce que presque tout le monde entend par « un UUID ».
Vous pouvez lire la version directement dans la chaîne. Dans f47ac10b-58cc-4372-a567-0e02b2c3d479 :
- Le premier chiffre du troisième groupe est la version — ici un 4
- Le premier chiffre du quatrième groupe est la variante — toujours 8, 9, a ou b
Ces deux positions sont fixes, ce qui laisse 122 bits de véritable hasard au lieu de 128.
Les autres versions que vous pourrez rencontrer : v1 encode l'horodatage et l'adresse MAC de la machine, ce qui la rend triable mais révèle où et quand elle a été créée. v7, normalisée en 2024, est la réponse moderne — un horodatage en tête suivi de l'aléatoire, de sorte que les identifiants se trient par date de création sans divulguer de détails matériels. Si vous choisissez aujourd'hui et que l'ordre en base de données compte, la v7 mérite votre attention.
Sont-ils vraiment uniques ?
Ce n'est pas garanti, mais les nombres sont suffisamment absurdes pour que cela n'ait aucune importance.
122 bits aléatoires donnent environ 5,3 × 10³⁶ valeurs possibles. Pour atteindre 50 % de chances d'une seule collision, il faudrait générer à peu près 2,7 × 10¹⁸ UUID — 2,7 trillions.
Concrètement : en générant un milliard d'UUID chaque seconde, il faudrait environ 85 ans pour atteindre 50 % de chances d'un seul doublon dans l'ensemble. Pour toute application réelle, le risque est plus faible que celui de voir votre stockage corrompre silencieusement la valeur.
La seule vraie réserve concerne la qualité de l'aléatoire. Un UUID issu d'une source aléatoire faible n'est pas unique de la manière que les mathématiques promettent — il y a eu de vrais bogues où un générateur prévisible produisait des répétitions. Cet outil utilise le générateur cryptographique du navigateur, pas Math.random().
Un UUID n'est pas un secret
Cela mérite d'être dit clairement, car on se trompe dans les deux sens.
Un UUID v4 est imprévisible, il est donc raisonnable de s'en servir comme URL indevinable — un lien de partage ou un jeton de réinitialisation de mot de passe. Mais il n'est pas conçu comme une primitive de sécurité, il ne comporte aucune expiration, et il est fréquemment journalisé, mis en cache, envoyé aux outils d'analyse et collé dans des messageries. Considérez-le comme un identifiant qui se trouve être difficile à deviner, et non comme une information d'authentification.
Et l'inverse : ne supposez pas qu'un UUID cache quoi que ce soit. Un UUID v1 contient un horodatage et une adresse MAC en clair. Si vous avez hérité d'identifiants et qu'ils commencent par une version 1, ils indiquent à quiconque les lit quand et où ils ont été créés.
Où vous les utiliserez
- Clés primaires de base de données — surtout quand les lignes sont créées sur plusieurs machines en même temps
- Applications offline-first — un téléphone peut créer des enregistrements sans connexion et se synchroniser plus tard sans renumérotation
- Identifiants de requêtes d'API — suivre une requête unique à travers de nombreux services dans les journaux
- Noms de fichiers et de téléversements — éviter les collisions sans faire confiance au nom de fichier de l'utilisateur
- Déduplication de messages — une clé d'idempotence pour qu'une requête rejouée ne soit pas traitée deux fois
- Liens de partage — une URL indevinable pour un document ou une invitation
- Jeux de données de test — des valeurs uniques qui n'entreront jamais en conflit avec des données réelles
Comment l'utiliser
- Choisissez combien il vous en faut
- Générez — de nouveaux UUID apparaissent
- Copiez — copiez un seul UUID ou toute la liste
Bon à savoir
- La casse n'a pas d'importance, mais les minuscules sont la convention et ce que produit cet outil. Certains systèmes comparent les UUID comme de simples chaînes, où A et a diffèrent — soyez donc cohérent.
- Les traits d'union sont de la mise en forme. Beaucoup de systèmes stockent les 32 chiffres sans traits d'union, ou sous forme de 16 octets bruts. Même valeur, présentation différente.
- Comme clé de base de données, ils ont un coût. Un UUID pèse 16 octets contre 4 ou 8 pour un entier, et des valeurs aléatoires dispersent les écritures dans un index en arbre B au lieu de les ajouter à la fin. Sur une grande table à forte charge d'écriture, c'est mesurable — et c'est exactement le problème que la v7 a été conçue pour résoudre.
- Ne les utilisez pas comme mots de passe. Ils sont imprévisibles, mais ce sont des identifiants, et ils finissent dans les journaux et l'historique du navigateur.
- « GUID » est le nom que Microsoft donne à la même chose. Dans .NET et SQL Server vous verrez GUID ; c'est la même valeur de 128 bits.
- L'UUID nil n'est que des zéros — 00000000-0000-0000-0000-000000000000. Il signifie généralement « aucun » ou « non défini », il vaut donc la peine de le reconnaître.
Questions fréquentes
Qu'est-ce qu'un UUID et à quoi sert-il ?
Un UUID est un identifiant de 128 bits écrit sur 36 caractères, comme f47ac10b-58cc-4372-a567-0e02b2c3d479. Son but est de permettre à n'importe quoi de produire un identifiant unique par lui-même, sans consulter de compteur central. Cela compte quand des enregistrements sont créés sur plusieurs serveurs à la fois, sur un téléphone hors ligne, ou avant même que la ligne existe dans la base de données.
Les UUID sont-ils garantis uniques ?
Non, mais la probabilité d'un conflit est négligeable. Un UUID de version 4 comporte 122 bits aléatoires, soit environ 5,3 × 10³⁶ possibilités. Il faudrait en générer environ 2,7 trillions avant d'atteindre 50 % de chances d'un seul doublon. À un milliard par seconde, cela représente à peu près 85 ans.
Quelle est la différence entre UUID et GUID ?
Aucune en pratique. GUID est le nom que Microsoft donne au même identifiant de 128 bits, et vous le verrez partout dans .NET et SQL Server. La seule subtilité est que certains outils Microsoft affichent un GUID entouré d'accolades, comme {f47ac10b-...}, et que quelques anciennes API ordonnent certains octets différemment lors de la conversion en binaire brut.
Quelle version d'UUID dois-je utiliser ?
La version 4 pour un usage général — elle est entièrement aléatoire et ne révèle rien sur le lieu ni le moment de sa création. Envisagez la version 7 si ces identifiants doivent servir de clés primaires en base de données, car elle place un horodatage en tête : les valeurs se trient alors par date de création et s'indexent bien plus efficacement. Évitez la version 1 pour tout ce qui est public, car elle intègre une adresse MAC et un horodatage.
Puis-je utiliser un UUID comme jeton de sécurité ?
Pour un lien indevinable, c'est acceptable, puisqu'un UUID v4 ne peut raisonnablement pas être prédit. Mais c'est un identifiant plutôt qu'une information d'authentification : il n'expire jamais, il ne peut pas être révoqué à lui seul, et il a tendance à finir dans les journaux du serveur, les outils d'analyse et l'historique du navigateur. Pour une véritable authentification, utilisez un jeton conçu pour cela, avec une date d'expiration.
Ces UUID sont-ils générés sur votre serveur ?
Non. Ils sont créés dans votre navigateur par crypto.getRandomValues, le générateur cryptographiquement sûr intégré à tous les navigateurs modernes. Aucune requête n'est émise et rien n'est enregistré, vous pouvez donc en générer connexion coupée.
Outils associés
- Générateur de mots de passe — la même source aléatoire sûre, pour des secrets plutôt que des identifiants
- Générateur de hachage — MD5, SHA-1 et SHA-256 pour prendre l'empreinte de données
- Générateur de nombres aléatoires — des nombres aléatoires dans l'intervalle de votre choix
- Convertisseur d'horodatage — lire l'horodatage contenu dans un UUID v1 ou v7