Generatore di UUID

Genera UUID versione 4 o versione 7. La 4 è casuale. La 7 inizia con l’ora attuale, così gli id nuovi si ordinano dopo i vecchi.

La versione 4 è casuale. La 7 inizia con l’ora

Uno UUID sono 128 bit scritti in esadecimale. La versione 4 è casuale, ed è quella che la maggior parte dei database chiede ancora. La versione 7 mette davanti il tempo Unix in millisecondi, così gli id creati dopo si ordinano dopo i precedenti, come testo o in un indice. Questa pagina li genera nel browser. Non controlla se un id che hai già è unico nel tuo database.

Come si usa

  1. Scegli versione 4 o versione 7. Un risultato compare subito, e di nuovo ogni volta che cambi un’opzione.
  2. «Quanti» va da 1 a 100. Ogni pressione di Genera fa un insieme nuovo.
  3. Maiuscole cambia le lettere esadecimali. I trattini sono accesi di base; spegnili per 32 cifre esadecimali. Le parentesi graffe aggiungono { e }. «Prefisso urn:uuid:» mette quello schema davanti.
  4. Copia il risultato. Non c’è una casella di ingresso, perché qui non si converte nulla.

La forma dell’id

Con i trattini, la forma è 8-4-4-4-12. Il nibble di versione è 4 o 7. Il nibble di variante è il valore RFC 4122, quindi la prima cifra esadecimale del quarto gruppo è 8, 9, a o b. I primi 48 bit della versione 7 sono il tempo Unix attuale in millisecondi: per questo due id fatti a un millisecondo di distanza si ordinano nel tempo se li confronti come testo. Il resto è casuale. La pagina usa la sorgente casuale crittografica del browser quando è disponibile.

Dove si usa

  • Una chiave primaria per una riga che stai per inserire in un database di prova.
  • Un id di richiesta in una riga di log.
  • La versione 7 quando le righe nuove devono raggrupparsi per tempo, senza un ordinamento separato di created-at.

Domande

Due clic possono coincidere?

La versione 4 ha 122 bit casuali. Una coincidenza non è una preoccupazione pratica. La versione 7 può condividere il prefisso temporale nello stesso millisecondo e differire comunque nella coda casuale.

È un segreto?

No. Uno UUID identifica una riga. Non usarlo come password né come token di accesso.