UUID generator

Drugi alati

Okreni točak{$ ',' | translate $} Štoperica{$ ',' | translate $} Pretvarač jedinica{$ ',' | translate $} Baci novčić{$ ',' | translate $} Generator slučajnih brojeva{$ ',' | translate $} Baci kockicu{$ ',' | translate $} BMI kalkulator{$ ',' | translate $} Kalkulator kalorija{$ ',' | translate $} KBM kalkulator{$ ',' | translate $} Kalkulator telesne masnoće{$ ',' | translate $} TDEE kalkulator{$ ',' | translate $} Tabata tajmer{$ ',' | translate $} Kalkulator procenta{$ ',' | translate $} Generator QR koda{$ ',' | translate $} Generator lozinki{$ ',' | translate $} Test vremena reakcije{$ ',' | translate $} Test brzine kucanja{$ ',' | translate $} CPS test{$ ',' | translate $} Brojač reči{$ ',' | translate $} Konvertor slova{$ ',' | translate $} Upoređivač teksta{$ ',' | translate $} Kalkulator hipoteke{$ ',' | translate $} Kalkulator zajma{$ ',' | translate $} Kalkulator kredita za auto{$ ',' | translate $} Kalkulator PDV-a{$ ',' | translate $} Kalkulator složene kamate{$ ',' | translate $} Kalkulator zarade{$ ',' | translate $} Virtuelni klavir{$ ',' | translate $} Generator pozadinske buke{$ ',' | translate $} Metronom{$ ',' | translate $} Merač popusta{$ ',' | translate $} Broj trenutne nedelje{$ ',' | translate $} Kalkulator napojnice{$ ',' | translate $} Kalkulator vremena{$ ',' | translate $} Kalkulator datuma{$ ',' | translate $} Kalkulator godina{$ ',' | translate $} Konvertor valuta{$ ',' | translate $} Kalkulator spavanja{$ ',' | translate $} Faze meseca{$ ',' | translate $} Generator palete boja{$ ',' | translate $} Birač boja{$ ',' | translate $} Generator šema boja{$ ',' | translate $} Kalkulator veličine prstena{$ ',' | translate $} Kalkulator veličine odeće{$ ',' | translate $} Kalkulator veličine obuće{$ ',' | translate $} Kalkulator veličine grudnjaka{$ ',' | translate $} Kalkulator ovulacije{$ ',' | translate $} Kalkulator trudnoće{$ ',' | translate $} Horoskopski znaci{$ ',' | translate $} IQ test{$ ',' | translate $} Emoji{$ ',' | translate $} Štoperica{$ ',' | translate $} Odbrojavanje{$ ',' | translate $} Budilnik{$ ',' | translate $} Kalkulator IP podmreže{$ ',' | translate $} Test brzine interneta{$ ',' | translate $} IP adresa{$ ',' | translate $} Base64 konverter{$ ',' | translate $} Generator MD5 hash-a{$ ',' | translate $} Markdown editor{$ ',' | translate $} Generator Lorem Ipsum{$ ',' | translate $} Pomodoro tajmer

Napravite UUID/GUID

Napravite UUID/GUID

Univerzalno jedinstveni identifikator (UUID), poznat i kao globalno jedinstveni identifikator (GUID), se široko koristi u računarskim sistemima.

To je 128-bitni kod koji generiše sistem na osnovu promenljivih i konstanti: trenutno vreme, MAC adresa, SHA-1 heš, MD5 imenski prostor. Krajnji rezultat generisanja UUID-a, koji se prikazuje kao alfanumerički kod od 32 karaktera odvojen crticama, može izgledati proizvoljan, ali u stvari je rezultat složenih proračuna. Dakle, računar ne „izmišlja“ kod, već ga formira od specifičnih tehničkih veličina koje su relevantne u datom trenutku.

Verovatnoća da će isti UUID biti generisan na dva različita računara u različito vreme teži nuli, što omogućava korišćenje rezultujućih kodova za identifikaciju tačaka/lokalnih podataka bez pozivanja na koordinacioni centar. Danas je UUID/GUID sveprisutan u onlajn i oflajn mrežama i efikasno funkcioniše ne samo u globalnom Internet prostoru, već iu samostalnim računarskim sistemima.

