2c. Kryptographische Infrastruktur

Kerberos - Schutz von Client-Server-Kommunikation in offenen Netzen


Eigenschaften


Kommunikation zwischen Client und Server

Clients (Benutzer oder Prozesse)

Diese erhalten sie von einem Ticket-Server, und zwar verschlüsselt mit dem geheimen Schlüssel KS, den nur S und der Ticket-Server kennen.

[ClientServer]

Ein Ticket hat das Format:

TCS = (S, C, Adr, t, life, KCS)

Ablauf der Authentisierung beim Server per Ticket:

  1. C ---> S: KS(TCS).
  2. S entschlüsselt KS(TCS).
    [Falls Ergebnis sinnvoll: TCS echt und C echt - denn außer S kennt nur der Ticket-Server KS.]
  3. C <--- S: KCS(t-1) (`verifier').
  4. C entschlüsselt KCS(t-1).
    [Falls Ergebnis korrekt: S echt - denn nur S kann diesen `verifier' gebildet haben.]

Dann Kommunikation C <---> S mit Hilfe von KCS.


Der Ticket-Server

(vereinfachte Darstellung - in Wirklichkeit gibt es noch einen Master-Server)

Der Ticket-Server T

[Ticket-Server]

Anmeldung beim Ticket-Server

Der Client C meldet sich beim Ticket-Server T an mit dem Wunsch, den Server S von der IP-Adresse Adr aus zu benutzen.

  1. C ---> T: Anmeldung KC(C, Adr, t, S).
  2. T entschlüsselt KC(C, Adr, t, S).
    [Falls Ergebnis sinnvoll: C echt - denn außer C kennt nur der Ticket-Server KC.]
  3. T bildet 1x-Schlüssel KCS (zufällig) und Ticket TCS = (S, C, Adr, t, life, KCS).
  4. C <--- T: KC(KS(TCS), KCS, t-1).
  5. C entschlüsselt KC(KS(TCS), KCS, t-1).
    [Falls Ergebnis korrekt: T echt - denn nur T kann den `verifier' KC(t-1)gebildet haben.]

Das verschlüsselte Ticket KS(S, C, Adr, t, life, KCS)

Es ist also geeignet, um C bei S auszuweisen.


Kerberos - Anwendungen

AFS = Andrew File System:

DFS = Distributed File System:


Kerberos - Diskussion

+Alle Kommunikation verschlüsselt (abhörsicher).
+Zentrale Anmeldung und Authentisierung. [Falls Master-Server:
  • nur 1x Anmeldung pro Logon,
  • dann weitere Anmeldungen mit »Ausweis« (`ticket granting ticket') »transparent«.]
+Sicherheit in Anwendungen eingebaut.
+Anerkannter und verbreiteter Standard.
-Anwendungen müssen »kerberisiert« werden (im Quellcode).
-Versionen-Wirrwarr.
-Hickhack um US-Exportbestimmungen.
-Schlüssel der Server gefährdet (wenn Server ungenügend geschützt).
-Beschränkung auf Client-Server-Modell (kein Schutz für Benutzer-Kommunikation).
-Vertrauenswürdiger Zeitservice nötig.
-Kein Schutz des Bootens übers Netz.
-Angriffe auf Passwörter möglich.


Tickets: Lösung mit asymmetrischer Verschlüsselung

Ticket enthält momentane Berechtigungen (für diese Sitzung), wird vom Ticket-Server digital signiert und mit dem öffentlichen Schlüssel des jeweiligen Anwendungsservers verschlüsselt.

Im Vergleich zu Kerberos:

+einfachere Schlüsselverwaltung,
+weniger Angriffspunkte.

Realisiert im SESAME-Projekt (A Secure European System for Applications in a Multi-vendor Environment).


FAQ


Vorlesung Datenschutz und Datensicherheit
Autor: Klaus Pommerening, 31. März 1999; letzte Änderung: 24. Juli 2007
E-Mail an
Pommerening »AT« imbei.uni-mainz.de.