Utilia

UUID-generator

Gratis UUID-generator for UUID versjon 4 og 7. Lag opptil 1 000 om gangen, med store bokstaver eller uten bindestreker, og kopier eller last ned som .txt.

Versjon

Slik bruker du UUID-generatoren

  1. Velg UUID-versjon under Versjon: v4 for helt tilfeldige identifikatorer eller v7 for tidsordnede identifikatorer.
  2. Skriv inn Hvor mange UUID-er du trenger, fra 1 til 1 000.
  3. Du kan slå på Store bokstaver eller fjerne Bindestreker hvis systemet du skal bruke dem i, forventer den kompakte formen på 32 tegn.
  4. Klikk Generer, og kopier deretter listen til utklippstavlen eller last den ned som en .txt-fil med én UUID per linje.

Hva er en UUID?

En UUID (Universally Unique Identifier), i Microsoft-verdenen også kalt GUID, er en verdi på 128 bit som brukes til å identifisere noe uten at en sentral myndighet trenger å dele ut numre. Den skrives vanligvis som 32 heksadesimale sifre i fem grupper atskilt med bindestreker, i mønsteret 8-4-4-4-12, for eksempel f47ac10b-58cc-4372-a567-0e02b2c3d479. Det første sifferet i den tredje gruppen er versjonen, og det første sifferet i den fjerde gruppen koder varianten (8, 9, a eller b for standard-UUID-er).

Fordi enhver datamaskin kan lage en UUID uavhengig, med en forsvinnende liten sjanse for kollisjon, brukes UUID-er mye som primærnøkler i databaser, forespørsels- og korrelasjons-ID-er i logger, filnavn for opplastinger, idempotensnøkler for API-er og identifikatorer i distribuerte systemer der flere servere oppretter poster samtidig.

Versjon 4 eller versjon 7

Begge versjonene er definert i RFC 9562, standarden fra 2024 som erstattet RFC 4122.

UUID v4 er nesten helt tilfeldig: 122 av de 128 bitene kommer fra en tilfeldighetsgenerator, og de siste 6 bitene inneholder versjon og variant. Den avslører ingenting om når eller hvor den ble laget. Sjansen for kollisjon er så liten at du måtte generere omtrent 103 billioner v4-UUID-er for å nå en sannsynlighet på én av en milliard for ett eneste duplikat. Velg v4 når du vil ha identifikatorer som er ugjennomsiktige og ikke bærer informasjon.

UUID v7 begynner med et Unix-tidsstempel på 48 bit i millisekunder, etterfulgt av versjon, variant og 74 tilfeldige bit. Resultatet er at v7-UUID-er som genereres senere, sorteres etter de som ble generert tidligere. Det betyr mye for databaser: tilfeldige v4-nøkler settes inn på spredte steder i en B-tre-indeks, noe som gir sidedelinger og dårlig bufferlokalitet, mens v7-nøkler legges til nær slutten, omtrent som et heltall med automatisk økning. Velg v7 til primærnøkler og alt du vil sortere etter opprettelsestidspunkt. Husk at opprettelsestidspunktet kan leses ut av en v7-UUID, så unngå den når den tidsinformasjonen er sensitiv.

Tilfeldighet og sikkerhet

Dette verktøyet bruker nettleserens kryptografisk sikre tilfeldighetsgenerator (Web Crypto API), ikke Math.random(), som ikke er laget for å være uforutsigbar. UUID-ene genereres lokalt på enheten din og sendes aldri til eller logges av en server, så ingen andre ser noen gang verdiene du lager.

Likevel er en UUID en identifikator, ikke en hemmelighet. Ikke stol på en uforutsigbar UUID alene for å beskytte et privat dokument eller en lenke for tilbakestilling av passord: kombiner den med skikkelig autentisering og utløpstid.

Formateringsvalg

Den kanoniske formen har små bokstaver og bindestreker, og RFC 9562 anbefaler små bokstaver i utdata. Noen systemer, som eldre Windows-verktøy eller enkelte databaser, viser GUID-er med store bokstaver, og noen lagringsformater foretrekker formen på 32 tegn uten bindestreker. Begge valgene endrer bare tekstframstillingen: den underliggende verdien på 128 bit er identisk, og de fleste parsere godtar alle disse formene.

Ofte stilte spørsmål

Er UUID-er garantert unike?

Ikke strengt garantert, men sannsynligheten for kollisjon med riktig genererte tilfeldige bit er så lav at den kan ignoreres i praksis. De virkelige risikoene kommer fra ødelagte tilfeldighetsgeneratorer eller kopiering av verdier for hånd, ikke fra formatet.

Bør jeg bruke UUID v4 eller v7 som primærnøkkel i en database?

For de fleste nye prosjekter er v7 det beste valget: den holder indeksene kompakte og innsettingene raske fordi verdiene kommer i omtrent stigende rekkefølge. Bruk v4 hvis du ikke vil at opprettelsestidspunktet skal synes i identifikatoren.

Er en GUID det samme som en UUID?

Ja. GUID er navnet Microsoft bruker på det samme formatet på 128 bit. En GUID fra .NET eller SQL Server kan brukes om hverandre med en UUID fra andre plattformer.

Kan to v7-UUID-er laget i samme millisekund kollidere?

De har samme tidsstempelprefiks, men de resterende 74 tilfeldige bitene gjør en kollisjon ekstremt usannsynlig. Innenfor samme millisekund er det ikke garantert at den innbyrdes rekkefølgen samsvarer med den nøyaktige rekkefølgen de ble laget i.

Hvorfor er bindestreker valgfrie?

Bindestrekene er der bare for lesbarhetens skyld. Fjerner du dem, får du en heksadesimal streng på 32 tegn som representerer nøyaktig den samme verdien, og som noen API-er og lagringsformater foretrekker.