Aller au contenu
ToolsMinify logo
Tous les articles

UUID vs GUID - Est-ce la même chose ? Lequel utiliser ? (2026)

UUID et GUID désignent le même type d'identifiant de 128 bits - GUID est simplement le nom employé par Microsoft. Découvrez les versions d'UUID, quand utiliser la v4 et comment employer ces identifiants dans les bases de données, les API et les tests.

Mis à jour 1 juillet 20266 min de lecture

Utilisez Générateur d'UUID - gratuit

Ouvrez l'outil en ligne et appliquez ce que vous avez appris dans ce guide.

Ouvrir Générateur d'UUID

Si vous avez vu à la fois "UUID" et "GUID" dans la documentation et que vous vous demandez s'il s'agit de deux choses différentes, voici la version courte : il s'agit du même identifiant de 128 bits. GUID est le nom donné par Microsoft ; UUID est le terme utilisé par la norme officielle et par presque tout le monde. Ce guide explique de quoi il s'agit, parcourt les versions de UUID en mettant l'accent sur la v4 aléatoire que vous utiliserez le plus et montre exactement où elles se situent dans les bases de données, les API et les tests.

Réponse rapide

UUID et GUID sont la même chose : un identifiant unique de 128 bits écrit sous forme de 32 chiffres hexadécimaux dans un modèle 8-4-4-4-12. « GUID » est la terminologie de Microsoft ; "UUID" est le terme utilisé dans la norme RFC. Pour la plupart des applications, vous souhaitez la version 4 de UUID (aléatoire).

UUID vs GUID : est-ce la même chose ?

Oui. UUID (Universally Unique Identifier) ​​et GUID (Globally Unique Identifier) ​​font référence à la même valeur de 128 bits. Le nom GUID vient du monde Microsoft - .NET, SQL Server, COM et le registre Windows l'appellent tous GUID - tandis que UUID est le nom utilisé dans la spécification formelle (à l'origine RFC 4122, mise à jour par RFC 9562 en 2024) et dans des écosystèmes comme PostgreSQL, Java, Python et JavaScript.

Dans le travail quotidien, vous pouvez considérer les mots comme interchangeables. Un GUID généré en C# et un UUID généré en Python ont le même format et peuvent vivre dans la même colonne de base de données. Les seules différences que vous pouvez rencontrer sont d'ordre esthétique : les outils Microsoft placent parfois la valeur entre accolades comme {xxxxxxxx-...}, et historiquement, quelques Microsoft API stockaient des parties de la valeur dans un ordre d'octets différent. La forme canonique du texte est la même partout.

À quoi ressemble un UUID/GUID

Un UUID comporte 128 bits, généralement affichés sous forme de 32 chiffres hexadécimaux répartis en cinq groupes séparés par des tirets - la disposition familière 8-4-4-4-12 :

Exemple UUID (v4)

3f2504e0-4f89-41d3-9a0c-0305e82c3301

Deux positions dans cette chaîne ne sont pas aléatoires : le premier chiffre du troisième groupe code la version (le 4 ci-dessus) et le premier chiffre du quatrième groupe code la variante (généralement 8, 9, a ou b). Tout le reste dans un UUID v4 est aléatoire.

Présentation des versions UUID

La norme définit plusieurs versions, chacune générée de manière différente. Vous en avez rarement besoin de plus d’un, mais il est utile de savoir ce qui existe :

  • v1 - basé sur le temps : construit à partir de l'horodatage actuel et de l'adresse MAC de la machine. Triable par heure de création, mais il peut divulguer l'adresse MAC et le moment où elle a été créée.
  • v3 - basé sur le nom (MD5) : un hachage déterministe MD5 d'un espace de noms plus un nom, de sorte que la même entrée produit toujours le même UUID.
  • v4 - aléatoire : 122 bits aléatoires. Il s'agit de la valeur par défaut pour la plupart des applications et de la version produite par le générateur de ce site.
  • v5 - basé sur le nom (SHA-1) : comme la v3 mais utilise SHA-1 ; préféré à la v3 lorsque vous avez besoin d'ID déterministes.
  • v6 / v7 / v8 - plus récent (RFC 9562, 2024) : la v7 est ordonnée dans le temps et conviviale pour les bases de données, et devient rapidement le choix recommandé pour les nouvelles clés primaires.

La version 4 est la bête de somme. Ses 122 bits aléatoires rendent les collisions accidentelles impossibles pour tout nombre réaliste d'identifiants - vous pourriez générer des milliards par seconde pendant des années sans jamais vous attendre à un doublon. Parce qu'il n'a pas besoin d'un coordinateur central, n'importe quel service, appareil ou test peut créer ses propres identifiants hors ligne.

Quand utiliser les UUID (et quand ne pas le faire)

Les UUID brillent chaque fois que vous avez besoin d'un identifiant unique qui peut être créé n'importe où sans demander à une autorité centrale.

Clés primaires de base de données

