2b. Kryptographische Protokolle

Beispiel einer Spezifikation


Spezifikation des Protokolls »hybride Verschlüsselung«

Subjekte: A, B, E

Objekte:
eB , dB = öffentlicher bzw. privater Schlüssel von B
k= Einmalschlüssel (oder Sitzungsschlüssel)
k'= verschlüsselter Sitzungsschlüssel
m= Klartextnachricht
c= Geheimtext

Folge von Aktionen

1. Schritt:B erzeugt eB und dB.
2. Schritt:B übermittelt eB an A.
3. Schritt:A erzeugt m.
4. Schritt:A erzeugt k (zufällig).
5. Schritt:A erzeugt k' (= eB(k)).
6. Schritt:A erzeugt c (= fk(m)). [Kommentar: f ist die symmetrische Verschlüsselungsfunktion.]
7. Schritt:A übermittelt k' und c an B.
8. Schritt:B erschließt k (= dB(k')).
9. Schritt:B erschließt m (= fk-1(c)).


Sicherheitsnachweis

Bei dem Protokoll »hybride Verschlüsselung« geht es (ausschließlich) um das Sicherheitsziel »Vertraulichkeit«. Zu beweisen ist, dass E die Nachricht m nicht herleiten kann.

Das ist in diesem Falle fast offensichtlich (da die kryptographischen Grundfunktionen als sicher angenommen wurden).

Verdeutlichen kann man es durch folgende Matrix (s = sees = sieht, d = derives = kann erschließen, c = creates = erzeugt):

Zugriffsmatrix hybride Verschlüsselung

[Zugriffsmatrix]

[Die Unterscheidung zwischen c, s und d spielt für den Sicherheitsbeweis hier keine Rolle, so dass eigentlich ein vereinfachtes Modell ausreicht.]

Der abgestrebte Beweis beruht auf der Beobachtung, dass die Zugriffsmatrix vollständig ist; denn die einzigen Relationen zwischen Objekten, die zum Erschließen anderer Objekte geeignet sind, sind in nicht weiter erklärungsbedürftiger Notation:

k, eB---> k'
k', dB---> k
m, k---> c
c, k---> m

Dieser Sicherheitsbeweis ist mangelhaft!

Warum?

Der ungefragte Mitspieler M wurde vergessen. Er verändert die impliziten Voraussetzungen des Beweises. Er agiert als aktiver Angreifer in der Mitte (man in the middle):

A <---> M <---> B

Er kann

D. h., er kann das Protokoll ändern. Er kann z. B. - wie schon bekannt - so vorgehen:

[Man in the middle]


Aktiver Angriff auf die hybride Verschlüsselung

... läßt sich durch eine Änderung des Protokolls modellieren:

2. Schritt:B übermittelt idB, eB an A.
[D. h., die implizite Annahme, dass B von A als authentisch erkannt wird, wird fallengelasssen.]
M fängt diese Nachricht ab, unterdrückt sie und schickt statt dessen idB, eM an A.
5.&6. Schritt:A erzeugt jetzt k" = eM(k) und c" = fk"(m).
7. Schritt:A übermittelt idA, k" und c" an B.
M fängt diese Nachricht ab, unterdrückt sie und erschließt k und m.

Widerspruch zur Sicherheit des Protokolls.

Je nach seinen finstren Zielen hat M dann die Fortsetzungsmöglichkeiten:


Was lernen wir daraus?


Autor: Klaus Pommerening, 31. März 1999; letzte Änderung: 25. Juli 2004.
E-Mail an
Pommerening »AT« imbei.uni-mainz.de.