Ce que fait cet outil
Génère des UUIDs dans les formats que les ingénieurs utilisent vraiment : v4 (aléatoire), v7 (préfixé par timestamp, triable), et les valeurs spéciales NIL et MAX. La sortie est configurable — avec tirets ou compacte, en minuscules ou majuscules, avec ou sans accolades — pour que tu puisses matcher ce que ton système cible attend. Tu peux générer jusqu'à 1 000 à la fois.
Quand l'utiliser
- Produire des clés primaires pour une nouvelle table sans aller-retour à la base.
- Générer des clés d'idempotence pour des appels d'API à retry.
- Remplir des fixtures de test avec des IDs stables mais uniques.
- Migrer d'IDs entiers auto-incrémentés vers des identifiants opaques.
Comment ça marche
Les UUIDs v4 viennent de crypto.getRandomValues, le CSPRNG du navigateur. Les bits de version (4) et de variant (RFC 4122) sont posés selon la spec, ce qui laisse 122 bits d'aléa — la probabilité de collision est effectivement nulle pour tout taux de génération réaliste.
Les UUIDs v7 encodent un timestamp Unix en millisecondes 48 bits suivi de 74 bits aléatoires. Comme le timestamp mène, les IDs v7 trient lexicographiquement par instant de création, ce qui les rend plus cache-friendly que v4 dans des index B-tree. Ils ont été standardisés dans le RFC 9562 (mai 2024).
Notes
Devrais-je passer de v4 à v7 pour les clés de base de données ? Probablement oui pour les nouvelles tables. Les IDs v7 se groupent par instant d'insertion, ce qui garde les lignes récentes sur les mêmes pages d'index et réduit l'amplification d'écriture. Le revers est que l'instant de création fuit dans l'ID — pour des IDs publics opaques, reste sur v4.
C'est quoi NIL vs MAX ? NIL est tout zéro (00000000-0000-0000-0000-000000000000) et MAX est tout un — valeurs sentinelles définies dans le RFC 9562 pour « pas d'UUID » et « UUID maximum ».
Sont-ils cryptographiquement aléatoires ? v4 oui. v7 a 74 bits aléatoires — aussi dérivés cryptographiquement, mais le timestamp réduit l'espace de recherche pour un attaquant, donc n'utilise pas v7 comme un token de session.
Outils liés
- UUID v4 — page aléatoire-uniquement
- UUID v7 — page triable-uniquement
- Générateur de hash — quand tu veux un digest de contenu, pas un ID opaque