Générateur de UUID Version 4
UUIDv4 • Aléatoire Cryptographique
00000000-0000-0000-0000-000000000000
Encadrer :
Génération d’UUIDs en Lot
0 msReady
Max 5 000
Formatage et Structure
Prêt
No batch active1-click copy available on each row
Standard de Référence•RFC 9562 Section 5.4 / RFC 4122
Spécification Technique de l’UUID Version 4 (RFC 4122 & RFC 9562)
L’UUIDv4 est la version d’identifiant la plus répandue au monde. Sur ses 128 bits, 122 bits sont générés à partir d’une source d’entropie cryptographiquement sûre, 6 bits étant réservés pour la version (0100) et la variante (10xx).
Structure des Bits & Format Binaire
Répartition détaillée des 128 bits selon les standards RFC.
| Champ | Plage de Bits | Rôle & Description |
|---|---|---|
| random_hi | 48 bits (0-47) | Entropie aléatoire cryptographiquement sûre. |
| ver | 4 bits (48-51) | Valeur binaire constante 0100 (identifie la Version 4). |
| random_mid | 12 bits (52-63) | Entropie aléatoire cryptographiquement sûre. |
| var | 2 bits (64-65) | Valeur binaire constante 10 (variante standard RFC). |
| random_lo | 62 bits (66-127) | Entropie aléatoire cryptographiquement sûre. |
✓
Avantages & Points forts
- •Confidentialité totale : ne divulgue aucun horodatage, adresse MAC ni information sur le système émetteur.
- •Prise en charge universelle dans tous les langages de programmation et moteurs SQL.
- •Totalement imprévisible, protégeant contre les attaques par énumération IDOR.
!
Considérations & Compromis
- •Dégradation des index B-Tree en base de données due aux écritures aléatoires.
- •Impossible à trier par ordre chronologique sans champ created_at dédié.
Idéal pour
- →Jetons d’API, clés de session, liens de réinitialisation de mot de passe et codes OAuth.
- →Identifiants opaques exposés aux utilisateurs finaux.
- →Caches distribués (Redis, Memcached) et clés non indexées.
À éviter pour
- ✕Clés primaires à fort volume d’écriture dans des index B-Tree (préférez UUIDv7).
- ✕Tables nécessitant un classement lexicographique naturel.
Exemples d'implémentation de code
Native Web CryptoJavaScript / TypeScript
// Modern browsers and Node.js 14.17+
const id = crypto.randomUUID();
console.log(id); // e.g. "c9a646d3-9c61-4cc9-bc0c-930438cf38cf"Python Standard LibraryPython
import uuid
id = uuid.uuid4()
print(id) # e.g. "f47ac10b-58cc-4372-a567-0e02b2c3d479"Go (google/uuid)Go
package main
import (
"fmt"
"github.com/google/uuid"
)
func main() {
id := uuid.New()
fmt.Println(id.String())
}Foire Aux Questions
Combien d’UUIDv4 uniques existe-t-il ?▼
Avec 122 bits d’entropie (environ 5,3 × 10³⁶ combinaisons), la probabilité d’une collision est inférieure à une sur un milliard après avoir généré un milliard d’identifiants par seconde pendant 85 ans.
Ce générateur utilise-t-il Math.random() ?▼
Non. Il utilise exclusivement l’API Web Crypto (crypto.getRandomValues), qui tire son entropie du CSPRNG du noyau du système d’exploitation.