2b. Kryptographische Protokolle

Beispiel einer Spezifikation


Spezifikation des Protokolls »hybride Verschlüsselung«

Subjekte: A, B, E

Objekte:
eB , dB= öffentlicher bzw. geheimer Schlüssel von B
k= Einmalschlüssel
k'= verschlüsselter Einmalschlü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 die Vertraulichkeit. Zu beweisen ist, daß E die Nachricht m nicht herleiten kann.

Das ist in diesem Falle 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.]

Diese ist vollständig, 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

Mängel dieses Sicherheitsbeweises

Warum reicht dieser Sicherheitsnachweis nicht?

Der ungefragte Mitspieler M 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. so vorgehen:

[Man in the middle]

Aktiver Angriff auf die hybride Verschlüsselung

2. Schritt:B übermittelt idB, eB an A. [D. h., die implizite Annahme, daß 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?


Vorlesung Datenschutz und Datensicherheit, Johannes-Gutenberg-Universität Mainz
Autor: Klaus Pommerening, 31. März 1999; letzte Änderung: 20. Januar 2002.
E-Mail an
Pommerening@imsd.uni-mainz.de.