Elisa
Aus ProgrammingWiki
Definition: Eine Hashwertfunktion/Streuwertfunktion ist eine mathematische Funktion. Diese reduziert Zeichen beliebiger Länge (z.B. unterschiedliche Passwörter) auf eine festgelegte Länge dieser Zeichen (z.B. immer 5 Zeichen), sie werden also in eine kleinere und kompaktere Form gebracht. Da Hashfunktionen oftmals in Form eines Algorithmus statt einer mathematischen Funktion spezifiziert werden, wird speziell in der Informatik der Begriff Hash-Algorithmus verwendet. Die Werte einer solchen Funktion sind meist skalare Werte aus einer begrenzten Teilmenge der natürlichen Zahlen.
Inhaltsverzeichnis |
Eigenschaften
Schnelligkeit: Das Berechnungsverfahren des Hashwertes muss schnell sein
Einwegfunktion: Aus dem Hashwert (z.B. 123) darf nicht der originale Inhalt, z.B. eines Passwortes, erzeugt werden können.
Kollisionssicherheit: Es muss möglichst eine Gleichverteilung der Hashwerte auf die Eingabewerte vorhanden sein, d.h. unterschiedlichen Texten darf nicht derselbe Hashwert zugeordnet sein. Ist diese Voraussetzung erfüllt, so spricht man von kryptografischen Hashfunktionen.
Anwendung
Datenbanken
Um Daten in großen Datenbeständen mittels Hashtabellen zu suchen, verwenden Datenbankmanagementsysteme Hashfunktionen.
Speichern von Passwörtern
Passwörter werden verschlüsselt gespeichert, damit diese bei einem möglichen Angriff nicht im Klartext gelesen werden können. Die Passwörter werden mit einer Hashfunktion in Hashwerte umgewandelt und nur die Hashwerte werden gespeichert, nicht die Passwörter an sich.
Kryptologie
Kryptologische Hashfunktionen besitzen besondere Eigenschaften, welche verwendet werden, um die Integrität von Daten sicherzustellen (Nachrichten zu signieren). Zum Hashen von Passwörtern werden spezielle Hashfunktionen verwendet, welche besonders aufwändig zu berechnen sind, um Angriffe zu erschweren.
Sicherheit
Um Passwörter nicht anhand einer einfachen Regenbogentabelle knacken zu können, sollten keine veralteten Algorithmen genutzt werden. Außerdem sollten die Passwörter regelmäßig gewechselt werden, da auch veraltete Plattformen damit auf neue Techniken umstellen und diese bei einem Passwortwechsel genutzt werden können. Auch bei "sicheren" Hashfunktionen darf keine hundertprozentige Sicherheit erwartet werden. Zum Beispiel könnte ein manipulierter Hashwert als Prüfsumme im Internet veröffentlicht werden. Es ist aber auch nur eine Frage der Zeit, wann die "sicheren" kryptografischen Hashfunktionen geknackt werden, denn der Erfolg eines Angriffes ist auch bei diesen Hashfunktionen nicht auszuschließen. Ein erfolgreicher Angriff ist zwar unwahrscheinlich, aber nicht komplett unmöglich.
Quellen
https://www.datenschutzbeauftragter-info.de/hashwerte-und-hashfunktionen-einfach-erklaert/
https://de.wikipedia.org/wiki/Hashfunktion#Definition_einer_Hashfunktion
https://wiki.ubuntuusers.de/Hashfunktionen/
https://de.wikipedia.org/wiki/Hashfunktion#/media/File:Hash_table_4_1_1_0_0_1_0_LL.svg