Generador d’UUID

Altres eines

Fes girar la roda{$ ',' | translate $} Temporitzador{$ ',' | translate $} Convertidor d’unitat{$ ',' | translate $} Llençar una moneda{$ ',' | translate $} Generador de números aleatoris{$ ',' | translate $} Tirador de daus{$ ',' | translate $} Calculadora d’IMC{$ ',' | translate $} Calculadora de calories{$ ',' | translate $} Calculadora d’IMB{$ ',' | translate $} Calculadora de greix corporal{$ ',' | translate $} Calculadora de TDEE{$ ',' | translate $} Temporitzador Tabata{$ ',' | translate $} Calculadora de percentatges{$ ',' | translate $} Generador de codi QR{$ ',' | translate $} Generador de contrasenyes{$ ',' | translate $} Prova de temps de reacció{$ ',' | translate $} Test de velocitat de mecanografia{$ ',' | translate $} Prova de CPS{$ ',' | translate $} Comptador de paraules{$ ',' | translate $} Convertidor de text{$ ',' | translate $} Comparador de textos{$ ',' | translate $} Calculadora d’hipoteques{$ ',' | translate $} Calculadora de préstecs{$ ',' | translate $} Calculadora de préstecs de cotxe{$ ',' | translate $} Calculadora d’IVA{$ ',' | translate $} Calculadora d’interès compost{$ ',' | translate $} Calculadora de salaris{$ ',' | translate $} Piano virtual{$ ',' | translate $} Generador de soroll de fons{$ ',' | translate $} Metrònom{$ ',' | translate $} Calculadora de descomptes{$ ',' | translate $} Número de la setmana actual{$ ',' | translate $} Calculadora de propines{$ ',' | translate $} Calculadora de temps{$ ',' | translate $} Calculadora de dates{$ ',' | translate $} Calculadora d’edat{$ ',' | translate $} Convertidor de moneda{$ ',' | translate $} Calculadora del son{$ ',' | translate $} Fases de la lluna{$ ',' | translate $} Generador de paletes de colors{$ ',' | translate $} Selector de color{$ ',' | translate $} Generador de paleta de colors{$ ',' | translate $} Calculadora de talla d’anells{$ ',' | translate $} Calculadora de talla de roba{$ ',' | translate $} Calculadora de talla de sabates{$ ',' | translate $} Calculadora de talles de sostenidor{$ ',' | translate $} Calculadora d’ovulació{$ ',' | translate $} Calculadora d’embaràs{$ ',' | translate $} Signes del zodíac{$ ',' | translate $} Test de CI{$ ',' | translate $} Emoji{$ ',' | translate $} Cronòmetre{$ ',' | translate $} Compte enrere{$ ',' | translate $} Despertador{$ ',' | translate $} Calculadora de subxarxa{$ ',' | translate $} Prova de velocitat d’internet{$ ',' | translate $} Adreça IP{$ ',' | translate $} Convertidor Base64{$ ',' | translate $} Generador de hash MD5{$ ',' | translate $} Editor de Markdown{$ ',' | translate $} Generador de Lorem Ipsum{$ ',' | translate $} Temporitzador Pomodoro

Generar UUID/GUID

Generar UUID/GUID

L'identificador únic universal (UUID), també conegut com a identificador únic global (GUID), s'ha utilitzat àmpliament en sistemes informàtics.

És un codi de 128 bits que el sistema genera a partir de variables i constants: hora actual, adreça MAC, hash SHA-1, espai de noms MD5. El resultat final de generar un UUID, que es mostra com un codi alfanumèric de 32 caràcters separats per guionets, pot semblar arbitrari, però de fet és el resultat de càlculs complexos. Així, un ordinador no "inventa" un codi, sinó que el forma a partir de quantitats tècniques específiques que són rellevants en un moment determinat.