Une clé primaire UUID vous permet de générer l'ID dans le code de l'application avant l'insertion de la ligne, de fusionner les données de plusieurs bases de données sans collisions de clés et d'éviter d'exposer un nombre séquentiel et devinable de vos enregistrements. Les compromis sont la taille (16 octets contre 4-8 pour un entier) et, pour la v4 aléatoire, la fragmentation de l'index sur les grandes tables. Si les performances d'écriture sont importantes, préférez une v7 ordonnée dans le temps et stockez la valeur dans une colonne uuid ou binaire native plutôt que sous forme de chaîne de 36 caractères.

ID de ressource et de demande API

Les identifiants publics dans REST et GraphQL API conviennent parfaitement aux UUID. Ils ne sont pas séquentiels, donc un client ne peut pas deviner /users/2 à partir de /users/1, et chaque client ou service peut générer ses propres ID de demande et clés d'idempotence localement sans aller-retour vers le serveur.

Tests et montages

Dans les tests automatisés, les données de départ et les scripts de chargement, les UUID vous fournissent des identifiants sans collision sans maintenir de compteurs. Générez un nouveau lot pour chaque exécution afin que les enregistrements n'entrent jamais en conflit entre les suites de tests parallèles.

Ignorez les UUID lorsqu'un simple entier à incrémentation automatique suffit - de petites tables de recherche internes, ou partout où un identifiant court et convivial est plus utile que l'unicité globale. Et ne traitez jamais un UUID comme un secret : un UUID v4 est indevinable, mais il s'agit d'un identifiant et non d'un substitut à un jeton signé ou à une clé cryptographique.

UUID dans MongoDB, Java et Python

Chaque pile majeure peut générer et stocker des UUID de manière native. Voici la référence rapide :

  • MongoDB : le _id par défaut est un ObjectId, pas un UUID, mais vous pouvez stocker un UUID dans _id ou n'importe quel champ en utilisant le BSON UUID (sous-type binaire 4). Les pilotes exposent des assistants tels que UUID() afin que la valeur reste de 16 octets au lieu d'une chaîne de 36 caractères.
  • Java : java.util.UUID.randomUUID() renvoie un UUID v4 et UUID.fromString() en analyse un ; Hibernate/JPA le mappe à une colonne native uuid ou binaire (16).
  • Python : le module uuid intégré vous donne uuid.uuid4() pour les identifiants aléatoires (plus uuid1 et uuid5) ; appelez str() pour le formulaire texte ou .bytes pour la valeur de 16 octets.
  • .NET / C# : Guid.NewGuid() en crée un et la colonne uniqueidentifier de SQL Server le stocke - c'est le classique "GUID".
  • JavaScript : crypto.randomUUID() génère un UUID v4 conforme aux normes dans les navigateurs modernes et Node.js, sans qu'aucune bibliothèque ne soit requise.

Questions fréquemment posées

Un GUID est-il identique à un UUID ?

Oui. Ils décrivent le même identifiant de 128 bits. GUID est le nom que Microsoft utilise dans .NET, SQL Server et Windows ; UUID est le terme utilisé dans la norme RFC officielle et dans la plupart des autres écosystèmes. Le format est identique, donc un GUID et un UUID peuvent être stockés et comparés de manière interchangeable.

Quelle version de UUID dois-je utiliser ?

Utilisez la version 4 (aléatoire) pour les identifiants uniques à usage général : c'est la plus courante et ne nécessite aucune coordination. Si vous choisissez des clés primaires pour une base de données volumineuse et gourmande en écriture, envisagez la version 7, qui est classée dans le temps et indexe plus efficacement. Utilisez la v5 lorsque vous avez besoin de la même entrée pour toujours produire le même ID.

Deux UUID peuvent-ils entrer en collision ?

En théorie oui, en pratique non. Un UUID v4 comporte 122 bits aléatoires, donc les chances de générer un doublon sont astronomiquement faibles - vous auriez besoin de créer des milliards de UUID par seconde pendant de nombreuses années avant qu'une collision ne devienne probable. À toutes fins pratiques, ils sont uniques.

Les UUID sont-ils sécurisés ou secrets ?

Un UUID v4 aléatoire est effectivement impossible à deviner, mais il s'agit d'un identifiant, pas d'un identifiant. N'en utilisez pas comme mot de passe, secret de session ou comme seul élément protégeant une ressource. Combinez-le avec une authentification appropriée et des jetons signés partout où la sécurité est importante.

Pourquoi mon GUID a-t-il des accolades ?

Les outils Microsoft affichent ou stockent souvent les GUID entourés d'accolades, comme {3F2504E0-4F89-41D3-9A0C-0305E82C3301}, et parfois en majuscules. Les accolades et la casse ne sont que du formatage - supprimez les accolades et mettez la valeur en minuscule pour obtenir le formulaire canonique UUID utilisé partout ailleurs.

Générez instantanément un UUID v4

Utilisez le générateur gratuit UUID pour créer une ou plusieurs valeurs UUID v4 (GUID) conformes aux normes dans votre navigateur - aucune inscription et rien ne quitte votre appareil.

Utilisez Générateur d'UUID - gratuit

Ouvrez l'outil en ligne et appliquez ce que vous avez appris dans ce guide.

Ouvrir Générateur d'UUID

Articles connexes