CodeKitHub
Generaatortööriistad

UUID v4 Generaator veebis

Viimati uuendatud:

Versioon 4 UUID sisaldab 122 juhuslikku bitti, mis annab umbes 5,3 × 10³⁶ võimalikku väärtust — piisavalt palju, et duplikaatide genereerimine on praktikas võimatu. Genereeri kohe üks või palju juhuslikke UUID-e (v4). Kasutab sinu brauseri krüptograafiliselt turvalist juhuslikkuse generaatorit — sama kvaliteediga juhuslikkust, mida kasutab sinu operatsioonisüsteem. Valikud suurtäheliseks väljundiks ja sidekriipsude eemaldamiseks.

Mis see tööriist on?

UUID (universaalselt unikaalne identifikaator) on 128-bitine identifikaator, mis kirjutatakse 36 märgina, näiteks 550e8400-e29b-41d4-a716-446655440000. Versioon 4 UUID-d genereeritakse juhuslikest andmetest, mistõttu kokkulangevused on nii ebatõenäolised, et neid võib praktikas ignoreerida: sa võiksid genereerida miljard UUID-d sekundis aastakümneid, enne kui duplikaat muutub tõenäoliseks.

UUID-e kasutatakse andmebaasi primaarvõtmetena, jälgimispäringute ID-dena, failinimedena, API-võtmetena ja kõikjal, kus vajad identifikaatorit ilma kesksüsteemiga koordineerimata.

UUID-d on standarditud dokumendis RFC 4122, mida 2024. aastal muudeti dokumendina RFC 9562 — muudatus jättis v4 muutmata ja lisas UUIDv7, ajatempliga järjestatud variandi, mis on loodud indekseerima paremini andmebaasi võtmena.

Miks seda kasutada?

  • Krüptograafiliselt turvaline: kasutab crypto.randomUUID(), mitte nõrka Math.random().
  • Hulgigenereerimine — kuni 500 UUID-d korraga, üks rea kohta, valmis kleepimiseks.
  • Suurtähelised ja ilma sidekriipsudeta valikud süsteemidele, millel on kindlad vorminõuded.
  • Töötab võrguühenduseta sinu brauseris; UUID-d ei saadeta kunagi kuhugi.
  • Tasuta ja kohene, ilma sisselogimiseta.

Kuidas kasutada

  1. Vali, mitu UUID-d vajad (1–500).
  2. Vajadusel märgi "Suurtähed" või "Eemalda sidekriipsud".
  3. Klõpsa "Genereeri UUID-d".
  4. Klõpsa "Kopeeri kõik", et kopeerida kogu nimekiri.

Näide

Sisend

Arv: 3

Tulemus

f47ac10b-58cc-4372-a567-0e02b2c3d479
9c858901-8a57-4791-81fe-4c455b099bc9
16fd2706-8baf-433b-82eb-8c7fada847da

Iga UUID genereeritakse sõltumatult turvalistest juhuslikest andmetest.

Levinud kasutusjuhud

  • Andmebaasi primaarvõtmed: UUID-d lubavad sul luua kehtiva ID enne lisamist, mis on kasulik võrguühenduseta rakendustele või kui klient peab kirjet viitama enne, kui server selle kinnitab.
  • Hajutatud süsteemid: mitu serverit saavad genereerida ID-sid sõltumatult, ilma koordineerimata ja ilma kokkulangevuse ohuta — erinevalt automaatse suurendamisega täisarvudest, mis vajavad ühte usaldusväärset allikat.
  • Idempotentsusvõtmed: sama UUID saatmine korduval API-päringul lubab serveril duplikaatsisestuse ära tunda ja ohutult ignoreerida.
  • Testandmed ja algandmed: genereeri korraga sadu unikaalseid ID-sid testandmebaasi täitmiseks või mock API vastuste jaoks.
  • React/Vue nimekirjavõtmed: kui loendielementidel pole veel loomulikku unikaalset ID-d, toimib genereeritud UUID stabiilse võtmena arenduse ajal.

Piirangud, mida teada

UUID-sid ei saa sortida loomisaja järgi — v4 juhuslikkus tähendab, et uued ID-d ei paikne andmebaasi indeksis üksteise lähedal, mis võib mahukates süsteemides kahjustada sisestusjõudlust (sellepärast ongi olemas UUID v7, ajatempliga järjestatud alternatiiv). Kui vajad ajalist järjestust koos unikaalsusega, sobib v7 või Snowflake-tüüpi ID paremini kui v4.

UUID iseenesest ei ole turvamandaat. See on aimamatu selles mõttes, et üht ei saa teisest ennustada, aga see pole kunagi disainitud auditeeritavuse, aegumise ega tühistamise funktsioonidega, mida päris autentimisžetoon vajab — selle jaoks kasuta spetsiaalset seansi/API-žetooni teeki.

Kuidas juhuslikkus tegelikult töötab

V4 UUID-l on 122 tõeliselt juhuslikku bitti (ülejäänud 6 bitti on fikseeritud versiooni ja variandi märkimiseks, vastavalt RFC 4122 spetsifikatsioonile). See tööriist saab selle juhuslikkuse funktsioonist crypto.getRandomValues() brauseri Web Crypto API kaudu — sama allikas, mida kasutatakse TLS-võtmete ja muude krüptograafiliste toimingute jaoks, mitte palju nõrgemast Math.random()-ist, mis on piisavalt ennustatav, et mõnda vanemat UUID-teeki, mis sellel põhines, on kritiseeritud aimatavate ID-de genereerimise eest.

Kokkulangevuse tõenäosust konkreetsemalt: 122 juhusliku bitiga peaksid genereerima umbes 2,71 triljardit UUID-d, enne kui isegi ühe kokkulangevuse tõenäosus jõuab 50%-ni — mitu suurusjärku rohkem, kui ükski rakendus kunagi loob. Sellepärast peetaksegi UUID v4 praktikas efektiivselt kokkulangevusvabaks, kuigi see pole matemaatiliselt võimatu.

Korduma kippuvad küsimused

Kas kaks genereeritud UUID-d saavad kokku langeda?

Teoreetiliselt jah, praktikas mitte. V4 UUID-l on 122 juhuslikku bitti. Kokkulangevuse tõenäosus jääb tühiseks isegi pärast triljonite genereerimist — neid on turvaline pidada unikaalseteks.

Milles seisneb UUID versioonide erinevus?

V1 põhineb ajatempel + MAC-aadress (lekitab teavet), v4 on täiesti juhuslik (kõige levinum valik), v5 tuletatakse nimest räsimise teel (deterministlik) ning v7 on ajaliselt järjestatud juhuslik (hea andmebaasi indeksite jaoks). See tööriist genereerib v4.

Kas need UUID-d on piisavalt turvalised žetoonideks (tokens)?

Need kasutavad krüptograafiliselt turvalist juhuslikkuse allikat, mis on palju parem kui Math.random(). Seansižetoonide jaoks eelistatakse endiselt suurema entroopiaga spetsiaalseid žetoonigeneraatoreid, kuid v4 UUID-d sobivad identifikaatoriteks hästi.

Kas UUID on sama mis GUID?

Jah. GUID (Globally Unique Identifier) on Microsofti nimetus samale 128-bitisele vormingule. Terminid on vahetatavad.

Kas genereeritud UUID-sid salvestatakse või logitakse?

Ei. Genereerimine toimub kohalikult sinu brauseris. Midagi ei edastata, salvestata ega logita — iga UUID, mida näed, eksisteerib ainult sinu ekraanil.

Seotud tööriistad