Générer des UUID v4 aléatoires
Un UUID version 4 est une valeur de 128 bits dont 122 bits proviennent d'une source aléatoire cryptographiquement sûre. Les 6 bits restants indiquent la version et la variante RFC : c'est pourquoi chaque UUID v4 a un 4 au début du troisième groupe.
Exemple détaillé
- Octets aléatoires en entrée
- 9d 41 7c 02 e8 5b 13 f6 2a 7e c1 94 06 d3 b8 5f
- Résultat
- 9d417c02-e85b-43f6-aa7e-c19406d3b85f
| UUID générés | Probabilité d'au moins un doublon |
|---|---|
| 10⁶ | ≈ 9,4 × 10⁻²⁶ |
| 10⁹ | ≈ 9,4 × 10⁻²⁰ |
| 10¹² | ≈ 9,4 × 10⁻¹⁴ |
| 10¹⁵ | ≈ 9,4 × 10⁻⁸ |
UUID nécessaires pour 50 % de risque de doublon: ≈ 2,71 × 10¹⁸
Fonctionnement
- Le générateur remplit 16 octets de données aléatoires sûres, puis fixe le quartet haut de l'octet 6 à 4 (version) et les deux bits de poids fort de l'octet 8 à 10 (variante). Le troisième groupe commence donc par 4 et le quatrième par 8, 9, a ou b.
- Avec 2¹²² valeurs possibles, l'approximation du paradoxe des anniversaires p ≈ 1 − e^(−n²/2¹²³) donne la probabilité que n UUID aléatoires contiennent au moins un doublon.
- Un UUID v4 ne révèle ni horodatage ni information matérielle. Utilisez-le comme identifiant, pas comme mot de passe ni secret d'authentification.
Générez de 1 à 100 UUID à la fois
À propos des UUID
UUID v1 : UUID basés sur le temps qui incluent un horodatage et l'adresse MAC de l'ordinateur générant l'UUID. Utile lorsque vous devez savoir quand l'UUID a été créé.
UUID v4 : UUID générés aléatoirement. C'est la version la plus couramment utilisée et offre une bonne unicité avec une fuite d'informations minimale.
UUID v5 : UUID basés sur un nom utilisant le hachage SHA-1. Avec le même espace de noms et le même nom, vous obtiendrez toujours le même UUID. Utile pour la génération déterministe d'UUID.