Aller au contenu principal

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

Max 5 000
Formatage et Structure

Prêt

No batch active
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.

ChampPlage de BitsRôle & Description
time_low32 bits (0-31)32 bits de poids faible de l’horodatage grégorien.
time_mid16 bits (32-47)16 bits intermédiaires de l’horodatage.
time_hi_and_ver16 bits (48-63)Version 4 bits (0001) + 12 bits de poids fort de l’horodatage.
clock_seq16 bits (64-79)Variante (10) + compteur de séquence d’horloge.
node48 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.