UUID istorija

128-bitne UUID kodove je prvi put upotrebila američka kompanija Apolo Computer 1980-ih. Zasnovali su se na jednostavnijim 64-bitnim kodovima koji se koriste u domenu/OS-u i našli su široku primenu u računarskom okruženju Open Softvare Foundation.

Sa pojavom prvih Vindovs platformi, globalno jedinstveni identifikator je generalizovan i standardizovan. Microsoft je usvojio DCE dizajn od Apollo Computer-a i registrovao prostor imena URN u RFC 4122. IETF je 2005. godine predložio ovaj drugi kao novi standard, a UUID je standardizovan u okviru ITU-a.

Ranije 2002. godine, identifikovani su problemi sa performansama sistema kada se koriste UUID-ovi kao primarni ključevi u lokalnim bazama podataka. Ovo je popravljeno u verziji 4 dodavanjem nenasumičnog sufiksa zasnovanog na sistemskom vremenu računara. Takozvani COMB (Combined GUID Time Identifier) pristup povećao je rizik od dupliranja koda, ali je istovremeno značajno poboljšao performanse pri radu sa Microsoft SKL Serverom.

Razvojom IT tehnologija, univerzalni jedinstveni identifikator je prestao da bude visoko specijalizovano tehničko sredstvo, a danas ga svako može koristiti. Verovatnoća ponavljanja generisanih kodova nije jednaka nuli, već teži ka njoj, a svaka digitalna informacija može da se identifikuje po njima, nakon čega se mogu kombinovati u jedinstvene nizove podataka uz minimalne rizike od ponavljanja.

Prednosti UUID-a

Generatori globalnih jedinstvenih kodova ne zahtevaju centralizovano usaglašavanje/sinhronizaciju podataka i slobodno su dostupni svim korisnicima. Glavne prednosti UUID-a uključuju:

  • Minimalni rizici od „sudara“ (ponavljanja) kodova. Uprkos njihovoj masovnoj upotrebi, verovatnoća ponavljanja teži nuli.
  • Mogućnost spajanja različitih nizova podataka koristeći UUID-ove kao primarne (jedinstvene) ključeve.
  • Pojednostavljena distribucija podataka na više disperzovanih servera.
  • Mogućnost generisanja kodova van mreže.

Jedinstveni identifikacioni kodovi, napisani u formatu kkkkkkkk-kkkk-Mkkk-Nkkk-kkkkkkkkkkkk, omogućavaju disperzovanim sistemima da prepoznaju informacije bez koordinacije iz jednog centra podataka: sa skoro nultom verovatnoćom grešaka/ponavljanja. Ova karakteristika, zajedno sa jednostavnošću korišćenja i malim zahtevima za performanse računara, čini UUID traženim i nezamenljivim u širokom spektru IT industrija i autonomnih računarskih sistema.

Univerzalno jedinstveni identifikator

Univerzalno jedinstveni identifikator

UUID može da generiše kodove koristeći različite algoritame i promenljive/konstantne vrednosti.

Postoji ukupno 5 verzija identifikatora, koristeći sistemski datum/vreme i MAC adrese, DCE bezbednosne protokole, MD5 heš, SHA-1 heš i prostor imena kada se generiše.

U svim slučajevima, konačni rezultat se prikazuje u formatu kkkkkkkk-kkkk-Mkkk-Nkkk-kkkkkkkkkkkk (broj u heksadecimalnom zapisu, koji se sastoji od malih latiničnih slova i brojeva, i podeljen crticama u pet blokova: 8-4 -4-4- 12), M označava verziju, N označava UUID varijantu.

Dakle, sistem koristi 36 znakova istovremeno (26 slova i 10 brojeva), tako da je verovatnoća ponavljanja 32-cifrenih kodova nula, uprkos činjenici da ih svakodnevno generišu milioni korisnika širom sveta.

Verzije UUID-a

Verzija 1

