De Universally Unique Identifier (UUID), ook wel bekend als de Globally Unique Identifier (GUID), wordt veel gebruikt in computersystemen.
Het is een 128-bits code die door het systeem wordt gegenereerd op basis van variabelen en constanten: huidige tijd, MAC-adres, SHA-1 hash, MD5-naamruimte. Het eindresultaat van het genereren van een UUID, weergegeven als een alfanumerieke code van 32 tekens gescheiden door koppeltekens, lijkt willekeurig, maar is in feite het resultaat van complexe berekeningen. Een computer 'verzint' dus geen code, maar vormt deze uit specifieke technische grootheden die op een bepaald moment relevant zijn.
De waarschijnlijkheid dat dezelfde UUID op verschillende tijdstippen op twee verschillende computers wordt gegenereerd, neigt naar nul, wat het mogelijk maakt om de resulterende codes te gebruiken voor punt-/lokale gegevensidentificatie zonder verwijzing naar het coördinatiecentrum. Tegenwoordig is UUID/GUID alomtegenwoordig in zowel online als offline netwerken en werkt het niet alleen effectief op het wereldwijde internet, maar ook in stand-alone computersystemen.
UUID-geschiedenis
128-bits UUID-codes werden in de jaren tachtig voor het eerst gebruikt door het Amerikaanse bedrijf Apollo Computer. Ze waren gebaseerd op de eenvoudigere 64-bits codes die worden gebruikt in Domain/OS en werden veel gebruikt in de computeromgeving van de Open Software Foundation.
Met de komst van de eerste Windows-platforms werd de wereldwijd unieke identificatie gegeneraliseerd en gestandaardiseerd. Microsoft nam het DCE-ontwerp over van Apollo Computer en registreerde de URN-naamruimte in RFC 4122. In 2005 werd de laatste als nieuwe standaard voorgesteld door de IETF en werd UUID binnen de ITU gestandaardiseerd.
Eerder in 2002 werden systeemprestatieproblemen vastgesteld bij het gebruik van UUID's als primaire sleutels in lokale databases. Deze werden in versie 4 opgelost door een niet-willekeurig achtervoegsel toe te voegen op basis van de systeemtijd van de computer. De zogenaamde COMB (Combined GUID Time Identifier)-benadering verhoogde de risico's van codeduplicatie, maar verbeterde tegelijkertijd de prestaties aanzienlijk bij het werken met Microsoft SQL Server.
Met de ontwikkeling van IT-technologieën is de universele unieke identificatie niet langer een zeer gespecialiseerd technisch hulpmiddel, en tegenwoordig kan iedereen het gebruiken. De kans op herhaling van de gegenereerde codes is niet gelijk aan nul, maar neigt ernaar, en alle digitale informatie kan door hen worden geïdentificeerd, waarna ze kunnen worden gecombineerd tot enkele data-arrays met minimale kans op herhaling.
UUID-voordelen
Generatoren van wereldwijde unieke codes vereisen geen gecentraliseerde afstemming/synchronisatie van gegevens en zijn gratis beschikbaar voor alle gebruikers. De belangrijkste voordelen van UUID zijn:
- Minimaal risico op "botsing" (herhaling) van codes. Ondanks hun massale gebruik neigt de kans op herhaling naar nul.
- Mogelijkheid om verschillende gegevensarrays samen te voegen met behulp van UUID's als primaire (unieke) sleutels.
- Vereenvoudigde distributie van gegevens over meerdere verspreide servers.
- Mogelijkheid om codes offline te genereren.
Unieke identificatiecodes, geschreven in het formaat xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx, stellen verspreide systemen in staat om informatie te herkennen zonder coördinatie vanuit een enkel datacenter: met een bijna nul kans op fouten / herhalingen. Deze functie, samen met het gebruiksgemak en lage vereisten voor computerprestaties, maakt UUID veelgevraagd en onmisbaar in een grote verscheidenheid aan IT-industrieën en autonome computersystemen.