Hashfunktionen
Zurück  Start  Weiter



Eine Hashfunktion ist eine Funktion, die eine Eingabe beliebiger Länge erhält und einen Funktionswert, den so genannten Hashwert liefert. Dieser Hasherwert hat eine vorgegebene Länge. Die Funktion die bei ArchiCrypt zum Einsatz kommt heißt SHA 1 (Secure Hash Algorithm 1) und liefert einen Hashwert der Länge 160 Bit.

Im kryptographischen Umfeld kommen nur Hashfunktionen zum Einsatz mit denen es möglich ist, einen Hashwert zu einer Eingabe zu ermitteln. Eine Berechnung der Eingabe aus dem Hashwert hingegen ist unmöglich. (Diese Eigenschaft wird auch als Einweg-Eigenschaft bezeichnet, Funktionen mit dieser Eigenschaft als Einweg-Hashfunktionen.)

Die Anforderungen reichen weiter: Die Funktion muß öffentlich sein, d.h. jeder muss Zugriff auf die Funktion haben. Weiterhin soll es unmöglich sein, 2 unterschiedliche Eingabewerte zu finden, die den gleichen Hashwert liefern. Da die Hashwerte genutzt werden, um Identitäten zu überprüfen, wäre es sonst nicht mehr möglich, eindeutig zu identifizieren.

ArchiCrypt setzt diese Funktion für verschiedene Zwecke ein. Der erste Einsatzfall ist die Aufbereitung der Zufallsdaten die bei der Generierung von Passwörtern und Schlüsseldisketten gesammelt werden. Der zweite Einsatz kommt bei der Identifikation von Passwörtern zum Einsatz. ArchiCrypt muss es auf irgendeine Art schaffen, festzustellen, ob ein bestimmtes Passwort geeignet ist, eine bestimmte Datei zu entschlüsseln. Das Passwort mit der Datei zu speichern, ist eine denkbar schlechte Methode. Das Passwort verschlüsseln und dann mit der Datei speichern? Woher dieses Passwort nehmen? Wenn man vor dem Entschlüsseln das Passwort auf Richtigkeit hin untersucht, kann man dies anhand eines gespeicherten Hashwertes für das Passwort tun. Die Eigenschaften wie oben erläutert, erlauben dies. Die Wahrscheinlichkeit, dass zwei Passwörter zum gleichen Hashwert führen liegt bei 1: 2^160. Sie brauchen einen speziellen Rechner, um Zahlen dieser Dimension berechnen zu können.

Copyright © 1997 - 2002 by
Dipl.-Ing. Patric Remus