Neumann-Stubblebine-Protokoll: Unterschied zwischen den Versionen

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen
(Die Seite wurde neu angelegt: Das Neumann-Stubblebine-Protokoll basiert auf dem Kehne-Schonwalder-Langendorfer-Protokoll und dient als Schlüsselverwaltungsprotokoll mit gleichzeitiger Partnerau...)
 
(Ablauf)
Zeile 3: Zeile 3:
  
 
==Ablauf==
 
==Ablauf==
# A sendet B eine Nachricht mit seiner ID und einer Zufallszahl.
+
# A sendet B eine Nachricht mit seiner ID und einer Zufallszahl.[[Bild:Neumann-Stubblebine-Protokoll1.png|thumb|250px|]]
# B sendet nach empfang der Nachricht von A eine Nachricht an das KDC. In der Nachricht ist die ID von B, eine neue Zufallszahl sowie ein verschlüsselter Block. Der verschlüsselte Block einhält die ID von A, die Zufallszahl von A sowie einen Zeitstempel. Dieser Block wird symetrisch verschlüsselt und der Schlüssel ist nur B und dem KDC bekannt. Der Zeitstempel kann außerdem verwendet werden um die Gültigkeitsdauer des Schlüssels festzusetzen.
+
# B sendet nach empfang der Nachricht von A eine Nachricht an das KDC. In der Nachricht ist die ID von B, eine neue Zufallszahl sowie ein verschlüsselter Block. Der verschlüsselte Block einhält die ID von A, die Zufallszahl von A sowie einen Zeitstempel. Dieser Block wird symetrisch verschlüsselt und der Schlüssel ist nur B und dem KDC bekannt. Der Zeitstempel kann außerdem verwendet werden um die Gültigkeitsdauer des Schlüssels festzusetzen.[[Bild:Neumann-Stubblebine-Protokoll2.png|thumb|250px|]]
# Das KDC nimmt die Daten entgegen und erzeugt den Sitzungsschlüssel sowie ein neues Paket für A. In dem Paket sind zwei verschlüsselte Blöcke und die Zufallszahl von B. Der erste Block ist für A verschlüsselt und enthält die ID von B, die Zufallszahl von A, den Sitzungsschlüssel und den Zeitstempel von B. In dem zweiten Block sind die Daten für B verschlüsselt, hier ist die ID von A, der Sitzungsschlüssel und der Zeitstempel von B enthalt.
+
# Das KDC nimmt die Daten entgegen und erzeugt den Sitzungsschlüssel sowie ein neues Paket für A. In dem Paket sind zwei verschlüsselte Blöcke und die Zufallszahl von B. Der erste Block ist für A verschlüsselt und enthält die ID von B, die Zufallszahl von A, den Sitzungsschlüssel und den Zeitstempel von B. In dem zweiten Block sind die Daten für B verschlüsselt, hier ist die ID von A, der Sitzungsschlüssel und der Zeitstempel von B enthalt.[[Bild:Neumann-Stubblebine-Protokoll3.png|thumb|250px|]]
# A empfängt die Daten und kann den ersten Teil entschlüsseln und erhält so den Sitzungsschlüssel, das andere Paket sendet er an B und fügt zusätzlich noch die verschlüsselte Zufallszahl von B als zweiten Teil hinzu.
+
# A empfängt die Daten und kann den ersten Teil entschlüsseln und erhält so den Sitzungsschlüssel, das andere Paket sendet er an B und fügt zusätzlich noch die verschlüsselte Zufallszahl von B als zweiten Teil hinzu.[[Bild:Neumann-Stubblebine-Protokoll4.png|thumb|250px|]]
# B empfängt die Daten und somit auch den Sitzungsschlüssel. Mit der mitempfangenen Zufallszahl kann B überprüfen ob die Daten vom gleichen A kommen wie beim Start.
+
# B empfängt die Daten und somit auch den Sitzungsschlüssel. Mit der mitempfangenen Zufallszahl kann B überprüfen ob die Daten vom gleichen A kommen wie beim Start.[[Bild:Neumann-Stubblebine-Protokoll5.png|thumb|250px|]]
  
 
==Nachteile/Schwachstellen==
 
==Nachteile/Schwachstellen==

Version vom 25. Januar 2008, 11:15 Uhr

Das Neumann-Stubblebine-Protokoll basiert auf dem Kehne-Schonwalder-Langendorfer-Protokoll und dient als Schlüsselverwaltungsprotokoll mit gleichzeitiger Partnerauthentisierung. Es hat wie das Needham-Schroeder-Protokoll ein Key Distribution Center, KDC für die Schlüsselverwaltung. Im Gegensatz zum Needham-Schroeder-Protokoll, besitzt wird immer ein Zeitstempel in den Paketen verwendet. Somit ist den Replay-Attacken entegegen gewirkt. Für die Authentizität verwendet das Protokoll die symetrische Verschlüsselung.

Ablauf

  1. A sendet B eine Nachricht mit seiner ID und einer Zufallszahl.
    Neumann-Stubblebine-Protokoll1.png
  2. B sendet nach empfang der Nachricht von A eine Nachricht an das KDC. In der Nachricht ist die ID von B, eine neue Zufallszahl sowie ein verschlüsselter Block. Der verschlüsselte Block einhält die ID von A, die Zufallszahl von A sowie einen Zeitstempel. Dieser Block wird symetrisch verschlüsselt und der Schlüssel ist nur B und dem KDC bekannt. Der Zeitstempel kann außerdem verwendet werden um die Gültigkeitsdauer des Schlüssels festzusetzen.
    Neumann-Stubblebine-Protokoll2.png
  3. Das KDC nimmt die Daten entgegen und erzeugt den Sitzungsschlüssel sowie ein neues Paket für A. In dem Paket sind zwei verschlüsselte Blöcke und die Zufallszahl von B. Der erste Block ist für A verschlüsselt und enthält die ID von B, die Zufallszahl von A, den Sitzungsschlüssel und den Zeitstempel von B. In dem zweiten Block sind die Daten für B verschlüsselt, hier ist die ID von A, der Sitzungsschlüssel und der Zeitstempel von B enthalt.
    Neumann-Stubblebine-Protokoll3.png
  4. A empfängt die Daten und kann den ersten Teil entschlüsseln und erhält so den Sitzungsschlüssel, das andere Paket sendet er an B und fügt zusätzlich noch die verschlüsselte Zufallszahl von B als zweiten Teil hinzu.
    Neumann-Stubblebine-Protokoll4.png
  5. B empfängt die Daten und somit auch den Sitzungsschlüssel. Mit der mitempfangenen Zufallszahl kann B überprüfen ob die Daten vom gleichen A kommen wie beim Start.

Nachteile/Schwachstellen

Das Protokoll ist zwar gegen Replay-Attacken geschützt jedoch nicht gegen Man-In-The-Middle-Attacken. Dies liegt in der Struktur der Daten aus Schritt 2 (ID von A, Zufallszahl von A, Zeitstempel von B) und 4 (ID von A, Sitzungsschlüssel, Zeitstempel von B). Daher würde für die Kommunikation zuwischen B und dem Angreifer die Zufallszahl als Sitzungschlüssel verwendet werden.