Prva verzija jedinstvenog identifikatora, kada se generiše kod, zasniva se na MAC adresi računara i njegovom sistemskom vremenu, koje menja svoju numeričku vrednost 1 put u sekundi. Proces generisanja se sastoji od pet faza:

  • Donja 32 bita informacija su preuzeta iz UTC oznake. Konvertuju se u 8 heksadecimalnih znakova i zauzimaju 4 bajta.
  • Prosečno 16 bitova informacija se uzimaju iz iste UTC oznake i pretvaraju u 4 heksadecimalna znaka koji zauzimaju 2 bajta.
  • Gornjih 12 bitova informacija iz UTC oznake se uzimaju i konvertuju u još 4 heksadecimalna znaka.
  • Još 1-3 bita padaju na sekvencu sata i smanjuju rizik od sudara uvođenjem stepena slučajnosti/neizvesnosti. Sistemsko vreme se ili uslovno usporava ili vraća unazad – tako da se dva ili više identifikatora koji rade na istom računaru u isto vreme ne „ukrste“.
  • Preostalih 6 bajtova su konstantna vrednost koja se generiše na osnovu MAC adrese uređaja. Sastoji se od 12 heksadecimalnih znakova i veličine je 48 bita.

Pošto je algoritam prve verzije UUID-a neraskidivo povezan sa sistemskim vremenom, upotreba sekvence sata je obavezna. U suprotnom, rizici od generisanja istih kodova se višestruko povećavaju - tokom sekunde kada se sistemsko vreme „zamrzne“ na jednoj ili drugoj vrednosti.

Verzija 2

Druga verzija se minimalno razlikuje od prve i retko se koristi u praksi. Umesto sekvence sata, koristi sistemski identifikator vezan za korisničke podatke ili druge jedinstvene vrednosti koje se ne ponavljaju na drugim računarima ili se ponavljaju veoma retko. Efekat slučajnosti u drugoj verziji je minimiziran i može se koristiti za poboljšanje bezbednosti distribuiranog računarskog okruženja.

Verzije 3 i 5

Imaju mnogo toga zajedničkog: koriste jedinstvena imena i imena (iz MD5 prostora) za kreiranje kodova, odnosno nenasumičnih vrednosti. Samo verzija 3 koristi standardni heš, dok verzija 5 koristi SHA-1 heš. Takvi identifikatori manje zavise od slučajnih promenljivih.

Verzija 4

Generacija ove UUID verzije je više od 90% nasumična. Ima 6 bitova za konstantne vrednosti, a 122 za proizvoljne. Implementacija algoritma je da se prvo nasumično generiše 128 bitova informacija, a 6 od njih se zamenjuju podacima o verziji i varijanti.

Uloga generatora pseudoslučajnih brojeva u četvrtoj verziji je maksimalna, a ako ima previše jednostavan algoritam, rizici od ponavljanja/sudara se značajno povećavaju. Uprkos tome, to je četvrta verzija koja je daleko najčešća i često korišćena u praksi.

UUID opcije

Jedinstveni UUID je nekoliko puta usavršavan kako se kompjuterska tehnologija razvijala, a danas je predstavljen u nekoliko verzija.

Opcija 0

Dizajniran za rad sa zastarelim bazama podataka formata Apollo Netvork Computing Sistem 1.5 1988. Ova opcija je kompatibilna sa njima unazad i nije u sukobu sa NCS istorijskim UUID-ovima.

Opcije 1 i 2

Koristi se za identifikaciju savremenih blokova podataka i nizova, a u kanonskom tekstualnom obliku se ne razlikuju jedni od drugih, osim po redosledu pisanja varijantnih bitova. Dakle, opcija 1 koristi big-endian redosled bajtova, a opcija 2 koristi naslov-endian. Prvi je glavni, a drugi je rezervisan za rad sa ranim GUID-ovima iz Microsoft Vindovs-a.

Opcija 3

Trenutno se ne koristi. To je rezervisana verzija za buduću upotrebu - kada se iscrpe mogućnosti prethodnih opcija.

Većina sistema kodira identifikator u big-endian, ali postoje izuzeci. Na primer, razvrstavanje u Microsoft COM/OLE bibliotekama koristi mešoviti-endian dok generiše kod iz blokova naslova-endian i big-endian. Prva su prve tri komponente UUID-a, a druga su poslednje dve.