Générateur d'UUID (v4, v7, ULID, NanoID)
Générez des UUID v4 et v7, des ULID et des NanoID en masse, et inspectez tout UUID. Tout s'exécute localement — rien n'est téléversé.
- Entrée
- Count · format
- Sortie
- UUID v4 · UUID v7 · ULID · NanoID
Inspecter
- Valide
- Oui
- Type
- UUID v7
- Version
- 7 : ordonné par temps Unix
- Variante
- RFC 9562 (standard)
- Forme canonique
- 0192be1c-a07b-7014-95a7-6e2daca81c16
- Créé le
- 2024-10-24T10:40:00.123Z
Besoin de lignes entières de données de test avec des clés UUID ? Ouvrir le générateur de données de test
Un générateur d'UUID pour tous les types d'identifiants
Ce générateur d'UUID produit des UUID v4 aléatoires, des UUID v7 ordonnés dans le temps, des ULID et des NanoID, d'un seul à dix mille à la fois, dans le format exact qu'attend votre code ou votre base de données. Collez un identifiant existant dans l'inspecteur pour vérifier qu'il est valide et lire sa version, sa variante et le moment de sa création. Chaque identifiant provient du générateur de nombres aléatoires cryptographique de votre navigateur ; rien n'est demandé à un serveur ni envoyé à un serveur.
Comment générer des UUID
- Choisissez le type : UUID v4 pour des identifiants simplement aléatoires, UUID v7 ou ULID quand les identifiants doivent se trier par date de création, NanoID pour des identifiants courts dans les URL.
- Indiquez combien il vous en faut, jusqu'à 10 000, avec le champ ou les boutons rapides.
- Choisissez le format : minuscules ou MAJUSCULES, avec ou sans tirets, entre
{accolades}façon GUID, ou entre guillemets avec virgules pour les coller dans une liste SQLIN (…)ou un tableau JSON. - Copiez toute la liste, ou téléchargez-la en .txt, .csv ou .json. Cliquez sur Régénérer pour un nouveau lot.
- Pour vérifier un identifiant que vous avez déjà, collez-le dans l'inspecteur sous la liste.
UUID v4 ou UUID v7 : lequel utiliser ?
Un UUID est un identifiant de 128 bits écrit sous forme de 32 chiffres hexadécimaux répartis en cinq groupes, comme 3f2c8a1e-5b7d-4e9f-a0c1-2d3e4f5a6b7c. Six de ces bits sont fixes : quatre donnent la version (le premier chiffre du troisième groupe) et deux la variante (le premier chiffre du quatrième groupe vaut 8, 9, a ou b pour les UUID standard).
La version 4 remplit les 122 autres bits de données aléatoires. C'est le choix par défaut presque partout, elle ne révèle rien sur le moment ni le lieu de sa création, et le risque de collision est négligeable : il faudrait en générer environ un milliard par seconde pendant 85 ans pour avoir une chance sur deux d'obtenir un seul doublon.
La version 7, normalisée en 2024 par la RFC 9562, place en tête un horodatage Unix de 48 bits en millisecondes et remplit le reste de bits aléatoires. Les nouveaux UUID v7 se trient donc dans l'ordre de création, ce qui garde compacts les index B-tree des bases de données : les insertions arrivent en fin d'index au lieu de pages aléatoires, et c'est la principale raison pour laquelle les utilisateurs de Postgres, MySQL et SQL Server passent leurs clés primaires de v4 à v7. La contrepartie : quiconque détient l'identifiant peut lire sa date de création. Ce générateur garde les UUID v7 strictement croissants, même au sein d'une même milliseconde, grâce au compteur de 12 bits décrit par la RFC.
ULID et NanoID
Utilisez ULID quand vous voulez un ordre chronologique dans une chaîne plus courte et insensible à la casse ; utilisez NanoID pour des identifiants publics comme des liens courts ou des codes d'invitation, où la longueur compte et l'ordre chronologique non.
- ULID
- 26 caractères en base32 de Crockford, comme 01JAZ1S83VV6F35M4HSN97TA7X : un horodatage de 48 bits en millisecondes suivi de 80 bits aléatoires. Il se trie lexicalement par date, évite les lettres ambiguës I, L, O et U, et tient dans les mêmes 128 bits qu'un UUID, ce qui permet de le stocker dans une colonne uuid. Le mode monotone incrémente la partie aléatoire pour les identifiants créés dans la même milliseconde.
- NanoID
- Une chaîne aléatoire compacte, par défaut 21 caractères parmi A–Z, a–z, 0–9, _ et -, ce qui donne environ 126 bits d'aléa : aussi résistant aux collisions qu'un UUID v4 en moins de caractères, et utilisable dans les URL et les noms de fichiers sans encodage.
- Alphabets personnalisés
- NanoID peut utiliser uniquement des chiffres, uniquement des minuscules, des caractères alphanumériques, un alphabet sans caractères ambigus, ou tout ensemble que vous tapez. L'outil affiche le nombre de bits d'aléa obtenu pour que vous choisissiez une longueur qui reste sûre.
GUID, accolades et autres formats
GUID est le nom que donne Microsoft à un UUID. .NET, le registre Windows et COM l'affichent souvent en MAJUSCULES entre accolades, comme {3F2C8A1E-5B7D-4E9F-A0C1-2D3E4F5A6B7C}, ce que produit l'option accolades. Certains systèmes veulent les 32 chiffres sans tirets ; d'autres les stockent dans une colonne binary(16). Ce sont toujours les mêmes 128 bits.
Les formats entre guillemets ajoutent les virgules pour vous : mille identifiants peuvent aller directement dans WHERE id IN (…) ou dans un tableau JSON. Pour des lignes réalistes plutôt que de simples identifiants, le générateur de données de test construit des tables entières avec des colonnes UUID.
Lire un UUID existant
L'inspecteur accepte un UUID avec ou sans tirets, accolades, guillemets ou préfixe urn:uuid:, et un ULID en majuscules comme en minuscules. Il indique si la valeur est bien formée, quelles version et variante elle déclare et, pour les versions temporelles 1, 6 et 7 et pour les ULID, la date de création intégrée au format ISO 8601, dans votre fuseau horaire et en UTC.
Les versions 3 et 5 sont des hashes d'un espace de noms et d'un nom (MD5 et SHA-1) : la même entrée donne toujours le même UUID et il n'y a pas de date à lire. La version 8 est réservée aux dispositions personnalisées. L'UUID nil (tout à zéro) et l'UUID max (tout à un) sont des valeurs spéciales définies par la RFC.
Questions fréquentes
- Quelle est la différence entre un UUID et un GUID ?
- Aucune sur le fond : GUID est le nom que Microsoft donne à un UUID. Ce sont tous deux des identifiants de 128 bits ; les outils Microsoft ont tendance à les afficher en majuscules et entre accolades.
- Faut-il utiliser un UUID v4 ou v7 comme clé primaire ?
- Préférez v7 pour les clés primaires. Son horodatage en tête fait que les nouvelles clés se trient dans l'ordre d'insertion, ce qui garde les index B-tree compacts et les insertions rapides. Utilisez v4 quand l'identifiant ne doit pas révéler la date de création de l'enregistrement.
- Deux UUID générés peuvent-ils être identiques ?
- En théorie oui, en pratique non. Un UUID v4 compte 122 bits aléatoires : il faudrait en créer environ 2,7 milliards de milliards avant qu'un seul doublon devienne probable.
- Peut-on retrouver la date de création d'un UUID ?
- Seulement pour les versions temporelles : v1, v6 et v7 contiennent un horodatage, tout comme les ULID. Collez-en un dans l'inspecteur pour voir la date dans votre fuseau horaire. Les UUID v4 aléatoires et les v3 et v5 basés sur un hash ne contiennent aucune date.
- Qu'est-ce qu'un ULID et en quoi diffère-t-il d'un UUID ?
- Un ULID est un identifiant de 128 bits écrit en 26 caractères base32 de Crockford, avec un horodatage en millisecondes en tête pour qu'il se trie par date de création. Il a la même taille qu'un UUID et le même usage qu'un UUID v7, sous une forme texte plus courte.
- Quelle longueur choisir pour un NanoID ?
- Les 21 caractères par défaut, tirés de l'alphabet de 64 caractères sûr pour les URL, donnent environ 126 bits d'aléa, comparable à un UUID v4. Des identifiants plus courts conviennent à de petits jeux de données, mais vérifiez les bits affichés par l'outil : en dessous d'environ 64 bits, les collisions deviennent plausibles à grande échelle.
- Les UUID générés ici sont-ils sûrs et privés ?
- Oui. Ils sont générés dans votre navigateur avec le générateur de nombres aléatoires cryptographique de l'API Web Crypto, et ne sont jamais envoyés ni stockés sur un serveur.