Needham-Schroeder-Protokoll
Aus Byte-Welt Wiki
Version vom 14. Januar 2008, 11:42 Uhr von EagleEye (Diskussion | Beiträge) (Die Seite wurde neu angelegt: Das Needham-Schroeder-Protokoll ist ein Schlüsselverwaltungsprotokoll. Es kann im Gegensatz zum Wide-Mouth-Frog-Protokoll auch für [[Symetrische Verschlüsselung ...)
Das Needham-Schroeder-Protokoll ist ein Schlüsselverwaltungsprotokoll. Es kann im Gegensatz zum Wide-Mouth-Frog-Protokoll auch für symetrische und asymetrische Verschlüsselung verwendet werden. Das Ziel des Protokolls ist ein vertrauenswürdiger Schlüsselaustausch und Verbindung der Partner. Im Gegensatz zum Wide-Mouth-Frog-Protokoll erstellt den Sitzungsschlüssel hier nicht einer der Kommunikationspartner sondern eine 3.Instanz, das Key Distribution Center KDC.
Symetrische Verbindung
- A baut eine Verbindung zum KDC auf und teilt ihm den Wunsch mit, mit B zu kommunizieren. Das Paket für das KDC enthält eine eigene ID sowie die ID für B. Außerdem ist eine Zufallszahl für die Aktualität des Pakets enthalten. Diese Nachricht wird unverschlüsselt übertragen.
- Das KDC erzeugt eine verschlüsselte Nachricht, die den Zufallswert von A auch einen vom KDC erzeugten Sitzungsschlüssel enthält. Zusätzlich ist die ID von B sowie eine verschlüsselte Nachricht an B enthalten. Diese Nachricht für B enthält den Sitzungsschlüssel und die ID von A. Diese Nachricht wird vom KDC an A gesendet.
- A empfängt das Paket und kann den Sitzungsschlüssel extrahieren, jedoch ist es für ihn nicht möglich das Paket für B zu entschlüsseln. Dieses Paket wird von A direkt an B gesendet.
- B empfängt das Paket und sendet eine Zufallszahl an A. Dieses Paket wurde mit dem Sitzungsschlüssel verschlüsselt.
- A empfängt das Paket und sendet die Zufallszahl -1 an B verschlüsselt zurück.
- Anschließend kann die normale Kommunikation mit dem Sitzungschlüssel ablaufen
Asymetrische Verbindung
Der Aufbau der asymetrischen Verbindung basiert auf den PKI-Prinzip. Dabei fungiert der KDC als Verzeichnisdienst für alle öffentlichen Schlüssel. Dabei müssen die Clients nur dem öffentlichen Schlüssel des KDCs besitzen.
- A sendet ein Paket mit seinder ID und der ID von B an das KDC um seinen öffentlichen Schlüssel zu erhalten.
- Das KDC sendet ein mit seinem geheimen Schlüssel signierte Nachricht an A. Diese enthält die ID und den öffentlichen Schlüssel von B.
- A empfängt das Paket und kann es aufgrund der Signatur auf Authentizität überprüfen. Anschließend sendet A ein mit dem öffentlichen Schlüssel von B verschlüsselte Nachricht an B. Diese enthält neben der ID von A auch eine Zufallszahl.
- B empfängt die Nachricht und kann sie mit seinem geheimen Schlüssel entschlüsseln und fragt das KDC nach dem öffentlichen Schlüssel von A. Dazu sendet es wie A ein Paket mit seiner ID und der von A an das KDC.
- Das KDC empfängt das Paket und sendet ein signiertes neues Paket an B. Dieses enthält neben der ID von A auch dessen öffentlichen Schlüssel.
- B empfängt die Nachricht und ist nun im Besitz des öffentlichen Schlüssel von A. Nun folgt der Key-Confirmation-Handshake, dabei sendet B eine verschlüsselte Nachricht an A, mit der Zufallszahl von A sowie einer neuen.
- A empfängt die Nachricht und sendet die Zufallszahl von B verschlüsselt zurück.
- Anschließend kann die normale Kommunikation mit den Schlüsseln ablaufen