Eine Einweg-Hashfunktion ist eine spezielle
Hashfunktion. Einweg-Hashfunktionen
sind Hashfunktionen, die folgende Kriterien erfüllen:
-
Eingaben beliebiger Größe werden Ausgaben bestimmter Größe
zugeordnet (Kompression).
-
Aus der Ausgabe kann nicht auf die Eingabe geschlossen werden (Unumkehrbarkeit).
-
Die Funktion arbeitet kollisionsfrei, d.h. zu jeder möglichen, sinnvollen
Eingabe generiert die Einweg-Hashfunktion
genau eine Ausgabe. Anders gesagt: Es ist nicht möglich zu einem Hashwert
zwei sinnvolle Eingaben zu konstruieren.
Wenn man diese Definition betrachtet, lassen sich die Hashwerte, die von
Einweg-Hashfunktionen zu Eingaben generiert
werden, als Aussagen über die Eingaben auffassen. Jede Eingabe läßt
sich mit genau einer Aussage beschreiben.
Diese Eigenschaft von Einweg-Hashfunktionen
wird ausgenutzt, um sogenannte `digitale
Fingerabdrücke' von Daten zu erstellen. Die Metapher paßt
zwar nicht so recht, hat sich aber durchgesetzt.
Besondere Einweg-Hashfunktionen
Ergänzt man Einweg-Hashfunktionen noch
um die Eigenschaft, nur mit einem geheimen Schlüssel zu arbeiten,
erhält man sichere Aussagen über die Eingaben. Andere Bezeichnungen
für (Ausgaben) solcher Einweg-Hashfunktionen
sind: message authentication code (MAC),
digital fingerprint, data
authentication code (DAC), digitale
Signatur, message digest (MD), ...
Es werden ständig neue Namen gefunden.
In der Praxis verwendet man zuerst eine Einweg-Hashfunktion und verschlüsselt
den Hashwert mit einem asymmetrischen Verschlüsselungsverfahren, z.B.
RSA. Auf diese Weise erhält man
eine digitale Signatur.
Beispiele
Bekannte Einweg-Hashfunktionen sind: