Scegli generazione o analisi
Esempio fisso
12816 × 8Usa Genera UUID quando ti servono nuovi valori v4 o v7. Usa Valida e analizza quando hai un identificatore esistente e vuoi forma canonica, variante, versione o timestamp UTC v7.
Genera UUID v4 o v7 con casualità sicura del browser. Analizza struttura e ora v7 ed esporta testo, CSV, JSON o valori SQL.
Genera UUID v4 o v7 con casualità sicura del browser. Analizza struttura e ora v7 ed esporta testo, CSV, JSON o valori SQL.
Esempio fisso
12816 × 8Usa Genera UUID quando ti servono nuovi valori v4 o v7. Usa Valida e analizza quando hai un identificatore esistente e vuoi forma canonica, variante, versione o timestamp UTC v7.
Esempio fisso
8 - 4 - 4 - 4 - 12550e8400-e29b-41d4-a716-446655440000Per la generazione, scegli v4 o v7, inserisci una quantità intera da 1 a 1.000, poi seleziona formato del testo, codifica e formato di uscita attesi dalla destinazione.
Esempio fisso
v4: 122v7: 48 + 74Copia o scarica l’output visibile dopo la generazione. Tratta la convalida come ispezione strutturale: non prova da dove proviene un identificatore, se è segreto o se esiste un record di database.
Per preparare tre risorse API fittizie, scegli UUID v4, quantità 3, Minuscole, Testo semplice e Array JSON, poi Genera UUID. Il risultato è un array di tre stringhe, non tre oggetti con una proprietà id. Aggiungi nel codice gli altri campi richiesti dai dati di prova. Passare il formato di uscita a Uno per riga ti permette di rivedere gli stessi valori senza generarne di sostitutivi; Scarica usa poi l’estensione del formato selezionato. Registra separatamente la versione generata se la fixture ha bisogno di provenienza. Un conteggio di unicità pari a tre controlla solo questo lotto, non le chiavi già presenti in un database.
Per un’indagine sui log, seleziona Valida e analizza e incolla l’esempio v7 fisso 017f22e2-79b0-7cc3-98c4-dc0c0c07398f. Il suo campo ora si legge 2022-02-22T19:22:22.000Z, in UTC, indipendentemente dal tuo fuso di visualizzazione locale. Confronta quell’indizio con un’ora evento registrata indipendentemente; l’identificatore potrebbe essere stato copiato o generato con un orologio sbagliato. Copia in modalità analisi restituisce l’UUID canonico stesso, non un rapporto d’indagine con il timestamp decodificato. Registra l’ora e la sua incertezza nelle tue note se contano per il confronto.
Parti da un valore di prova e dal contratto documentato del sistema ricevente. Un campo testuale UUID può aspettarsi Minuscole e Testo semplice; un campo di scambio binario può aspettarsi Base64 dei 16 byte. Cambiare queste opzioni riformatta lo stesso lotto, quindi puoi confrontare rappresentazioni senza cambiare identità. Conferma che la decodifica riproduca l’UUID originale prima di importare un insieme più grande. In CSV, questo strumento dispone i valori su una riga, non lungo un file a una colonna. Per SQL, fornisce un elenco di stringhe tra apici, non un INSERT eseguibile né una conversione binaria specifica di un database.

