Globally unique identifier
Een globally unique identifier of GUID (spreek uit: goe-ied) is een pseudowillekeurig getal dat gebruikt wordt in softwaretoepassingen, en dat verondersteld wordt wereldwijd uniek te zijn. Hoewel elke GUID niet 100% gegarandeerd uniek is, is het totaal aantal unieke sleutels (2128 of 3,4028×1038) zo groot dat de kans op de creatie van twee keer dezelfde GUID erg klein is.

GUID's worden in veel toepassingen gebruikt, zoals Oracle-databanken en Novell eDirectory.

Basisstructuur 
Een GUID is een getal van zestien bytes (128 bits), vaak geschreven in hexadecimale vorm, zoals:

3F2504E0 4F89 11D3 9A 0C 03 05 E8 2C 33 01

GUID's worden vaak geschreven in de vorm van acht (hexadecimale) cijfers, dan drie keer vier cijfers, en ten slotte nog eens twaalf cijfers, zoals:

{3F2504E0-4F89-11D3-9A0C-0305E82C3301}

Microsoft gebruikt GUID's in zijn Component Object Model om interfaces van softwarecomponenten te onderscheiden. Hierdoor kunnen twee verschillende versies van een component onderscheiden worden, zelfs als de naam identiek is.

Algoritme 
Het algoritme dat Microsoft gebruikt voor het aanmaken van GUID's heeft al veel kritiek gekregen. Hierin werd vroeger het MAC-adres van de netwerkkaart van de gebruiker genomen als basis voor de laatste groep getallen in de GUID, waardoor documenten zouden kunnen verwijzen naar de computer waarop ze aangemaakt zijn. Deze zwakte werd gebruikt om de maker van het macrovirus Melissa op te sporen.

GUID's die een MAC-adres bevatten kunnen herkend worden aan het cijfer "1" als eerste in de derde groep getallen, bijvoorbeeld {2f1e4fc0-81fd-11da-9156-00036a0f876a}. GUID's die gemaakt zijn met een later algoritme hebben daar het cijfer "4", zoals {38a52be4-9352-453e-af97-5c3b448652f0}.

Subtypes 
Er zijn verschillende soorten GUID's gebruikt in COM:
 IID - interface identifier;
 CLSID - class identifier;
 LIBID - type library identifier;
 CATID - category identifier;

DCOM bracht nog meer GUID-subtypes:
 AppID - application identifier;
 MID - machine identifier;
 IPID - interface pointer identifier; 
 CID - causality identifier; 
 OID - object identifier; 
 OXID - object exporter identifier; 
 SETID - ping set identifier;

Externe links 
 Syntax and semantics of the DCE variant of Universal Unique Identifiers (UUIDs)
 UUID-specificatie
 Universally Unique IDentifier (UUID) URN Namespace

Microsoft Windows
Geheel getal