ByteCompress

Generatore UUID

Genera UUID Versione 4 casuali in modo criptografico istantaneamente nel tuo browser. Generazione singola o in massa utilizzando l'API Web Crypto secondo RFC 9562.

51
FreeClient-sideNo signup

UUID v4 ha 122 bit casuali, offrendo circa 5.3×1036 valori possibili. Per avere una probabilità del 50% di una singola collisione, dovresti generare 2.71×1018 UUID. A un miliardo al secondo, ci vogliono 85 anni. UUID v4 è standardizzato in RFC 9562 (successore di RFC 4122) ed è il formato identificativo più ampiamente utilizzato nei moderni sistemi distribuiti. Questo generatore utilizza l'API crypto.randomUUID() del browser, supportata dal CSPRNG del sistema operativo. Genera un UUID o centinaia alla volta - nessun server, nessuna registrazione.

Come Generare UUID

  1. Clicca Genera per creare un singolo UUID istantaneamente.
  2. Inserisci una quantità (es., 10, 100, 1000) e clicca Genera in Massa per generare più UUID contemporaneamente.
  3. Clicca su qualsiasi UUID nella lista per copiarlo singolarmente, o usa Copia Tutto per copiare l'intera lista.
  4. Scegli il formato di output maiuscolo o minuscolo come richiesto dal tuo sistema di destinazione.
  5. Usa Scarica per esportare come file di testo.

UUID v4 Spiegato

Struttura e Formato

Un UUID è composto da 32 caratteri esadecimali in un modello 8-4-4-4-12: xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx. Il 4 nel terzo gruppo è fisso (versione 4). I primi 1-2 bit del quarto gruppo sono fissi come 10 in binario (variante RFC 4122). I restanti 122 bit sono generati casualmente. UUID v4 appare in tutti i principali fornitori di cloud, sistemi di database e framework web come formato identificativo predefinito.

Probabilità di Collisione

Con 2122 valori possibili (~5.3×1036), generare un UUID v4 duplicato da un CSPRNG adeguato è statisticamente trascurabile per qualsiasi applicazione reale. Le collisioni UUID v4 sono considerate impossibili per scopi pratici.

Esempio

UUID v4 Generato

f47ac10b-58cc-4372-a567-0e02b2c3d479

Stesso UUID in diverse rappresentazioni

Con trattini:  f47ac10b-58cc-4372-a567-0e02b2c3d479
Maiuscolo:     F47AC10B-58CC-4372-A567-0E02B2C3D479
Senza trattini: f47ac10b58cc4372a5670e02b2c3d479
Formato URN:   urn:uuid:f47ac10b-58cc-4372-a567-0e02b2c3d479

Versioni UUID a Confronto

  • v1 - Basato sul tempo, incorpora l'indirizzo MAC della macchina generatrice. Espone informazioni hardware e ha schemi sequenziali. Evitare per identificatori sensibili alla sicurezza.
  • v3 / v5 - Basati su nome e deterministici: lo stesso input namespace + nome produce sempre lo stesso UUID. Utile per identificatori riproducibili.
  • v4 - Completamente casuale (122 bit). Nessuna informazione incorporata, nessuno schema sequenziale. Il tipo più utilizzato per identificatori generati dall'applicazione.
  • v7 - UUID casuali ordinati nel tempo (RFC 9562). I primi 48 bit sono un timestamp Unix in millisecondi, rendendo gli UUID v7 ordinabili per tempo di creazione. Migliore per le prestazioni degli indici B-tree del database rispetto a v4.

Usi Comuni

  • Chiavi primarie in PostgreSQL (uuid type), MySQL (VARCHAR(36)), e MongoDB
  • ID di sistemi distribuiti dove più servizi creano record in modo indipendente senza una sequenza centrale
  • Identificatori di risorse API esposti in URL pubblici (più sicuri rispetto a interi sequenziali che abilitano attacchi di enumerazione)
  • Nomi di file per asset caricati per prevenire collisioni
  • Chiavi di idempotenza per richieste API per prevenire elaborazioni duplicate in caso di ripetizione

Per generare password casuali sicure (anziché identificatori), usa il Generatore di Password. Per identificatori basati sul tempo che siano anche ordinabili nel database, cerca il supporto per UUID v7 nel tuo driver di database o ORM.

Domande Frequenti

Quanto è unico un UUID di Versione 4 in pratica?

UUID v4 ha 122 bit di casualità, offrendo circa 5.3×1036 valori possibili. Per avere una probabilità del 50% di una singola collisione, dovresti generare 2.71×1018 UUID - a un miliardo al secondo, ci vorrebbero circa 85 anni. Per tutte le applicazioni pratiche, le collisioni UUID v4 sono considerate impossibili.

Gli UUID generati qui sono criptograficamente sicuri?

Sì. Questo strumento utilizza crypto.randomUUID() (o crypto.getRandomValues() come fallback), entrambi supportati dal CSPRNG del sistema operativo. Gli UUID generati sono adatti per essere utilizzati come token di sicurezza, identificatori di sessione e in altri contesti sensibili alla sicurezza.

Dovrei usare UUID o interi auto-incrementali come chiavi primarie del database?

Entrambi hanno dei compromessi. UUID v4 funziona bene nei sistemi distribuiti dove più nodi generano ID in modo indipendente, rende gli ID imprevedibili negli URL pubblici (prevenendo attacchi di enumerazione) e semplifica la fusione dei database. Gli interi auto-incrementali sono più semplici, più piccoli (4-8 byte rispetto a 16 byte) e hanno migliori prestazioni degli indici B-tree per inserimenti sequenziali. UUID v7 offre un compromesso: UUID casuali che sono anche ordinabili nel tempo.

Qual è il formato di un UUID?

Un UUID è composto da 32 caratteri esadecimali minuscoli raggruppati con trattini in un modello 8-4-4-4-12: xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx. La lunghezza totale della stringa con i trattini è di 36 caratteri. PostgreSQL memorizza gli UUID come un tipo binario nativo di 16 byte; MySQL e SQLite memorizzano tipicamente la stringa di 36 caratteri.

Posso generare UUID offline?

Sì. Una volta caricata questa pagina, la generazione di UUID avviene interamente utilizzando JavaScript locale e l'API crypto integrata del browser. Non vengono effettuate richieste di rete durante la generazione. Lo strumento funziona offline dopo il caricamento iniziale della pagina.