GUID e UUID sono usati qui come nomi pratici della stessa famiglia di identificatori a 128 bit. RFC 9562 definisce il layout a 16 ottetti, il campo versione, il campo variante e la forma testuale standard 8-4-4-4-12. ClockTools genera solo UUID v4 e UUID v7, mentre l’analizzatore può identificare le versioni supportate 1-8 con variante RFC più i valori sentinella nullo e massimo.
La generazione è deliberata. All’apertura della pagina non viene generato nulla. Cambiare Versione o Quantità prepara il lotto successivo; non cambia le identità già mostrate. Formato del testo, codifica e formato di uscita riformattano immediatamente i valori esistenti senza generare sostituti. Il pannello del risultato conserva conteggio e versione del lotto che ha effettivamente prodotto quei valori, quindi selezionare v7 dopo aver generato v4 non rietichetta il vecchio lotto come v7.
Questo strumento usa casualità crittografica del browser per ogni UUID generato e non ha alternativa casuale debole. Se Web Crypto non è disponibile o restituisce ripetutamente duplicati nella finestra limitata di tentativi, nessun lotto parziale viene conservato. Questo fallimento è utile perché un’alternativa silenziosa farebbe sembrare il risultato più forte di quanto sia.
8 - 4 - 4 - 4 - 12550e8400-e29b-41d4-a716-446655440000UUID v4 è la scelta casuale di uso generale. Dopo l’impostazione dei bit obbligatori di versione e variante, restano 122 bit casuali. È una buona impostazione predefinita per client indipendenti, dati di prova, identificatori pubblici di risorse e sistemi che non hanno bisogno che l’identificatore stesso riveli un’ora.
UUID v7 inserisce un timestamp Unix in millisecondi nei 48 bit più significativi, poi in questa implementazione usa bit casuali per lo spazio variabile restante. Questo fa sì che valori di millisecondi diversi si ordinino in modo ampio per ora di creazione quando gli orologi avanzano, cosa utile per revisione dei log e alcuni schemi di indice.
La versione 7 non è una promessa di ordine di generazione rigoroso. Questo generatore non aggiunge un contatore monotono né una sequenza sotto il millisecondo. I valori creati nello stesso millisecondo contengono bit finali casuali, e un orologio del dispositivo che torna indietro può disturbare l’ordinamento visibile.
| Scelta | Che cosa genera ClockTools | Utile quando | Limite importante |
|---|---|---|---|
| UUID v4 | Variante RFC con versione 4 e 122 bit casuali | Identificatori casuali indipendenti, fixture, risorse API e righe di database | L’ordinamento è casuale e non porta un’ora di creazione. |
| UUID v7 | Variante RFC con timestamp Unix a 48 bit in millisecondi e bit restanti casuali | Raggruppamento temporale approssimativo per log, eventi e ordine di inserimento | Nessun contatore monotono; problemi dell’orologio del dispositivo influenzano l’ordinamento. |
| Valida e analizza | Non viene generato alcun nuovo identificatore | Controllo di forma canonica, variante, versione, nullo/massimo o ora UTC v7 | La struttura non è provenienza, proprietà, unicità o segretezza. |
La forma familiare con trattini è una presentazione testuale di 16 byte. I cinque gruppi hanno 8, 4, 4, 4 e 12 cifre esadecimali, ma i gruppi non sono stringhe casuali separate. Il nibble di versione appare all’inizio del terzo gruppo e la variante RFC appare nella prima cifra esadecimale del quarto gruppo.
L’esempio v4 pubblico fisso 550e8400-e29b-41d4-a716-446655440000 ha 4 nella posizione della versione e a nella posizione della variante RFC. La cifra di variante può essere 8, 9, a o b per la variante RFC perché i bit iniziali sono 10. Queste posizioni spiegano come l’analisi riconosce i campi; non rivelano se gli altri bit siano stati generati casualmente. Un valore scritto a mano può imitare lo stesso schema.
L’analizzatore riconosce anche valori nullo e massimo come sentinelle speciali. Il nullo è composto da tutti bit zero; il massimo da tutti bit uno. Possono avere significato strutturale in un protocollo, ma non sono identificatori generati casualmente e non vanno confusi con normali valori unici.
| Parte | Esempio | Significato |
|---|---|---|
| Gruppi canonici | 550e8400-e29b-41d4-a716-446655440000 | Cinque gruppi in forma esadecimale 8-4-4-4-12. |
| Nibble di versione | 41d4 inizia con 4 | Versione 4 in questo esempio. |
| Nibble di variante | a716 inizia con a | Variante RFC perché a è una tra 8, 9, a o b. |
| UUID nullo | 00000000-0000-0000-0000-000000000000 | Sentinella riservata tutta zero, non output casuale. |
| UUID massimo | ffffffff-ffff-ffff-ffff-ffffffffffff | Sentinella riservata tutta uno, non output casuale. |
Per UUID v7, ClockTools prende un timestamp in millisecondi dall’orologio del dispositivo per il lotto e lo scrive nei primi sei byte di ogni valore. Ogni valore riceve comunque byte casuali freschi prima che i bit di versione e variante vengano fissati. Se il valore dell’orologio è fuori dall’intervallo del campo timestamp v7 a 48 bit, viene rifiutato e la generazione fallisce, senza troncare il timestamp.
Il conteggio univoco è locale al lotto generato corrente. Il generatore usa un Set e tentativi limitati affinché output casuali duplicati nel lotto richiesto non vengano restituiti. Non consulta un registro globale, un database, un’altra scheda o valori prodotti ieri.
La probabilità non è la stessa cosa di una regola di business. Se chiavi duplicate avrebbero conseguenze, imponi l’unicità dove gli identificatori vengono salvati e gestisci lì gli errori di conflitto. La generazione non può conoscere lo stato della tua applicazione. Una nuova generazione fallita cancella il lotto precedente invece di lasciare un vecchio risultato con l’aspetto di una nuova richiesta riuscita, quindi copia le fixture necessarie prima di sperimentare con il lotto successivo.
| Affermazione | Coperto | Non coperto |
|---|---|---|
| Unico in questo lotto | I valori generati visibili sono distinti tra loro. | Nessun controllo sul tuo database o su altri utenti. |
| Bit casuali v4 | 122 bit casuali dopo il posizionamento di versione e variante. | Nessuna affermazione che il valore sia segreto o abbastanza imprevedibile per un flusso token. |
| Timestamp v7 | Un millisecondo UTC decodificato dai primi 48 bit. | Nessuna prova che l’orologio del creatore fosse accurato o onesto. |
| Nessuna alternativa debole | La generazione si ferma quando Web Crypto non è disponibile. | Nessuna garanzia che ogni fonte di entropia di browser/dispositivo abbia qualità identica. |
I controlli di output cambiano la presentazione, non l’identificatore sottostante. Minuscole, maiuscole, parentesi graffe, virgolette, senza trattini e URN sono formati testuali dello stesso valore UUID. Codifica e formato di uscita sono scelte separate, quindi sceglile in base al sistema ricevente invece di trattare l’output più lungo o più compatto come automaticamente migliore.
La specifica Web Crypto descrive getRandomValues come una sorgente di valori casuali crittograficamente forti, e questa pagina dipende da quell’API del browser per la generazione. La formattazione avviene poi nella pagina: Base64 codifica i 16 byte dell’UUID, Base64 URL usa l’alfabeto sicuro per URL e l’output con codifica URL codifica percentualmente la rappresentazione testuale scelta.
La convalida è ispezione strutturale. Accetta 32 cifre esadecimali o l’esatta forma con trattini 8-4-4-4-12, eventualmente racchiusa o prefissata come URN. Riporta forma canonica, variante, versione e ora v7 quando i campi supportano quella lettura. Non prova casualità, origine, autorizzazione, esistenza in database o uso sicuro come credenziale.
Il formato del testo è utile quando il ricevente si aspetta un UUID stampato. Minuscole è l’output canonico del browser usato dal generatore, maiuscole serve per sistemi con quella convenzione, parentesi graffe e virgolette sono involucri, senza trattini è la forma compatta a 32 esadecimali e URN aggiunge il prefisso urn:uuid:.
La codifica è un livello diverso. Testo semplice conserva esattamente il formato del testo selezionato. L’output con codifica URL codifica percentualmente quel testo. Base64 e Base64 URL ignorano l’involucro del formato del testo e codificano i 16 byte grezzi in ordine di rete; il selettore di formato è disabilitato per quelle codifiche perché parentesi graffe o lettere maiuscole non fanno parte del valore byte.
Il formato di uscita decide come vengono disposti più valori. Uno per riga è il più facile da scorrere. CSV crea una riga di campi separati da virgole. Array JSON è utile per fixture e codice. Valori SQL crea valori tra apici separati da virgole; è una lista di valori, non un’istruzione SQL completa.
| Controllo | Scelta | Conseguenza sull’output |
|---|---|---|
| Formato del testo | Minuscole | Testo minuscolo con trattini come 550e8400-e29b-41d4-a716-446655440000. |
| Formato del testo | Maiuscole | Lo stesso identificatore con A-F maiuscole per sistemi che richiedono quella presentazione. |
| Formato del testo | Parentesi graffe | Avvolge il testo come {550e8400-e29b-41d4-a716-446655440000}. |
| Formato del testo | Tra virgolette | Avvolge ogni valore tra doppi apici prima della gestione del formato di uscita. |
| Formato del testo | Senza trattini | Produce 32 cifre esadecimali per campi compatti. |
| Formato del testo | URN | Aggiunge urn:uuid: prima del testo UUID canonico. |
| Codifica | Testo semplice | Usa esattamente il formato del testo selezionato. |
| Codifica | Base64 | Codifica i 16 byte, per esempio VQ6EAOKbQdSnFkRmVUQAAA==. |
| Codifica | Base64 URL | Usa caratteri Base64 sicuri per URL e rimuove il padding, per esempio VQ6EAOKbQdSnFkRmVUQAAA. |
| Codifica | Codifica URL | Codifica percentualmente il formato del testo selezionato per contesti URL/query. |
| Formato di uscita | Uno per riga | Scrive ogni valore formattato sulla propria riga. |
| Formato di uscita | CSV | Scrive una riga CSV; le virgolette vengono sottoposte a escape dal serializzatore CSV. |
| Formato di uscita | Array JSON | Scrive un array JSON di stringhe con indentazione. |
| Formato di uscita | Valori SQL | Scrive valori tra apici separati da virgole, non un’istruzione INSERT eseguibile. |
Per l’UUID fisso 550e8400-e29b-41d4-a716-446655440000, le codifiche byte sono VQ6EAOKbQdSnFkRmVUQAAA== in Base64 e VQ6EAOKbQdSnFkRmVUQAAA in Base64 URL. Il testo ordinario ha 36 caratteri, l’esadecimale compatto ne ha 32, il Base64 con padding ne ha 24 e questa forma Base64 URL senza padding ne ha 22. Rappresentano gli stessi 16 byte. Codificare invece i 36 caratteri ASCII stampati codificherebbe un input diverso e non darebbe quei risultati byte.
RFC 4648 descrive gli alfabeti Base64 e sicuro per URL. La forma sicura per URL sostituisce i caratteri più e barra usati dal Base64 ordinario e, in questo strumento, omette il padding finale. Le maiuscole e minuscole contano comunque in entrambi gli alfabeti Base64; non trasformare in minuscolo un valore Base64 come se fosse testo UUID esadecimale. La codifica URL è una terza scelta: le parentesi graffe diventano %7B e %7D, mentre lettere, cifre e trattini dell’UUID canonico non richiedono sostituzioni percentuali.
L’ordine dei byte fa parte di un contratto di scambio. Questa pagina codifica i byte nello stesso ordine di rete del testo esadecimale canonico. La documentazione Microsoft di Guid.ToByteArray mostra che il suo output byte senza parametri inverte i primi tre gruppi di campi rispetto al testo. Se il ricevente usa quella rappresentazione, confronta esplicitamente l’ordine dei byte documentato; concordare che entrambi i campi contengono un GUID non stabilisce che le loro stringhe Base64 coincideranno.
Anche le virgolette sono stratificate. Il formato del testo Tra virgolette aggiunge caratteri di virgolette a ogni valore; un formato JSON poi applica l’escape a quei caratteri dentro la sua stringa, e CSV li sottopone a escape dentro un campo. Virgolette con escape aggiuntivo possono quindi essere serializzazione corretta ma comunque sbagliate per un ricevente che voleva un UUID nudo. Minuscole più Testo semplice è un punto di partenza diretto per importazioni JSON e CSV. Valori SQL usa stringhe tra apici singoli; fornisci separatamente la struttura della query circostante e preferisci query applicative parametrizzate invece di incollare stringhe generate in una query live.
| Scelta | Rappresentazione | Contratto ricevente |
|---|---|---|
| Minuscole / Testo semplice | 550e8400-e29b-41d4-a716-446655440000 | Un UUID stampato. |
| Base64 | VQ6EAOKbQdSnFkRmVUQAAA== | 16 byte in ordine di rete codificati con padding. |
| Base64 URL | VQ6EAOKbQdSnFkRmVUQAAA | Gli stessi byte con rappresentazione sicura per URL e senza padding. |
| Parentesi graffe / Codifica URL | %7B550e8400-e29b-41d4-a716-446655440000%7D | Testo codificato percentualmente, non un campo UUID binario. |
Una struttura valida significa che il testo rispetta una forma UUID supportata e che i suoi campi versione e variante possono essere letti. Non prova che l’identificatore sia stato generato da ClockTools, da Web Crypto, da un servizio particolare o all’ora v7 decodificata.
Per UUID v7, il timestamp è una prova utile solo dentro un’indagine più ampia. Può riflettere l’orologio del dispositivo usato da un generatore, un timestamp alterato deliberatamente o un valore di prova copiato. Trattalo come indizio di ordinamento, poi confrontalo con log del server, timestamp del database e registri di audit affidabili.
L’analizzatore accetta esadecimale compatto o testo con trattini, e può rimuovere involucri comuni come parentesi graffe, parentesi tonde, virgolette o un prefisso urn:uuid: prima del controllo. Non decodifica input Base64, Base64 URL o con codifica URL per la convalida; decodifica quelle rappresentazioni nel sistema ricevente prima dell’ispezione strutturale.
L’analisi accetta un identificatore alla volta, non una riga CSV esportata o un array JSON. Usa un valore generato incolla il primo UUID originale del lotto corrente, non la sua visualizzazione codificata, così puoi analizzare un lotto anche mentre Base64 è selezionato. L’analizzatore riconosce le versioni RFC supportate da 1 a 8, ma la generazione offre solo v4 e v7. Un avviso di variante non supportata può comunque mostrare una forma normalizzata; non è una convalida RFC riuscita né un permesso di riscrivere i campi del protocollo di origine.
| Osservazione | Conclusione ragionevole | Non concludere |
|---|---|---|
| Forma canonica mostrata | Il testo fornito può essere normalizzato in testo UUID standard. | Il valore esiste nel tuo database. |
| La variante è RFC 9562 | I bit di variante corrispondono al layout RFC. | Il valore è globalmente unico in ogni sistema. |
| La versione è UUID v7 | Il campo versione è 7 e un timestamp può essere decodificato. | Il timestamp è ora di creazione verificata. |
| UUID nullo o massimo | Il valore è uno schema sentinella riservato. | È stato generato come normale ID casuale. |
| Variante o versione non supportata | La forma assomiglia a un UUID ma resta fuori dalla lettura RFC supportata da questo analizzatore. | L’input è sicuro da riscrivere senza controllare il protocollo di origine. |
Un errore di quantità significa che il conteggio non è un numero intero da 1 a 1.000. Lo strumento non arrotonda, limita o riduce silenziosamente la richiesta. Un errore della sorgente casuale significa che Web Crypto non ha fornito byte casuali utilizzabili, quindi non sono stati generati identificatori.
Un errore di codifica può verificarsi quando un browser non ha l’API necessaria per la codifica di output scelta. Passa a Testo semplice per recuperare il lotto sottostante oppure prova un altro browser. Un fallimento di generazione è diverso: scarta il lotto invece di conservare valori parziali. Errori di appunti, condivisione e download non rigenerano gli identificatori. Quando l’accesso all’esportazione fallisce, seleziona manualmente l’output visibile se è disponibile; controlla i download prima di presumere che un file avviato sia stato salvato.
Non incollare segreti di produzione in una segnalazione UUID. Un UUID può essere pubblico, privato o sensibile alla sicurezza a seconda di come il tuo sistema lo usa, ma la sola forma non lo rende una password. Per bearer token, reset password o credenziali API, usa un generatore di segreti e controlli di ciclo di vita progettati per quello scopo.
| Messaggio o sorpresa | Causa probabile | Controllo successivo |
|---|---|---|
| Errore di conteggio | La quantità è vuota, frazionaria, negativa, zero o sopra 1.000. | Inserisci un numero intero da 1 a 1.000. |
| Casualità sicura non disponibile | L’accesso a Web Crypto del browser è fallito. | Usa un contesto browser moderno e sicuro; non accettare output casuale debole. |
| Errore di duplicati casuali | La finestra limitata di tentativi non è riuscita a riempire un lotto unico. | Genera di nuovo e indaga la sorgente casuale se si ripete. |
| Errore dell’orologio per v7 | L’ora del dispositivo non entra nel campo timestamp v7. | Controlla l’orologio di sistema prima di fare affidamento sull’ordinamento v7. |
Base64 incollato nel validatore fallisce | Il validatore si aspetta testo UUID, non byte codificati. | Decodifica prima il valore o analizza il testo UUID originale. |
La generazione riempie 16 byte con casualità Web Crypto del browser, poi imposta i bit RFC di versione e variante. UUID v4 lascia 122 bit casuali dopo quei campi fissi. UUID v7 scrive un timestamp Unix in millisecondi dell’orologio del dispositivo nei primi 48 bit per il lotto, riempie casualmente i bit variabili restanti e imposta versione 7 più variante RFC. Lo strumento controlla l’unicità solo dentro il lotto generato e formatta i 16 byte risultanti secondo i controlli selezionati.
La generazione supporta solo UUID v4 e v7, con quantità intere da 1 a 1.000. Non sono forniti alternativa casuale debole, registro di unicità globale, ricerca in database, contatore v7 monotono o verifica dell’accuratezza dell’orologio. Gli output Base64 e Base64 URL sono codifiche dei 16 byte, non input accettati dal validatore. Una forma UUID valida non prova origine, proprietà, segretezza, autorizzazione o esistenza di un record.
Per una segnalazione riproducibile, includi modalità, versione, quantità, formato del testo, codifica, formato di uscita, browser, errore visibile esatto e un valore di esempio sicuro. Per problemi di convalida, fornisci la stringa incollata esatta e la variante o versione attesa. Non includere credenziali di produzione, bearer token, identificatori privati di clienti o righe di database quando un UUID di prova pubblico dimostra il problema.