Générateur UUID/GUID
Outil gratuit en ligne pour générer des UUID (Universally Unique Identifier) v4.
✨ 생성된 UUID
UUID (Universally Unique Identifier) v4를 생성합니다. 각 UUID는 통계적으로 고유하며, 데이터베이스 키, 세션 ID 등으로 사용됩니다.
💡 예시
550e8400-e29b-41d4-a716-446655440000550E8400-E29B-41D4-A716-446655440000550e8400e29b41d4a716446655440000Qu'est-ce qu'un UUID ?
Un UUID (Universally Unique Identifier) ou GUID (Globally Unique Identifier) est un nombre de 128 bits utilisé pour identifier de manière unique des informations. L'UUID v4 est généré de manière aléatoire et la probabilité de duplication est presque nulle.
Fonctionnalités principales
- Génération en masse : Choix de 1, 5, 10 ou 20 UUID
- Majuscules/minuscules : Sélection du format souhaité
- Option tirets : Choix d'inclure ou de retirer les tirets
- Copie instantanée : Copie dans le presse-papiers en un clic
- Basé sur le navigateur : Aucune installation requise, entièrement exécuté côté client
Mode d'emploi
Utilisation de base
- Sélectionnez le nombre d'UUID à générer (1, 5, 10, 20)
- Choisissez vos options :
- Majuscules : Cochez pour générer en majuscules
- Inclure les tirets : Cochez pour le format avec tirets
- Cliquez sur le bouton "Générer"
- Copiez et utilisez les UUID générés
Sélection du format
Format standard (minuscules, avec tirets)
550e8400-e29b-41d4-a716-446655440000
Majuscules
550E8400-E29B-41D4-A716-446655440000
Sans tirets
550e8400e29b41d4a716446655440000
Structure de l'UUID
L'UUID v4 a la structure suivante :
xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx
- x : Chiffre hexadécimal aléatoire (0-9, a-f)
- 4 : Numéro de version (indique v4)
- y : Chiffre hexadécimal aléatoire (8, 9, a ou b)
Total de 128 bits = représenté par 32 chiffres hexadécimaux.
Cas d'usage
1. Clé primaire de base de données
CREATE TABLE users (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
name VARCHAR(100),
email VARCHAR(100)
);
2. ID de système distribué
Aucune collision même lors de la génération d'ID indépendamment sur plusieurs serveurs :
const userId = '550e8400-e29b-41d4-a716-446655440000';
const sessionId = 'a3bb189e-8bf9-3888-9912-ace4e6543002';
3. Nom de fichier
const filename = `upload-${uuid}.jpg`;
// upload-550e8400-e29b-41d4-a716-446655440000.jpg
4. Jeton d'API
Authorization: Bearer 550e8400-e29b-41d4-a716-446655440000
5. ID de session
const sessionId = generateUUID();
sessionStorage.setItem('sessionId', sessionId);
Versions d'UUID
UUID v1
- Basé sur horodatage + adresse MAC
- Garantit l'ordre chronologique
- Risque d'exposition de l'adresse MAC
UUID v4 (utilisé par cet outil) ⭐
- Complètement aléatoire
- Le plus largement utilisé
- Aucune exposition d'informations personnelles
UUID v5
- Basé sur un nom (hash SHA-1)
- Même entrée → même UUID
Probabilité de collision
La probabilité de collision de l'UUID v4 est extrêmement faible :
- Nombre total d'UUID possibles : 2^122 ≈ 5,3 × 10^36
- Probabilité de collision pour 1 milliard générés : environ 10^-18 (pratiquement 0)
- Nombre d'atomes dans l'univers : 10^80
En pratique, vous n'avez pas à vous soucier des collisions !
Utilisation par langage de programmation
JavaScript
// Navigateur
const uuid = crypto.randomUUID();
// Node.js
const { v4: uuidv4 } = require('uuid');
const uuid = uuidv4();
Python
import uuid
# Génération UUID v4
my_uuid = uuid.uuid4()
print(my_uuid) # 550e8400-e29b-41d4-a716-446655440000
Java
import java.util.UUID;
UUID uuid = UUID.randomUUID();
String uuidString = uuid.toString();
PHP
<?php
$uuid = sprintf('%04x%04x-%04x-%04x-%04x-%04x%04x%04x',
mt_rand(0, 0xffff), mt_rand(0, 0xffff),
mt_rand(0, 0xffff),
mt_rand(0, 0x0fff) | 0x4000,
mt_rand(0, 0x3fff) | 0x8000,
mt_rand(0, 0xffff), mt_rand(0, 0xffff), mt_rand(0, 0xffff)
);
?>
C#
using System;
Guid uuid = Guid.NewGuid();
string uuidString = uuid.ToString();
Conseils pratiques
1. Génération en masse
Générez plusieurs UUID à la fois quand vous en avez besoin :
- Génération de données de test
- Scripts de migration
- Préparation de données initiales
2. Indexation de base de données
Points d'attention lors de l'utilisation d'UUID comme clé primaire :
- Complètement aléatoire → peut dégrader les performances d'index B-Tree
- Considérez UUID v1 ou ULID (caractéristiques séquentielles)
- Recommandé d'utiliser
gen_random_uuid()de PostgreSQL
3. Utilisation dans les URL
// Format sans tirets plus élégant
const url = `https://example.com/items/${uuid.replace(/-/g, '')}`;
4. Journalisation et traçage
const requestId = crypto.randomUUID();
console.log(`[${requestId}] Request started`);
// ... traitement ...
console.log(`[${requestId}] Request completed`);
Considérations de sécurité
✅ Utilisation sûre
- ID de session
- Clé API (avec sécurité supplémentaire)
- Noms de fichiers temporaires
- ID de traçage
⚠️ Attention requise
- Imprévisible mais pas secret : N'utilisez pas uniquement un UUID pour l'authentification
- Validation supplémentaire nécessaire : Vérification des permissions, signatures, etc.
- Peut être exposé : Si inclus dans l'URL, sera enregistré dans les logs
Questions fréquentes
Q : Les UUID sont-ils vraiment uniques ?
Oui. Statistiquement, la probabilité de collision est presque nulle. En pratique, la possibilité de duplication est presque inexistante même en générant 1 milliard d'UUID par seconde pendant l'âge de l'univers.
Q : Quelle est la différence entre UUID v4 et v1 ?
- v1 : Basé sur horodatage + adresse MAC, garantit l'ordre chronologique, risque d'exposition d'informations personnelles
- v4 : Complètement aléatoire, pas d'ordre chronologique, sécurisé pour les informations personnelles
Q : Dois-je utiliser des majuscules ou des minuscules ?
Généralement, les minuscules sont standard, mais les deux sont valides. Choisissez selon les exigences de votre système.
Q : Les tirets sont-ils obligatoires ?
Les tirets sont pour la lisibilité. Certains systèmes préfèrent le format sans tirets.
Q : Puis-je utiliser un UUID comme clé primaire de base de données ?
Oui, c'est possible. Mais pour les performances, vous pouvez envisager des ID séquentiels (AUTO_INCREMENT) ou ULID.
Q : Puis-je utiliser un UUID comme mot de passe ?
Non recommandé. Bien qu'imprévisibles, il est plus sûr d'utiliser des fonctions de hachage de mot de passe (bcrypt, argon2).
Outils associés
- Convertisseur d'horodatage - Conversion d'horodatage Unix
- Générateur de hash - Génération de hash MD5, SHA-256, etc.
- Encodeur Base64 - Encodage/décodage Base64
Performances
- Vitesse de génération : Moins d'une milliseconde
- Support navigateur : Chrome 92+, Firefox 95+, Safari 15.4+
- Utilisation mémoire : Minimale
- Fonctionnement hors ligne : Entièrement supporté
Compatibilité des navigateurs
Cet outil utilise l'API Web Crypto :
- Chrome 92+ ✓
- Firefox 95+ ✓
- Safari 15.4+ ✓
- Edge 92+ ✓
Peut ne pas fonctionner sur les navigateurs plus anciens.
💬 Cet outil vous a-t-il été utile ?
Partagez votre expérience et aidez-nous à améliorer cet outil ! Si vous avez des suggestions ou des commentaires, n'hésitez pas à nous les faire parvenir.
Confidentialité
Cet outil fonctionne entièrement côté client. Les UUID générés ne sont pas envoyés au serveur et sont traités uniquement dans votre navigateur.