UltKit

Generator UUID

Ustvarite naključne UUID različice 4, od enega do sto hkrati, in jih kopirajte kot seznam. Nastanejo s kriptografsko varnim generatorjem naključnih števil v vašem brskalniku, preverjevalnik pa vam pove različico in varianto vsakega UUID, ki ga prilepite.

0 znakov · 0 besed · 0 vrstic

Deluje povsem v tem zavihku brskalnika. Vaše besedilo se nikoli ne naloži in ne shrani.

Različice UUID

Različica je prva števka tretje skupine; varianta je kodirana v prvi števki četrte skupine (8, 9, a ali b pri UUID-jih po RFC). Primeri so testni vektorji iz RFC 9562.

RazličicaZgrajeno izPrimer
v1Gregorijanski časovni žig + ID vozlišča (MAC)c232ab00-9414-11ec-b3c8-9f6bdeced846
v3Zgoščena vrednost MD5 imenskega prostora + imena5df41881-3aed-3515-88a7-2f4a814cf09e
v4122 naključnih bitov919108f7-52d1-4320-9bac-f847db4148a8
v5Zgoščena vrednost SHA-1 imenskega prostora + imena2ed6657d-e927-568b-95e1-2665a8aea6a2
v6Časovni žig v1 s preurejenim vrstnim redom, da se ID-ji razvrščajo po času1ec9414c-232a-6b00-b3c8-9f6bdeced846
v7Unix milisekunde + naključni biti, razvrstljivo017f22e2-79b0-7cc3-98c4-dc0c0c07398f
v8Poljubna razporeditev, ki jo določi aplikacija2489e9ad-2ee2-8e00-8ec9-32d5f69181c0

Kaj je UUID in kako ga razbrati

UUID (univerzalno enolični identifikator, v Microsoftovi programski opremi imenovan GUID) je 128-bitno število, zapisano kot 32 šestnajstiških števk v skupinah 8-4-4-4-12, na primer f47ac10b-58cc-4372-a567-0e02b2c3d479. Standardiziran je bil leta 2005 v RFC 4122; maja 2024 ga je nadomestil RFC 9562, ki ohranja stare različice in dodaja tri nove. Dve mesti sta določeni vnaprej: prva števka tretje skupine je različica (4 v 4372), prva števka četrte skupine pa kaže varianto, ki je pri vsakem UUID-ju po RFC enaka 8, 9, a ali b.

Različica 4 preostalih 122 bitov zapolni z naključnimi podatki. Ta prostor je tako velik, da bi morali ustvariti okoli 2,7 kvintiljona (2,7 × 10¹⁸) UUID-jev, da bi imeli 50-odstotno možnost za en sam dvojnik, zato sistemi ID-je v4 ustvarjajo neodvisno na številnih računalnikih brez usklajevanja. Ta stran uporablja crypto.randomUUID oziroma crypto.getRandomValues, kjer prvi ni na voljo, nikoli pa Math.random, katerega izhod ni zasnovan tako, da bi bil nepredvidljiv. Možnosti Velike črke in Brez vezajev spremenita samo zapis; vrednost ostane enaka, večina razčlenjevalnikov pa sprejme obe obliki črk.

v4, v7 in druge različice

Različici 1 in 6 sta sestavljeni iz časovnega žiga in ID-ja vozlišča, prvotno naslova MAC računalnika, kar razkrije, kje in kdaj je bil ID ustvarjen. Različici 3 in 5 z MD5 ali SHA-1 zgostita imenski prostor in ime, zato isti vhod vedno da isti UUID. Različica 8 je prosta postavitev za lastne sheme. Najpomembnejši novinec je različica 7: začne se s 48-bitnim časovnim žigom Unix v milisekundah, preostanek pa zapolni z naključnimi biti, zato se ID-ji razvrščajo po času nastanka.

Zaradi tega razvrščanja je v7 vredna premisleka za primarne ključe v zbirkah podatkov. Naključni ključi v4 pristanejo po vsem indeksu B-drevesa, razdelijo strani in z rastjo tabele poslabšajo krajevnost predpomnilnika, ključi v7 pa prihajajo približno naraščajoče kot samodejno naraščajoči stolpec, a jih je mogoče ustvarjati brez osrednjega števca. Izberite v4, kadar želite ID, ki ne razkrije ničesar, tudi časa nastanka; izberite v7, kadar sta pomembna hitrost vstavljanja in časovni vrstni red. UUID je identifikator, ne skrivnost: za gesla in skrivnosti API uporabite namenski generator gesel. Več kodirnikov in pregledovalnikov je med orodji za razvijalce.

Pogosto zastavljena vprašanja

Ali sta lahko dva naključno ustvarjena UUID kdaj enaka?
Teoretično da, v praksi ne. Pri 122 naključnih bitih bi tudi milijarda UUID-jev v4 na sekundo okoli 86 let dala le približno 50-odstotno možnost za eno samo trčenje, če je vir naključnosti zanesljiv.
Kakšna je razlika med UUID in GUID?
V bistvu nobene. GUID je Microsoftovo ime za isti 128-bitni identifikator. Nekatera Microsoftova orodja GUID-e prikažejo z velikimi črkami ali v zavitih oklepajih, kar preverjevalnik tukaj sprejme.
Kako ugotovim, katere različice je UUID?
Poglejte prvo števko tretje skupine: 4 pomeni naključni, 7 časovno urejeni, 1 časovni žig in vozlišče. Prilepite ga v Preveri UUID, da vidite različico in varianto.
Ali naj za ključe v podatkovni zbirki namesto v4 uporabim UUIDv7?
Pogosto da. Ključi v7 so časovno urejeni, kar ohranja indekse B-drevesa kompaktne in vstavljanje hitro. Ostanite pri v4, če mora čas nastanka, vdelan v ID v7, ostati zaseben.
Ali je UUID varno uporabiti kot žeton za ponastavitev gesla?
UUID v4 iz varnega generatorja ima 122 naključnih bitov, kar zadošča, da ga ni mogoče uganiti, vendar številne knjižnice ponujajo namenske funkcije za žetone z izrecnim potekom veljavnosti. Časovnih različic, kot sta v1 ali v7, nikoli ne uporabljajte kot skrivnosti.