Mobile-Menu

Fingerabdruck eines Datensatzes Was ist Hashing?

Von Dipl.-Ing. (FH) Stefan Luber 2 min Lesedauer

Anbieter zum Thema

Hashing wandelt einen Datensatz mithilfe einer Hashfunktion in einen kürzeren Hashwert um. Dieser Wert ist eine Art Fingerabdruck des Datensatzes und ermöglicht dessen Identifizierung. Typische Einsatzbereiche des Hashings sind Datenbanken, das Speichern von Passwörtern und die Kryptografie.

Die wichtigsten IT-Fachbegriffe verständlich erklärt.(Bild:  © aga7ta - Fotolia)
Die wichtigsten IT-Fachbegriffe verständlich erklärt.
(Bild: © aga7ta - Fotolia)

Der englische Begriff hashing lässt sich mit „zerhacken“ ins Deutsche übersetzen. Beim Hashing handelt es sich um eine Methode, mit der sich ein Datensatz mithilfe einer Hashfunktion in einen kürzeren Hashwert bestimmter Länge umwandeln lässt. Dieser Wert fungiert als eine Art Fingerabdruck des Eingabedatensatzes und ermöglicht eine eindeutige Zuordnung. Der Hashwert repräsentiert quasi den Datensatz.

Die Umwandlung erfolgt immer nur in eine Richtung. Der ursprüngliche Datensatz lässt sich aus dem Hashwert nicht wiederherstellen. Die Länge des Eingabedatensatzes kann beim Hashing unterschiedlich sein, die generierten Hashwerte haben dagegen in der Regel eine feste Länge.

Prinzipielle Funktionsweise des Hashings und Anforderungen an eine Hashfunktion

Das Umwandeln eines Datensatzes in einen Hashwert erfolgt über eine Hashfunktion. Bei der Hashfunktion handelt es sich um einen Algorithmus, der die Daten des Datensatzes zerlegt und auflöst und daraus eine Zeichenfolge definierter Länge generiert. Die Methode und Art der Umwandlung sowie die Form und Länge des Hashwerts hängen vom jeweils verwendeten Algorithmus ab. Es existieren zahlreiche verschiedene Hash-Algorithmen. Hashfunktionen sollen folgende Anforderungen erfüllen:

  • Die Umwandlung darf nur in eine Richtung möglich sein. Aus einem Hashwert darf sich der ursprüngliche Datensatz nicht wieder herstellen lassen.
  • Die Berechnung des Hashwerts muss deterministisch sein. Bei mehrfacher Anwendung muss für jeden Eingabedatensatz ein gleicher Hashwert definierter Länge erzeugt werden.
  • Die Hashfunktion muss möglichst kollisionssicher sein. Unterschiedlichen Eingabedatensätzen sollen keine identischen Hashwerte zugewiesen werden.
  • Die Hashfunktion muss performant und schnell ausführbar sein.

Typische Anwendungsbereiche des Hashings

Hashing kommt in vielen verschiedenen Bereichen zum Einsatz. Die Methode lässt sich beispielsweise verwenden, um Elemente einer Datenbank zu indizieren und schneller abzurufen. Über Tabellen mit kürzeren Hashwerten können Datenbankelemente schneller gefunden werden. Hashing kommt auch für das Generieren von Prüfsummen oder das Überprüfen der Integrität von Daten zum Einsatz. Ein weiterer Anwendungsbereich ist das Speichern von Passwörtern für Authentifizierungszwecke. Die Passwörter werden dabei nicht im Klartext, sondern als Hashwerte in einer Datenbank gespeichert.

Zur Authentifizierung eines Benutzers lässt sich der in der Datenbank gespeicherte Hashwert mit dem über die Hashfunktion generierten Wert eines erhaltenen Benutzerpassworts vergleichen. Darüber hinaus wird Hashing für folgende Anwendungsbereiche genutzt:

  • in der Kryptografie,
  • für digitale Signaturen,
  • im Dateimanagement zum Katalogisieren, Finden und zur Sicherstellung der Eindeutigkeit von Dateien,
  • in Blockchains.

(ID:50051948)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Data-Storage und -Management

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung