4.2.1 Sicherheit von Einweg-Hashfunktionen

Ist zu erwarten, daß eine Hashfunktion in absehbarer Zeit unsicher wird, sollte diese natürlich durch eine bessere ersetzt werden. Das ist für die Bildung künftiger Hashwerte unproblematisch. Was jedoch geschieht mit den Hashwerten, die bereits Bestandteil eines Protokolls sind? Für ein Verfahren zum Erhalt der Sicherheit muß jeder Hashwert neu gebildet werden. Für eine fälschungssichere Protokollierung bedeutet dies unter Umständen, daß alle bisher protokollierten Dokumente nochmals bereitgestellt werden müssen. Auf diese Problematik wird bei der Beschreibung der Verfahren zur Aufrechterhaltung der Sicherheit näher eingegangen.
Da Einweg-Hashfunktionen keine eindeutigen umkehrbaren Funktionen repräsentieren, kann keine Umkehrfunktion gefunden werden, die genau den Plaintext Px erzeugt, der zur Bildung des betrachteten Hashwertes Cx führte. Jedoch führt auch die Bildung eines beliebigen Plaintextes Px' mit der Bedingung

Cx = H(Px) und Cx= H(Px') und Px' <> Px

dazu, daß der „Fingerabdruck“ Cx seine Bedeutung verliert. Vor dem Bekanntwerden einer solchen Schwäche muß jeder Hashwert aus seinem Plaintext mit einer besseren Einweg-Hashfunktion durch einen neuen Hashwert ersetzt werden.
Ist die Hashfunktion Teil einer komplexeren Funktion, beispielsweise die innere Funktion einer verkürzten digitalen Signatur,

Cx = Eke(H(Px))

muß mit einer neuen Hashfunktion Hneu

Cneux = Eke(Hneu(Px))

gebildet werden.
Eine Möglichkeit der Verstärkung eines, mittels Einweg-Hashfunktionen erzeugten Fingerabdrucks könnte die Verwendung zweier verschiedener, keinesfalls isomorpher Funktionen sein. Der Fingerabdruck Cx könnte aus der Verkettung beider gebildeten Hashwerte erzeugt werden:

Cx = (Cx1,Cx2)

Cx1 = H1(Px)
Cx2 = H2(Px)

Wird eine der beiden Hashfunktionen unsicher, kann ein Angreifer möglicherweise Cx1 oder Cx2 aus Px' (unter der Bedingung Px' <> Px) bilden, jedoch könnte er damit nur einen Teil von Cx fälschen. Selbst das Brechen der zweiten Hashfunktion führt nicht zwangsläufig zum Verlust der Sicherheit von Cx. Nun könnte ein Angreifer Cx2 aus Px' und Cx2 aus Px'' bilden, jedoch ist es äußerst unwahrscheinlich, daß die Bedingung Px' = Px'' erfüllt wird.


weiter Inhaltsverzeichnis