Générateur d'UUID
Qu'est-ce qu'un UUID et à quoi sert-il ?
L'UUID (Universally Unique Identifier) est un identifiant de 128 bits conçu pour être globalement unique sans nécessiter de coordination centrale. Il est couramment utilisé dans les bases de données, les systèmes distribués, les API et les applications backend pour identifier des enregistrements, des sessions, des transactions ou des ressources. Grâce au nombre immense de combinaisons possibles, l'UUID élimine pratiquement tout risque de collision d'identifiants, même dans les très grands systèmes.
Généré à partir du temps et de l'adresse MAC de l'appareil. Garantit l'unicité, mais peut révéler des informations sur le système.
UUID déterministe généré à partir d'un namespace et d'un nom à l'aide de la fonction de hachage MD5.
La version la plus populaire — générée de manière aléatoire à l'aide d'un générateur de nombres aléatoires cryptographiques.
Similaire à la v3, mais utilise SHA-1 au lieu de MD5. Souvent utilisé lorsqu'une déterminisme et une sécurité accrue sont nécessaires.
Structure de l'UUID
| Segment | Longueur | Description | Exemple |
|---|---|---|---|
time_low |
8 caractères | Première partie de l'identifiant ; dans la v1, elle contient une partie de l'horodatage. | 550e8400 |
time_mid |
4 caractères | Deuxième partie de l'horodatage. | e29b |
time_hi_and_version |
4 caractères | Contient la version de l'UUID. | 41d4 |
clock_seq |
4 caractères | Séquence d'horloge pour prévenir les collisions. | a716 |
node |
12 caractères | Identifiant du nœud (ex : MAC en v1 ou données aléatoires en v4). | 446655440000 |
Où utilise-t-on les UUID ?
UUID
UUID
UUID
UUID
UUID
UUID
Questions fréquemment posées
L'UUID ne garantit pas une unicité mathématique absolue, mais la probabilité de collision est extrêmement faible. Dans la version v4, il existe environ 3.4×10^38 combinaisons possibles, ce qui élimine en pratique le risque de doublons.
Les UUID peuvent être générés indépendamment sur plusieurs serveurs sans base de données centrale. Cela les rend parfaits pour l'architecture des microservices et les systèmes distribués.
Oui. L'UUID ne révèle pas l'ordre des enregistrements ni le nombre d'utilisateurs, il est donc plus sûr que les identifiants incrémentiels dans les API publiques ou les liens.
L'UUID fait 128 bits pour assurer un espace d'identifiants immense et minimiser le risque de collision, même dans les très grands systèmes.
C'est possible. L'UUID en tant que clé primaire peut être plus lent que les entiers car il est plus volumineux et moins ordonné. Dans de nombreux systèmes, on utilise l'UUID au format binaire ou le format UUIDv7/ULID pour une meilleure indexation.
Cela dépend de la version. L'UUID v1 contient des informations sur le temps et l'adresse MAC de l'appareil, alors que l'UUID v4 est totalement aléatoire et ne contient aucune donnée lisible.