Definition „Universally Unique Identifier“

Was ist eine UUID?

| Autor / Redakteur: chrissikraus / Stephan Augsten

Eine UUID dient dank Standardsisierung als nahezu einzigsartiges Identifikationsmerkmal zur Kennzeichnung von Informationen.
Eine UUID dient dank Standardsisierung als nahezu einzigsartiges Identifikationsmerkmal zur Kennzeichnung von Informationen. (Bild: stux - Pixabay.com / CC0)

Wer Informationen zuverlässig unverwechselbar machen möchte, bedient sich einer UUID. Diese standardisierte Identifikationsnummer gilt als universell einzigartig.

Der Universally Unique Identifier, kurz UUID, ist ein Standard für Identifikationsnummern. Wie in einem Personalausweis soll die Nummer dazu dienen, zwei Komponenten zweifelsfrei auseinanderhalten zu können. Jeder Personalausweis hat eine eigene ID, die eine Person unabhängig von Name oder Geburtsdatum identifiziert – diese Informationen sind nämlich nicht eindeutig und können auf beliebig viele Personen zutreffen.

IDs sind auch in der Softwareentwicklung ein wichtiges Hilfsmittel. Immer dann, wenn Informationen zweifelsfrei auseinandergehalten werden müssen, kann eine einzigartige ID helfen. Solche IDs werden normalerweise vom Entwickler selbst bestimmt, sobald sie im Projekt benötigt werden.

UUIDs gehen einen Schritt weiter: Sie gelten als weltweit eindeutig und garantieren mehr oder weniger, dass niemand sonst dieselbe Identifikationsnummer verwendet.

Einzigartige Identifikation ohne Absprache

Die Open Software Foundation hat einen Standard festgelegt, nach dem UUIDs generiert werden. Der Standard soll dabei helfen, die UUIDs zuverlässig einzigartig zu halten. Wenn er korrekt umgesetzt wird, ist es also sehr unwahrscheinlich, dass versehentlich doppelte UUIDs generiert werden.

Hauptsächlich kommen UUIDs in verteilten Systemen zum Einsatz. Sie sollen dabei helfen, Informationen als eindeutig zu kennzeichnen, ohne dass eine entsprechende Absprache zwischen den einzelnen Entwicklern stattfinden muss.

Die Identifikationsnummern lassen sich aber auch dazu verwenden, in Datenbanken zukunftssichere Primärschlüssel zu realisieren. So kann man sicher sein, dass Tabellen später ohne Konflikte zusammengeführt werden können. In der Regel handelt es sich um eine hexadezimale Zahl, die 16 Byte (128 Bit) groß ist.

UUIDs in fünf Versionen

Im Laufe der Zeit haben sich verschiedene Versionen der UUID etabliert:

Version 1:

Dies ist die älteste Version der UUID. Sie basiert auf einem Zeitstempel und der MAC-Adresse der Maschine, auf der sie erzeugt wurde. Wenn diese Version verwendet wird sollte beachtet werden, dass Zeitstempel und MAC-Adresse Rückschlüsse zur Identität des Erstellers liefern können. In besonders sicherheitskritischen Szenarien kommt diese Version daher nicht zum Einsatz.

Version 2:

Diese Version ist eine Abwandlung der Version 1. Hier werden einige Stellen des Zeitstempels durch Zeichen aus der lokalen Domäne ersetzt.

Version 3:

Diese Version basiert auf einem nicht näher spezifizierten Namen, der innerhalb eines Namensraums eindeutig sein muss (z. B. DNS). Der so generierte Wert wird dann mit MD5 gehasht und der Hash wird gemeinsam mit der zuvor gebildeten UUID zur endgültigen UUID zusammengefügt. Es ist festgelegt, dass ein bestimmter Name aus einem bestimmten Namensraum immer dieselbe UUID erzeugen muss.

Version 4:

In dieser Version werden alle frei belegbaren Stellen durch zufällig generierte Zeichen aufgefüllt. Es ist zwar möglich, auf diese Weise doppelte UUIDs zu erzeugen. Doch die Wahrscheinlichkeit ist so gering, dass sie als praktisch irrelevant gilt.

Version 5:

Diese Version basiert ebenfalls auf einem Namen und wird ähnlich wie Version 3 gebildet. Statt MD5 wird SHA1 für den Hash verwendet.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Swift unter Ubuntu Linux verwenden

App-Entwicklung mit Apple Swift, Teil 2

Swift unter Ubuntu Linux verwenden

Apple bietet die Programmiersprache Swift offiziell auch für Ubuntu-Linux an. Dadurch erschließt sich die einfache Welt von Swift auch Anwendern, die keinen Mac verwenden. Leider ist das nicht ganz so komfortabel wie Swift mit XCode auf dem Mac. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45677962 / Definitionen)