Aller au contenu

Générateur d’UUID et d’ULID

  • Fonctionne sur votre appareil
  • Fonctionne hors ligne une fois chargé

Créez des identifiants pour bases de données, tests et API. Générez jusqu’à 10 000 UUID d’un coup, choisissez la version 4, la version 7 ordonnée par le temps, la version 5 fondée sur un nom ou l’ULID, et mettez-les en forme avec guillemets, accolades, majuscules ou en tableau JSON. Collez n’importe quel identifiant pour voir de quel type il est et quand il a été créé.

Comment ça marche

  1. Choisissez le type d’identifiant et le nombre.
  2. Réglez le format de sortie.
  3. Copiez ou téléchargez la liste.

Pourquoi l’utiliser

  • UUID v4, v7, v5, nul et ULID.
  • Jusqu’à 10 000 d’un coup.
  • Formats JSON, CSV, entre guillemets et entre accolades.
  • Décodage de l’horodatage dans les v7 et les ULID.

UUID v4, v7, v5 et ULID : quel identifiant utiliser

Les types, côte à côte

TypeFabriqué à partir deTrié par dateÀ utiliser pour
UUID v4122 bits aléatoiresNonIdentifiants généraux, jetons, noms de fichiers
UUID v7L’heure en millisecondes plus 74 bits aléatoiresOuiClés de base de données, journaux, événements
UUID v5Un espace de noms et un nom, hachés en SHA-1NonLe même identifiant pour le même nom, à chaque fois
ULIDL’heure en millisecondes plus 80 bits aléatoiresOuiIdentifiants triables courts et lisibles
NulQue des zérosNonUne valeur de remplacement signifiant « pas d’identifiant »

Version 4 : aléatoire

Un UUID v4 se compose de 122 bits aléatoires dans une disposition fixe, comme 9b2f6c1e-4a7d-4e3b-8f21-5c9d0a7e3b64. La probabilité que deux soient un jour identiques est si faible qu’on peut l’ignorer : il faudrait en créer environ 2,7 trillions pour avoir 50 % de chances d’une seule collision. C’est le choix par défaut chaque fois qu’un identifiant doit seulement être unique.

Version 7 et ULID : aléatoires, mais dans l’ordre du temps

Les identifiants aléatoires ont un coût dans les bases de données : les nouvelles lignes s’insèrent partout dans l’index au lieu de s’ajouter à la fin, ce qui ralentit les grandes tables. Un UUID v7 commence par l’heure de sa création, à la milliseconde, suivie de bits aléatoires : les identifiants créés plus tard se trient plus loin, et les insertions restent en fin d’index. Les identifiants créés dans la même milliseconde par ce générateur sortent tout de même dans l’ordre. Utiliser une heure fixe règle l’horodatage, pratique pour les données de test.

Un ULID porte la même idée en 26 caractères de Base32 de Crockford, comme 01JA8Z3V6Q8X2M7K4N9R5T1B0C, plus court qu’un UUID et sans lettres faciles à confondre. Utilisez le v7 là où une colonne ou une API attend un UUID, et l’ULID là où un texte plus court est bienvenu.

Version 5 : le même nom, le même identifiant

Un UUID v5 n’est pas aléatoire : c’est un hachage d’un espace de noms et d’un nom. example.com dans l’espace de noms DNS donne toujours le même UUID, sur n’importe quel ordinateur, dans n’importe quel langage. C’est utile pour donner des identifiants stables à des choses qui ont déjà un nom unique, comme des URL ou des adresses e-mail, sans en stocker une table. Choisissez DNS, URL, OID ou X.500 comme espace de noms, ou un UUID personnalisé de votre choix.

Inspecter un identifiant

Collez n’importe quel UUID ou ULID dans Inspecter un identifiant pour voir ce qu’il est : la version, la variante et, pour les identifiants fondés sur le temps, l’instant de leur création. Utile pour déboguer, par exemple pour savoir quand un enregistrement d’une base de données a été créé à partir de sa seule clé.

Des formats prêts à coller

Choisissez majuscules ou minuscules, avec ou sans tirets, et entourez chaque identifiant de guillemets doubles, d’apostrophes ou d’accolades pour le code. Séparez-les par des retours à la ligne ou des virgules, ou écrivez-les en tableau JSON ou en colonne CSV, puis copiez-les tous ou enregistrez-les en fichier texte, CSV ou JSON. Les minuscules avec tirets sont la forme standard et le choix le plus sûr.

En cas de problème

  • Un identifiant n’est pas reconnu. Ce n’est pas un UUID ou un ULID valide : vérifiez sa longueur et ses caractères. Les UUID ont 32 chiffres hexadécimaux ; les ULID ont 26 caractères.
  • Des identifiants v4 ralentissent une base de données. Passez les nouvelles clés en v7 pour que les insertions arrivent dans l’ordre.

Questions et réponses

Quelle différence entre v4 et v7 ?

La version 4 est entièrement aléatoire. La version 7 commence par un horodatage : les identifiants se trient donc par date de création, ce qui convient mieux aux index de bases de données.

Ces valeurs aléatoires sont-elles sûres ?

Elles viennent du générateur de nombres aléatoires cryptographique de votre navigateur.

Deux identifiants peuvent-ils entrer en collision ?

La probabilité est négligeable pour des UUID aléatoires.

Échap