Salta al contenuto principale

Generatore UUID Versione 1

UUIDv1 • Timestamp Gregoriano & MAC Simulato
00000000-0000-0000-0000-000000000000
Racchiudi:

Generazione UUID in Massa

Max 5.000
Formattazione e Struttura

Pronto

No batch active
Standard Legacy•RFC 9562 Sezione 5.1 / RFC 4122

Specifiche Tecniche UUID Versione 1 (Timestamp Gregoriano)

UUIDv1 genera identificatori a 128 bit basati su un timestamp gregoriano a 60 bit (a intervalli di 100 nanosecondi dal 15 ottobre 1582) combinato con una sequenza di clock e l'indirizzo hardware del nodo.

Layout dei Bit e Struttura Binaria

Distribuzione dettagliata dei 128 bit secondo gli standard RFC.

Nome CampoIntervallo BitScopo e Descrizione
time_low32 bit (0-31)Primi 32 bit inferiori del timestamp gregoriano.
time_mid16 bit (32-47)16 bit centrali del timestamp gregoriano.
time_hi_and_ver16 bit (48-63)4 bit di versione (0001) + 12 bit superiori del timestamp.
clock_seq16 bit (64-79)2 bit di variante (10) + contatore di sequenza a 14 bit.
node48 bit (80-127)Identificatore del nodo (indirizzo simulato per salvaguardare la privacy).
✓

Vantaggi e Punti di Forza

  • •Altissima risoluzione temporale (intervalli di 100 nanosecondi).
  • •Garanzia di unicità globale attraverso il coordinamento del nodo hardware.
!

Considerazioni e Compromessi

  • •Rischi di sicurezza e privacy dovuti alla divulgazione dell'indirizzo MAC fisico nei sistemi storici.
  • •Non ordinabile lessicograficamente poiché i bit temporali meno significativi si trovano all'inizio.

Ideale per

  • →Integrazione con architetture legacy che dipendono da RFC 4122 v1.
  • →Colonne TimeUUID in database noSQL come Apache Cassandra e ScyllaDB.

Da evitare per

  • ✕Nuovi progetti web e architetture cloud moderne (UUIDv7 è il sostituto raccomandato).

Esempi di Implementazione del Codice

Python Standard LibraryPython
import uuid

id = uuid.uuid1()
print(id)

Domande Frequenti

Questo generatore espone il mio vero indirizzo MAC?▼
No. In conformità con la normativa RFC 9562, utilizziamo un identificatore di nodo generato casualmente con bit multicast attivo per garantire la privacy.
Perché UUIDv1 non si ordina cronologicamente come stringa?▼
Perché i bit del timestamp sono memorizzati in ordine inverso: la componente time_low occupa i primi 8 caratteri esadecimali.