Utilia

Generator UUID

Generator UUID gratuit pentru versiunile 4 și 7. Creează până la 1.000 deodată, cu majuscule sau fără cratime, apoi copiază sau descarcă ca .txt.

Versiune

Cum folosești generatorul de UUID

  1. Alege versiunea UUID: v4 pentru identificatori complet aleatorii sau v7 pentru identificatori ordonați în timp.
  2. Introdu Câte UUID-uri ai nevoie, de la 1 până la 1.000.
  3. Dacă vrei, activează rezultatul cu Majuscule sau elimină Cratime, dacă sistemul în care le introduci așteaptă forma compactă de 32 de caractere.
  4. Apasă Generează, apoi copiază lista în clipboard sau descarcă-o ca fișier .txt, cu un UUID pe linie.

Ce este un UUID?

Un UUID (Universally Unique Identifier), cunoscut și ca GUID în lumea Microsoft, este o valoare de 128 de biți folosită ca să identifice ceva fără să fie nevoie de o autoritate centrală care să distribuie numerele. Se scrie de obicei ca 32 de cifre hexazecimale în cinci grupuri separate prin cratime, în tiparul 8-4-4-4-12, de exemplu f47ac10b-58cc-4372-a567-0e02b2c3d479. Prima cifră a grupului al treilea este versiunea, iar prima cifră a grupului al patrulea codifică varianta (8, 9, a sau b pentru UUID-urile standard).

Deoarece orice calculator poate crea un UUID independent, cu o șansă neglijabilă de coliziune, UUID-urile sunt folosite pe scară largă drept chei primare în baze de date, ID-uri de cerere și de corelare în jurnale, nume de fișiere pentru încărcări, chei de idempotență pentru API-uri și identificatori în sisteme distribuite, unde mai multe servere creează înregistrări în același timp.

Versiunea 4 sau versiunea 7

Ambele versiuni sunt definite în RFC 9562, standardul din 2024 care a înlocuit RFC 4122.

UUID v4 este aproape în întregime aleatoriu: 122 din cei 128 de biți vin dintr-un generator aleatoriu, iar ceilalți 6 biți conțin versiunea și varianta. Nu dezvăluie nimic despre când sau unde a fost creat. Șansa de coliziune este atât de mică încât ar trebui să generezi aproximativ 103 trilioane de UUID-uri v4 ca să ajungi la o probabilitate de unu la un miliard pentru un singur duplicat. Alege v4 când vrei identificatori opaci, care nu poartă nicio informație.

UUID v7 începe cu un marcaj temporal Unix de 48 de biți în milisecunde, urmat de versiune, variantă și 74 de biți aleatorii. Drept urmare, UUID-urile v7 generate mai târziu se sortează după cele generate mai devreme. Asta contează mult pentru bazele de date: cheile v4 aleatorii sunt inserate în poziții împrăștiate într-un index B-tree, provocând împărțiri de pagini și localitate slabă a memoriei cache, în timp ce cheile v7 sunt adăugate aproape de final, la fel ca un număr întreg cu auto-incrementare. Alege v7 pentru chei primare și pentru orice vrei să sortezi după momentul creării. Ține minte că momentul creării poate fi citit dintr-un UUID v7, deci evită-l când acea informație de timp este sensibilă.

Caracter aleatoriu și securitate

Instrumentul folosește generatorul de numere aleatorii sigur criptografic al browserului (API-ul Web Crypto), nu Math.random(), care nu este conceput să fie imprevizibil. UUID-urile sunt generate local pe dispozitivul tău și nu sunt trimise sau înregistrate niciodată de un server, deci nimeni altcineva nu vede valorile pe care le creezi.

Cu toate acestea, un UUID este un identificator, nu un secret. Nu te baza doar pe un UUID imposibil de ghicit pentru a proteja un document privat sau un link de resetare a parolei; combină-l cu autentificare corespunzătoare și cu expirare.

Opțiuni de formatare

Forma canonică este cu litere mici și cu cratime, iar RFC 9562 recomandă rezultatul cu litere mici. Unele sisteme, precum instrumentele Windows mai vechi sau anumite baze de date, afișează GUID-urile cu majuscule, iar unele formate de stocare preferă forma de 32 de caractere fără cratime. Ambele opțiuni schimbă doar reprezentarea text; valoarea de 128 de biți de dedesubt este identică, iar majoritatea analizoarelor acceptă toate aceste forme.

Întrebări frecvente

Sunt UUID-urile garantat unice?

Nu strict garantat, dar probabilitatea unei coliziuni cu biți aleatorii generați corect este atât de mică încât poate fi ignorată în practică. Riscurile reale vin din generatoare aleatorii defecte sau din copierea valorilor de mână, nu din format.

Să folosesc UUID v4 sau v7 drept cheie primară într-o bază de date?

Pentru majoritatea proiectelor noi, v7 este alegerea mai bună: păstrează indecșii compacți și inserările rapide, deoarece valorile sosesc în ordine aproximativ crescătoare. Folosește v4 dacă nu vrei ca momentul creării să fie vizibil în identificator.

Este un GUID același lucru cu un UUID?

Da. GUID este numele pe care îl folosește Microsoft pentru același format de 128 de biți. Un GUID din .NET sau SQL Server este interschimbabil cu un UUID de pe alte platforme.

Pot intra în conflict două UUID-uri v7 create în aceeași milisecundă?

Au același prefix de marcaj temporal, dar cei 74 de biți aleatorii rămași fac un conflict extrem de improbabil. În aceeași milisecundă, ordinea lor relativă nu este garantată să corespundă exact ordinii creării.

De ce sunt cratimele opționale?

Cratimele există doar pentru lizibilitate. Eliminarea lor produce un șir hexazecimal de 32 de caractere care reprezintă exact aceeași valoare, pe care unele API-uri și formate de stocare o preferă.