UltKit

UUID sortzailea

Sortu 4. bertsioko UUID ausazkoak, batetik ehunera aldi bakoitzean, eta kopiatu zerrenda gisa. Nabigatzailearen ausazko zenbaki-sorgailu kriptografikoki seguruak sortzen ditu, eta egiaztatzaile batek itsasten duzun edozein UUIDren bertsioa eta aldaera adierazten dizkizu.

0 karaktere · 0 hitz · 0 lerro

Nabigatzaile-fitxa honetan bertan exekutatzen da. Zure testua ez da inoiz igotzen edo gordetzen.

UUID bertsioak

Bertsioa hirugarren taldearen lehen digitua da; aldaera laugarren taldearen lehen digituan kodetzen da (8, 9, a edo b RFC UUIDetan). Adibideak RFC 9562ko proba-bektoreak dira.

BertsioaOinarriaAdibidea
v1Denbora-zigilu gregorianoa + nodoaren (MAC) IDac232ab00-9414-11ec-b3c8-9f6bdeced846
v3Izen-espazio baten + izen baten MD5 hash-a5df41881-3aed-3515-88a7-2f4a814cf09e
v4122 bit ausazko919108f7-52d1-4320-9bac-f847db4148a8
v5Izen-espazio baten + izen baten SHA-1 hash-a2ed6657d-e927-568b-95e1-2665a8aea6a2
v6v1 denbora-zigilua berrordenatuta, IDak denboraren arabera ordenatzeko1ec9414c-232a-6b00-b3c8-9f6bdeced846
v7Unix milisegundoak + ausazko bitak, ordenagarria017f22e2-79b0-7cc3-98c4-dc0c0c07398f
v8Aplikazioak definitutako diseinu pertsonalizatua2489e9ad-2ee2-8e00-8ec9-32d5f69181c0

Zer da UUID bat eta nola irakurri

UUID bat (identifikatzaile bakar unibertsala; Microsoften softwarean GUID deitzen zaio) 128 biteko zenbakia da, 32 digitu hexadezimal gisa idatzia, 8-4-4-4-12 taldeetan, adibidez f47ac10b-58cc-4372-a567-0e02b2c3d479. RFC 4122 estandarrean arautu zen 2005ean; 2024ko maiatzean dokumentu hori RFC 9562k ordezkatu zuen, zeinak lehengo bertsioak mantentzen dituen eta hiru berri gehitzen dituen. Bi posizio finkoak dira: hirugarren taldeko lehen digitua bertsioa da (4372n, 4), eta laugarren taldeko lehen digituak barianteari egiten dio erreferentzia, RFCri jarraitzen dion UUID guztietan 8, 9, a edo b dena.

4. bertsioak gainerako 122 bitak ausazko datuekin betetzen ditu. Espazio hori hain da handia, non gutxi gorabehera 2,7 kintilioi (2,7 × 10¹⁸) sortu beharko zenituzkeela erreplika bakar baten % 50eko probabilitaterako; horregatik sortzen dituzte sistemek v4 IDak makina askotan modu independentean, koordinatu gabe. Orri honek crypto.randomUUID erabiltzen du, edo crypto.getRandomValues hura ez dagoen tokian, inoiz ez Math.random, haren irteera ez baita aurreikusiezina izateko diseinatua. Maiuskulak eta Marratxorik gabe aukerek formatua soilik aldatzen dute; balioa bera da, eta analizatzaile gehienek bi kasuak onartzen dituzte.

v4, v7 eta gainerako bertsioak

1. eta 6. bertsioak denbora-zigilu batetik eta nodo-ID batetik eraikitzen dira, jatorrian ordenagailuaren MAC helbidea, eta horrek IDa non eta noiz sortu zen agerian uzten du. 3. eta 5. bertsioek izen-espazio bat eta izen bat hasha egiten dituzte MD5 edo SHA-1ekin, beraz sarrera berak UUID bera ematen du beti. 8. bertsioa egitura librea da eskema pertsonalizatuentzat. Berrien artean garrantzitsuena 7. bertsioa da: milisegundotan emandako 48 biteko Unix denbora-zigilu batekin hasten da eta gainerakoa ausazko bitez betetzen du, beraz IDak sorrera-ordenan ordenatzen dira.

Ordena horregatik komeni da v7 datu-baseetako gako primarioetarako. v4 gako aleatorioak B-tree indize osoan sakabanatzen dira, orriak zatituz eta cache-lokalitatea kaltetuz taula hazten doan heinean; v7 gakoak, berriz, gutxi gorabehera gorantz doan ordenan iristen dira, auto-increment zutabe batean bezala, baina zenbatzaile zentralik gabe sor daitezke. Aukeratu v4 ezer agerian uzten ez duen ID bat nahi baduzu, sorrera-unea barne; aukeratu v7 txertaketen errendimenduak eta denbora-ordenak axola badute. UUID bat identifikatzailea da, ez sekretua: pasahitzetarako eta API sekretuetarako erabili pasahitz sortzaile berezi bat. Kodetzaile eta ikuskatzaile gehiago garatzaileentzako tresnetan daude.

Maiz egiten diren galderak

Ausaz sortutako bi UUID berdinak izan daitezke inoiz?
Teorian bai, praktikan ez. 122 ausazko bitekin, segundoko mila milioi v4 UUID 86 urtez sortuta ere, talka bakar baterako % 50eko probabilitatea izango litzateke gutxi gorabehera, ausazko iturria sendoa bada.
Zer desberdintasun dago UUID baten eta GUID baten artean?
Funtsean ezer ez. GUID da Microsoftek 128 biteko identifikatzaile beraren izena. Microsoften tresna batzuek GUIDak maiuskulaz edo giltza artean erakusten dituzte, eta hemengo egiaztatzaileak onartzen du.
Nola jakin dezaket UUID bat zein bertsiotakoa den?
Begiratu hirugarren taldeko lehen digituari: 4 ausazkoa da, 7 denboraren arabera ordenatua, 1 denbora-zigilua eta nodoa. Itsatsi UUID bat egiaztatzeko tresnan bertsioa eta bariantea ikusteko.
UUIDv7 erabili behar al dut v4-ren ordez datu-baseko gakoetarako?
Askotan bai. v7 gakoak denboraren arabera ordenatuta daude, eta horrek B-tree indizeak trinko mantentzen ditu eta txertaketak azkarrak. Mantendu v4 v7 ID baten barruko sorrera-ordua pribatua izan behar bada.
Segurua al da UUID bat pasahitza berrezartzeko token gisa erabiltzea?
Sorgailu seguru batetik datorren v4 UUID batek 122 ausazko bit ditu, asmaezina izateko nahikoa, baina liburutegi askok iraungitze esplizituko token-funtzio bereziak eskaintzen dituzte. Ez erabili inoiz denboran oinarritutako bertsioak, v1 edo v7, sekretu gisa.