La probabilitat que es generi el mateix UUID en dos ordinadors diferents en moments diferents tendeix a zero, la qual cosa permet utilitzar els codis resultants per a la identificació de dades puntuals/locals sense fer referència al centre de coordinació. Avui dia, UUID/GUID és omnipresent tant a les xarxes en línia com fora de línia, i funciona amb eficàcia no només a l'espai global d'Internet, sinó també en sistemes informàtics autònoms.

Historial d'UUID

Els codis UUID de 128 bits van ser utilitzats per primera vegada per l'empresa nord-americana Apollo Computer a la dècada de 1980. Estaven basats en els codis de 64 bits més senzills utilitzats al domini/SO i van trobar un ús generalitzat a l'entorn informàtic de l'Open Software Foundation.

Amb l'arribada de les primeres plataformes Windows, l'identificador únic a nivell mundial es va generalitzar i estandarditzar. Microsoft va adoptar el disseny DCE d'Apollo Computer i va registrar l'espai de noms URN a RFC 4122. L'any 2005, l'IETF va proposar aquest últim com a nou estàndard i l'UUID es va estandarditzar dins de la ITU.

A principis de 2002, es van identificar problemes de rendiment del sistema quan s'utilitzaven els UUID com a claus primàries a les bases de dades locals. Aquests es van solucionar a la versió 4 afegint un sufix no aleatori basat en l'hora del sistema de l'ordinador. L'enfocament anomenat COMB (Combined GUID Time Identifier) ​​augmentava els riscos de duplicació del codi, però al mateix temps millorava significativament el rendiment quan es treballava amb Microsoft SQL Server.

Amb el desenvolupament de les tecnologies informàtiques, l'identificador únic universal ha deixat de ser una eina tècnica altament especialitzada, i avui tothom el pot utilitzar. La probabilitat de repetició dels codis generats no és igual a zero, sinó que hi tendeix, i qualsevol informació digital pot ser identificada per ells, després de la qual cosa es poden combinar en matrius de dades individuals amb un risc mínim de repetició.

Avantatges UUID

Els generadors de codis únics globals no requereixen la conciliació/sincronització de dades centralitzada i estan disponibles gratuïtament per a tots els usuaris. Els principals avantatges de l'UUID inclouen:

  • Riscs mínims de "col·lisió" (repetició) de codis. Malgrat el seu ús massiu, la probabilitat de repetició tendeix a zero.
  • Capacitat d'unir diferents matrius de dades utilitzant UUID com a claus primàries (úniques).
  • Distribució simplificada de dades entre diversos servidors dispersos.
  • Capacitat de generar codis fora de línia.

Els codis d'identificació únics, escrits en el format xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx, permeten als sistemes dispersos reconèixer informació sense coordinació des d'un únic centre de dades: amb una probabilitat gairebé nul·la d'errors/repeticions. Aquesta característica, juntament amb la facilitat d'ús i els petits requisits per al rendiment de l'ordinador, fan que l'UUID sigui demandat i indispensable en una gran varietat d'indústries de TI i sistemes informàtics autònoms.

Identificador únic universal

Identificador únic universal

L'UUID pot generar codis utilitzant diferents algorismes i variables/valors constants.

Hi ha 5 versions de l'identificador en total, que utilitzen la data/hora del sistema i les adreces MAC, els protocols de seguretat DCE, el hash MD5, el hash SHA-1 i l'espai de noms quan es genera.

En tots els casos, el resultat final es mostra en el format xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx (un nombre en notació hexadecimal, format per lletres i números llatins minúscules, i dividit per guionets en cinc blocs: 8-4 -4-4- 12), M significa versió, N significa variant UUID.

Així, el sistema utilitza 36 caràcters alhora (26 lletres i 10 números), de manera que la probabilitat de repetir codis de 32 dígits tendeix a zero, malgrat que els generen diàriament milions d'usuaris a tot el món.

Versions d'UUID

Versió 1

