Hashwert

Allgemein bildet eine Hashfunktion einen beliebigen Datenraum auf Daten fester Größe ab. Der Hashwert stellt dabei das Ergebnis der Hashfunktion dar. Oft wird der Hashwert als eine hexadezimale Zeichenkette codiert. Ein Qualitätskriterium von Hashwerten ist die Geschwindigkeit mit denen sie berechnet werden können. Eine besondere Klasse von Hashfunktionen bilden die Kryptografische Hashfunktionen. Diese Arten von Hashfunktionen haben weitere Eigenschaften:

  • Einwegfunktion: Aus dem Hashwert darf nicht der originale Eingabewert erzeugt werden können. Dies ist insbesondere für die sichere Speicherung von Hashwerten von Passwörtern bei der Authentifizierung wichtig.
  • Kollisionssicherheit: Da eine Hashfunktion die Eingabe auf eine feste Länge abbildet, gibt es immer die Möglichkeit, dass zwei unterschiedliche Eingabewerte den gleichen Hashwert haben. Ein solches Paar wird als Kollision bezeichnet. Bei kryptografischen Hashfunktionen darf es nicht möglich sein solche Kollisionen zu finden. Diese Eigenschaft wird Kollisionsresistenz genannt. Man unterscheidet dabei zwischen schwacher und starker Kollisionsresistenz. Bei einer schwachen Kollisionsresistenz ist es nicht möglich für einen gegebenen Eingabewert einen zweiten mit dem gleichen Hashwert zu finden. Bei einer starken Kollisionsresistenz ist es nicht möglich zwei beliebige Eingabewerte mit gleichem Hashwert zu finden.