Générateur de UUID Version 1
UUIDv1 • Horodatage Grégorien & MAC Simulée
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 Hérité•RFC 9562 Section 5.1 / RFC 4122
Spécification Technique de l’UUID Version 1 (Horodatage Grégorien)
L’UUIDv1 génère des identifiants de 128 bits fondés sur une horloge grégorienne en intervalles de 100 nanosecondes depuis le 15 octobre 1582, associée à une séquence d’horloge et à l’adresse de nœud matériel.
Structure des Bits & Format Binaire
Répartition détaillée des 128 bits selon les standards RFC.
| Champ | Plage de Bits | Rôle & Description |
|---|---|---|
| time_low | 32 bits (0-31) | 32 bits de poids faible de l’horodatage grégorien. |
| time_mid | 16 bits (32-47) | 16 bits intermédiaires de l’horodatage. |
| time_hi_and_ver | 16 bits (48-63) | Version 4 bits (0001) + 12 bits de poids fort de l’horodatage. |
| clock_seq | 16 bits (64-79) | Variante (10) + compteur de séquence d’horloge. |
| node | 48 bits (80-127) | Adresse de nœud (multicast simulé aléatoirement). |
✓
Avantages & Points forts
- •Résolution temporelle fine de 100 nanosecondes.
- •Garantie d’unicité matérielle sur réseaux distribués historiques.
!
Considérations & Compromis
- •Risque de fuite de l’adresse MAC matérielle réelle dans les implémentations historiques.
- •Ne se trie pas naturellement sous forme textuelle car les octets de poids faible sont placés en tête.
Idéal pour
- →Systèmes distribués historiques conçus sous RFC 4122 v1.
- →Colonnes TimeUUID dans Apache Cassandra et ScyllaDB.
À éviter pour
- ✕Nouvelles architectures web et cloud (préférez UUIDv7).
Exemples d'implémentation de code
Python Standard LibraryPython
import uuid
id = uuid.uuid1()
print(id)Foire Aux Questions
Ce générateur expose-t-il mon adresse MAC réelle ?▼
Non. Conformément à la RFC 9562, nous générons une adresse de nœud aléatoire pour préserver votre vie privée.
Pourquoi l’UUIDv1 ne se classe-t-il pas chronologiquement ?▼
Parce que les bits de moindre poids temporel (time_low) sont placés au tout début de la chaîne hexadécimale.