La primera versió de l'identificador únic, quan es genera el codi, es basa en l'adreça MAC de l'ordinador i l'hora del seu sistema, que canvia el seu valor numèric 1 cop per segon. El procés de generació consta de cinc etapes:

  • Els 32 bits d'informació inferiors es prenen de l'etiqueta UTC. Es converteixen a 8 caràcters hexadecimals i ocupen 4 bytes.
  • Una mitjana de 16 bits d'informació es prenen de la mateixa etiqueta UTC i es converteixen en 4 caràcters hexadecimals que ocupen 2 bytes.
  • Els 12 bits superiors d'informació de l'etiqueta UTC s'agafen i es converteixen en 4 caràcters hexadecimals més.
  • En la seqüència del rellotge cauen entre 1 i 3 bits i redueixen els riscos de col·lisions introduint un grau d'aleatorietat/incertesa. L'hora del sistema s'alenteix condicionalment o es retarda, de manera que dos o més identificadors que treballin al mateix ordinador alhora no es "creuïn".
  • Els 6 bytes restants són un valor constant generat en funció de l'adreça MAC del dispositiu. Consta de 12 caràcters hexadecimals i té una mida de 48 bits.

Com que l'algoritme de la primera versió de l'UUID està indissociablement lligat a l'hora del sistema, l'ús de la seqüència de rellotge és obligatori. En cas contrari, els riscos de generar els mateixos codis augmenten moltes vegades, durant el segon, quan el temps del sistema "es congela" en un o altre valor.

Versió 2

La segona versió és mínimament diferent de la primera i rarament s'utilitza a la pràctica. En lloc d'una seqüència de rellotge, utilitza un identificador del sistema lligat a dades d'usuari o altres valors únics que no es repeteixen en altres ordinadors o que es repeteixen molt rarament. L'efecte de l'aleatorietat a la segona versió es minimitza i es pot utilitzar per millorar la seguretat d'un entorn informàtic distribuït.

Versions 3 i 5

Tenen molt en comú: utilitzen noms i noms únics (de l'espai MD5) per crear codis, és a dir, valors no aleatoris. Només la versió 3 utilitza un hash estàndard, mentre que la versió 5 utilitza un hash SHA-1. Aquests identificadors depenen menys de variables aleatòries.

Versió 4

La generació d'aquesta versió UUID és més del 90% aleatòria. Té 6 bits per als valors constants i 122 per als arbitraris. La implementació de l'algorisme és que primer es generen 128 bits d'informació de manera aleatòria i 6 d'ells se substitueixen per dades de versió i variant.

El paper del generador de números pseudoaleatoris a la quarta versió és el màxim, i si té un algorisme massa simple, els riscos de repeticions/col·lisions augmenten significativament. Malgrat això, és la quarta versió que és, amb diferència, la més comuna i utilitzada sovint a la pràctica.

Opcions d'UUID

L'UUID únic s'ha perfeccionat diverses vegades a mesura que s'ha desenvolupat la tecnologia informàtica, i avui es presenta en diverses versions.

Opció 0

Dissenyat per funcionar amb bases de dades de format Apollo Network Computing System 1.5 1988 heretades. Aquesta opció és compatible amb ells i no entra en conflicte amb els UUID històrics de NCS.

Opcions 1 i 2

S'utilitzen per identificar els blocs i matrius de dades moderns, i en forma de text canònic no es diferencien entre si, excepte per l'ordre d'escriptura dels bits variants. Per tant, l'opció 1 utilitza l'ordre de bytes big-endian i l'opció 2 utilitza title-endian. El primer és el principal i el segon es reserva per treballar amb els primers GUID de Microsoft Windows.

Opció 3

Actualment no s'utilitza. És una versió reservada per a un ús futur, quan s'esgotin les possibilitats de les opcions anteriors.

La majoria dels sistemes codifiquen l'identificador en big-endian, però hi ha excepcions. Per exemple, la classificació a les biblioteques COM/OLE de Microsoft utilitza mixed-endian mentre es genera codi a partir dels blocs title-endian i big-endian. El primer són els tres primers components de l'UUID, i el segon són els dos últims.