Hash-Algorithmen spielen in der Informatik eine wichtige Rolle. Im Folgenden befasse ich mich hauptsächlich mit dem wohl populärsten Hash-Algorithmus MD5 und dessen Nachfolger dem SHA-1. Beide sind heutzutage noch im Einsatz, gelten jedoch als nicht mehr sicher.
Einleitung
Eine Hashfunktion (auf Deutsch: Streuwertfunktion) erzeugt aus einer üblicherweise großen Quellmenge eine Ausgabe, den Hashcode, aus einer kleinen Zielmenge. Die einzelnen Stellen des Codes bestehen meist aus skalaren Werten der natürlichen Zahlen. Ein solcher Hashwert wird auch Fingerprint genannt, da er nahezu eindeutig eine größere Datenmenge beschreibt. Hashfunktionen unterscheiden sich in ihren Ein- und Ausgaben sowie den Einfluss bestimmter Muster und Eingaben.