# Object Identifier

In der Informatik ist ein Object Identifier (OID) ein weltweit eindeutiger Bezeichner, der benutzt wird, um ein Informationsobjekt zu benennen (vgl. URN). Ein OID stellt einen Knoten in einem hierarchisch zugewiesenen Namensraum dar, der durch den ASN.1-Standard definiert ist. Jeder Knoten ist durch eine Folge von Nummern eindeutig gekennzeichnet, die seine Position beginnend an der Wurzel des Baumes angibt. Neue Knoten zur eigenen Verwendung können bei den entsprechenden Autoritäten des übergeordneten Knotens beantragt werden. Die Regeln für die Vergabe und Registrierung von OIDs sind festgelegt in den Normen ITU-T Rec. ITU-T X.660, ISO/IEC 9834 und DIN 66334. Die Verwaltung des OID-Baumes und die Sicherstellung der Eindeutigkeit von OIDs beruhen auf der Übertragung der Zuständigkeit für die untergeordneten Knoten an den Besitzer (Registration Authority) einer OID.

## Notation

Im internationalen OID-Baum werden alle Kanten von einem Knoten zu Kindknoten durch ganze Zahlen, sogenannte primary integer values, eindeutig identifiziert. Verschiedene Kanten, die von demselben Knoten ausgehen, erhalten verschiedene primary integer values.
Jede Kante ist gleichermaßen mit einer eindeutigen Unicode-Bezeichnung (Unicode label) versehen. Darüber hinaus kann eine Kante eine oder mehrere sekundäre Bezeichnungen (secondary identifiers) haben. Für die sekundären Bezeichnungen gelten die Zeichenrestriktionen für ASN.1-Bezeichnungen (erlaubt sind Buchstaben, Ziffern und Bindestrich; siehe Recommendation ITU-T X.680 | ISO/IEC 8824-1). Die sekundären Bezeichnungen müssen nicht eindeutig sein.
Jedes Objekt ist genau einem Knoten (in der Regel einem Blatt des Baums) zugeordnet. Für ein solches Objekt wird der ASN.1 Object Identifier im engen Sinne als Folge der Kantennummern auf dem Pfad von der Wurzel zu dem entsprechenden Knoten definiert, z. B.:
Um die Lesbarkeit zu verbessern, kann der Wert einer ASN.1 OID unter Verwendung der zugehörigen sekundären Bezeichnungen referenziert werden:
Der ASN.1 OID-IRI (OID internationalized resource identifier) entsteht durch eine durch Slash / separierte Verkettung der Unicode-Bezeichnung:
Durch Unicode-Bezeichnungen referenzierte zusätzlich definierte, von der Wurzel ausgehende Kanten, sogenannte long arcs, kann sich für die OID-IRI eine kürzere äquivalente Schreibweise ergeben (ähnlich symbolischer Links in Dateisystemen).

## Wurzel

Die Kanten von der Wurzel des OID-Baums wurden wie folgt definiert:
Eine Erweiterung durch eine weitere Standardisierungsorganisation ist technisch nicht möglich, da in der Binärkodierung von OIDs wie z. B. der BER/CER/DER-Kodierung zugunsten einer Komprimierung kein weiterer Platz reserviert wurde.

## Anwendungsbeispiele

* In der Informationssicherheit werden OIDs genutzt, um beispielsweise die Objekttypen bei X.509-Zertifikaten eindeutig zu kennzeichnen.
* In X.500-Verzeichnisdiensten werden eindeutige Attribute, Attributtypen und Objekte gekennzeichnet.
* In LDAP-Schemen haben alle Objektklassen und Attributtypen eine eigene OID.
* In der Netzwerktechnik wird im Zusammenhang mit SNMP von OIDs gesprochen, wenn damit ein Objekt aus der Management Information Base gemeint ist.
* Ebenfalls sind OIDs zentraler Bestandteil der HL7 und dient für den Austausch von Daten zwischen Organisationen im Gesundheitswesen und deren Computersystemen.

## Erwerb einer OID

Es gibt viele Wege, eine OID zugewiesen zu bekommen, sowohl kostenpflichtige als auch kostenlose. Ein paar Beispiele:
* Kostenlose Registrierungen sind bei IANA möglich, der Knoten (Präfix) ist 1.3.6.1.4.1 mit der ASN.1-Notation {iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1)}.
* Unter dem Knoten 2.25 kann eine UUID als OID-Komponente verwendet werden, dafür ist keine Registrierung erforderlich.
* Objekte für den standardisierten Datenaustausch im Gesundheitswesen können beim DIMDI (für Deutschland), im OID Portal Österreich oder bei Refdata (für die Schweiz) registriert werden dimdi.de.