Pulsars

Générateur d'UUID

Générés 0 UUIDs

Un UUID (Universally Unique Identifier) est un identifiant de 128 bits standardisé par la RFC 9562 (anciennement RFC 4122), conçu pour être unique sans autorité centrale de coordination. Les UUIDs v4 sont générés aléatoirement avec une probabilité de collision de 1 sur 2^122 (~5,3 × 10^36). Les UUIDs v7, introduits en 2024, intègrent un horodatage Unix de précision milliseconde dans les 48 premiers bits, ce qui les rend triables chronologiquement — un avantage majeur pour les clés primaires de bases de données (PostgreSQL, MongoDB).

Qu'est-ce qu'un UUID et à quoi sert-il ?

Un UUID (Universally Unique Identifier) est une étiquette de 128 bits utilisée pour identifier des informations dans des systèmes distribués sans nécessiter d'autorité de coordination centrale. La représentation textuelle standard est 32 chiffres hexadécimaux en cinq groupes séparés par des tirets : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Les UUID sont définis par la RFC 4122 (originale) et la RFC 9562 (mise à jour 2024 introduisant la v7).

Le chiffre de version (le 13e caractère hexadécimal) indique comment l'UUID a été généré. La version 4 signifie aléatoire, la version 7 signifie basé sur l'horodatage.

Quelle est la différence entre UUID v4 et UUID v7 ?

UUID v4 remplit 122 de ses 128 bits avec des données aléatoires cryptographiquement sûres (les 6 bits restants encodent la version et la variante). Cela donne 5,3 × 10^36 valeurs possibles, rendant les collisions astronomiquement improbables. La v4 est la version la plus largement utilisée aujourd'hui.

UUID v7, défini dans la RFC 9562 (2024), intègre un horodatage Unix en millisecondes dans les 48 premiers bits. Les bits restants sont aléatoires. Les UUID v7 sont donc naturellement triables par date de création — un avantage considérable pour les clés primaires de bases de données, car les index B-tree sont les plus performants avec des insertions séquentielles.

En résumé : utilisez la v4 pour un maximum d'aléatoire et zéro fuite d'information. Utilisez la v7 pour des identifiants triables par le temps et optimisés pour l'indexation.

Quand faut-il utiliser un UUID plutôt qu'un identifiant auto-incrémenté ?

Les UUID sont le choix standard quand vous avez besoin d'identifiants uniques globalement sans autorité centrale :

Besoin d'encoder vos UUID pour le transport ? Essayez notre encodeur Base64.

Questions fréquentes

Qu'est-ce qu'un UUID ?

+

Un UUID (Universally Unique Identifier) est une valeur de 128 bits standardisée par les RFC 4122 et 9562, utilisée pour identifier de manière unique des ressources dans des systèmes distribués sans autorité centrale. La représentation standard est 32 chiffres hexadécimaux affichés en cinq groupes séparés par des tirets (8-4-4-4-12), par exemple 550e8400-e29b-41d4-a716-446655440000.

Quelle est la différence entre UUID v4 et v7 ?

+

UUID v4 génère des identifiants à partir de 122 bits aléatoires cryptographiquement sûrs, rendant chaque valeur imprévisible et statistiquement unique. UUID v7, introduit dans la RFC 9562 (2024), encode un horodatage Unix en millisecondes dans les 48 premiers bits, suivi de données aléatoires. Les v7 sont donc naturellement triables par date de création — un avantage majeur pour l'indexation en base de données.

Les UUID sont-ils vraiment uniques ?

+

En pratique, oui. UUID v4 puise dans un espace de 2^122 valeurs possibles (environ 5,3 × 10^36). Pour avoir 50 % de chance d'une seule collision, il faudrait générer environ 2,7 × 10^18 UUID — soit 2,7 quintillions. À un milliard d'UUID par seconde, il faudrait plus de 85 ans pour atteindre ce seuil.

UUID et GUID, c'est la même chose ?

+

Oui, GUID (Globally Unique Identifier) est le terme adopté par Microsoft pour le même concept. Les GUID et UUID suivent des formats et algorithmes de génération identiques tels que définis dans la RFC 4122. La seule différence historique est que certains outils Microsoft affichent les GUID avec des accolades.

Quand utiliser UUID v7 plutôt que v4 ?

+

Choisissez UUID v7 quand votre cas d'usage bénéficie d'identifiants ordonnés par le temps. Le scénario le plus courant est les clés primaires de base de données : les identifiants séquentiels améliorent considérablement les performances d'INSERT sur les index B-tree car les nouvelles lignes sont toujours ajoutées à la fin. Le v7 est aussi utile pour l'event sourcing et les logs.

Outils connexes