Kryptographische Hashfunktion
erstellt einmalige und kollisionsfreie Werte / aus Wikipedia, der freien encyclopedia
Liebe Wikiwand-AI, fassen wir uns kurz, indem wir einfach diese Schlüsselfragen beantworten:
Können Sie die wichtigsten Fakten und Statistiken dazu auflisten Message Digest?
Fass diesen Artikel für einen 10-Jährigen zusammen
Eine kryptographische Hashfunktion oder kryptologische Hashfunktion ist eine Hashfunktion (Streuwertfunktion), die bestimmte Eigenschaften erfüllt, mit denen sie für kryptographische Anwendungszwecke geeignet ist. Eine Hashfunktion erzeugt effizient aus einem Eingabewert, etwa einer Nachricht oder einer Datei, einen Ausgabewert fester Länge: den Hashwert. Für den kryptographischen Einsatz werden weitere Eigenschaften gefordert: eine kryptographische Hashfunktion stellt eine Einwegfunktion dar, bietet Kollisionsresistenz und erzeugt einen pseudozufälligen Hashwert.
Kryptographische Hashfunktionen werden zur Integritätsprüfung von Dateien oder Nachrichten eingesetzt. Dafür wird die Funktion auf die zu prüfende Datei angewendet und mit einem bekannten Hashwert verglichen. Weicht der neue Hashwert davon ab, wurde die Datei verändert.[1] Um zu verhindern, dass ein Angreifer sowohl Datei als auch Hashwert verändert, kann ein schlüsselbasiertes kryptographisches Verfahren eingesetzt werden, beispielsweise eine digitale Signatur oder ein Message Authentication Code. Weiter dienen kryptographische Hashfunktionen zur sicheren Speicherung von Passwörtern. Wenn ein System ein eingegebenes Passwort prüft, vergleicht es dessen Hashwert mit einem in einer Datenbank gespeicherten Hashwert. Stimmen beide Werte überein, ist das Passwort richtig. So kann vermieden werden, das Passwort im Klartext abzuspeichern. Ein Angreifer, der Lesezugriff auf die Datenbank hat, erlangt somit nicht das Passwort.[2] Außerdem können kryptographische Hashfunktionen als Pseudo-Zufallszahlengeneratoren und zur Konstruktion von Blockchiffren eingesetzt werden.
Es gibt viele kryptographische Hashfunktionen. Einige davon, wie zum Beispiel der MD5 oder SHA-1, gelten nicht mehr als sicher, weil sie keine starke Kollisionsresistenz (siehe Eigenschaft 6) gewährleisten. Zu den in der Praxis oft verwendeten Funktionen, die heute noch als sicher gelten, gehören die Algorithmenfamilien SHA-2 und SHA-3.