
Was ist ein Hash?
Diese Frage soll dieser Beitrag im Detail beantworten.
+ praktische Anwendungsgebiete (Blockchain) mit Alternativen
Starten wir!
Was ist ein Hash?

Ein Hash ist ein Algorithmus, der einen Bit-String beliebiger Länge auf eine bestimmte Länge komprimiert. Ein Bit-String kann eine Nachricht, ein Dokument oder eine Multimedia-Datei sein. Computer codieren Multimedia (MP4-Codierung) und Text (UTF-8-Codierung) in 0en und 1en – der Bit-String.
Ändert der Kriminelle nur einen Buchstaben, dann ändert sich der Hash deutlich (Lawinen-Effekt). Das Rückrechnen von einem Hash zu einer möglichen Ursprungsnachricht soll praktisch nicht möglich sein.

Wofür brauche ich jetzt den Hash?
- Ein Hash eignet sich, um zu überprüfen, ob ein Dritter ein Dokument bei der Speicherung oder Übertragung geändert hat. Sichere Mails werden immer mit Hashes versendet
- Hashes nutzen Authentifizierungsverfahren, um Passwörter zu überprüfen. Auf der Festplatte und in den Datenbanken sollten die Passwörter nur in Form von Passwort-Hashes (mit einem Salt) gespeichert sein. Der Nutzer gibt sein Passwort in die Anmelde-Maske ein, in der die Software das Passwort zu einem Hash umwandelt.
Rein theoretisch gibt es unendlich viele Passwörter, die den gleichen Hash haben. Praktisch ist ein solcher Angriff sehr unwahrscheinlich, wenn nicht der Hash sich bereits in einer Rainbow-Tabelle befindet. Eine Rainbow-Tabelle zeigt auf der einen Seite die Eingabe (Text) und auf der anderen Seite den Hash. Wir können jetzt den Ursprungstext auf Basis des Hashes ablesen. - Krypto-Währungen brauchen einen Hash-Algorithmus, um die Verkettung der Blockchain zu erzeugen. Lese weiter unter „Warum braucht die Blockchain Hashes“.
Welche Hashs sind sicher?
Die Sicherheit eines Hashs hängt von der Länge des Bit-Strings ab.
Steffen Lippke
Je länger, desto schwerer hat es der Hacker eine Datei so zu manipulieren, sodass der gleiche Hash entsteht. Die Cryptografen unterscheiden 3 Arten von Angriffen bzw. Angriffsversuchen:
- Kollision: Der Kriminelle versucht zwei Dateien herzustellen, die den gleichen Hash haben. Der Angreifer kann beide Dateien auswählen.
- Urbild: Der Kriminelle erhält einen Hash. Jetzt versucht der Kriminelle eine Datei zu finden, welchen den gleichen Hash hat.
- Zweites Urbild: Der Kriminelle erhält eine Datei. Er versucht eine Datei zu erzeugen, die den gleichen Hash hat.
Sicher sind viele Hash-Funktionen, die mindestens eine 256-Bit Ausgabe haben (Stand März 2026). Ein weiteres Ausschlusskriterium für einen untauglichen Hash-Algorithmus ist, dass dieser nicht reproduzierbare Hashs erzeugt z. B. mit einer Zufallskomponente.
Sicher Hashes

SHA-3-Familie (Keccak)
Das National Insititut of Standards and Technologies (NIST) hat in 2015 den Kekkak Algorithmus zu den nächsten sicheren Hash-Algorithmus erklärt (SHA-3). Dieser arbeitet besonders Hardware-effizient und ermöglicht mit der Schwamm-Technik unterschiedlich lange Hash-Ausgaben.
Unsichere Hashs
- MD5 / SHA-1 / CRC: Diese gelten als veraltet wegen der zu geringen Länge.
- SHA-2: Dieser Algorithmus gilt offiziell noch als sicher. Aber der SHA-3 ist auf den Markt und Hardware-effizienter.
Viele Informatiker nutzen nicht nur einen Hash für eine Datei, sondern Hashen die Datei mit verschiedenen Algorithmen, um eine noch höhere Sicherheit zu gewährleisten.
Wie funktioniert ein Hash?
Im Wesentlichen gibt es zwei Grund-Algorithmen: Merkle Damagrad oder Sponge. Die Implementierungen in der Realität basieren auf diesen Grund-Konzepten.
Der ultra-starke Kompressor: Merkle-Damgard
- Der Algorithmus teilt die Datei in gleich Lange Blöcke und misst die Größe der Gesamtdatei.
- Die Größe in Bytes wird im letzten angefügten Block gespeichert.
- Dann folgt ein XOR mit einem Initialisierungsvektor (ein frei ausgedachter Bitstring von 0en und 1en) mit dem ersten Block. Im zweiten Schritt durchläuft der Block eine Funktion, die die Bitreihenfolge mischt und transformiert. Das Ergebnis dient als Initialisierungsvektor für den nächsten Block.
- Dieser Vorgang wiederholt der Algorithmus, bis keine Blöcke mehr zu bearbeiten sind.
Der unendliche Schwamm: Sponge
Der Schwamm-Algorithmus „saugt“ in der ersten Phase blockweise die Datei auf und gibt am Ende in der „Drück-Phase“ einen Bit-String aus, der für diese Datei darstellt. Der Algorithmus mischt und transformiert die Bits auf dem Vektor bei jedem Saug-Schritt.
Je länger dieser Vektor ist, desto sicherer ist das Verfahren. Jeder Drück-Schritt generiert neue Bits, die der Algorithmus an den Ergebnis-Hash anfügt.
Dieses Design ermöglicht es, beliebig lange Hashes zu erzeugen.
Anwendung: Warum braucht die Blockchain Hashes?

Blockchains sind eine dezentrale Datenbank, welche die Integrität der Inhalte sicherstellen. Dezentral bedeutet, dass keine einzelne Person eine Hoheit über den Speicher verfügt, sondern jeder eine lokale Kopie speichern kann. Eine Blockchain besteht aus Datentöpfen (den Blöcken), die Transaktionen oder andere Dokumente speichern.
Ein Hash-Algorithmus berechnet von jedem Block der Blockchain einen Hash.
Steffen Lippke
Der berechnete Hash von Block X ist im Folgeblock X+1 gespeichert. Ändert jemand einen Block, dann ändert sich auch der Hash des Blocks. Jeder Teilenehmer kann die Blöcke seiner Blockchain mit den Blöcken der kriminellen Person vergleichen und bemerkt die Änderung anhand der Hashes sofort.
Hier sind die gängigsten Befehle, um Hashes (Prüfsummen) für Dateien und Texte unter Linux und Windows zu erstellen.
Wie erzeuge ich Hashes?
Linux
Linux-Systeme nutzen meist die coreutils, die für jeden Algorithmus ein eigenes Tool bereitstellen.
1. Datei-Hash erzeugen
Verwenden Sie den Namen des Algorithmus gefolgt von sum.
- SHA-256:
sha256sum datei.txt - MD5:
md5sum datei.txt - SHA-1:
sha1sum datei.txt
2. Text-Hash erzeugen
Nutzen Sie echo mit dem Parameter -n (um den Zeilenumbruch zu verhindern) und leiten Sie ihn per Pipe weiter.
- Beispiel:
echo -n "meintext" | sha256sum
Windows (PowerShell)
Unter Windows ist die PowerShell das Standardwerkzeug. Das Cmdlet Get-FileHash ist hierbei am wichtigsten.
1. Datei-Hash erzeugen
Standardmäßig wird SHA-256 verwendet.
- SHA-256:
Get-FileHash .\datei.txt - Anderer Algorithmus (z.B. MD5):
Get-FileHash .\datei.txt -Algorithm MD5
2. Text-Hash erzeugen
Dies ist in der PowerShell etwas komplexer, da der Text zuerst in ein Byte-Array umgewandelt werden muss.
- Beispiel:
$string = [System.Text.Encoding]::UTF8.GetBytes("meintext") Get-FileHash -InputStream ([System.IO.MemoryStream]::new($string)) -Algorithm SHA256
Vergleich der Algorithmen
| Algorithmus | Sicherheit | Verwendung |
|---|---|---|
| MD5 | Niedrig | Schnelle Integritätsprüfung (Veraltet für Sicherheit) |
| SHA-1 | Mittel/Niedrig | Legacy-Systeme (Nicht mehr empfohlen) |
| SHA-256 | Hoch | Aktueller Standard für Downloads und Passwörter |
| SHA-512 | Sehr Hoch | Hohe Sicherheit |
Alternativen zum Hash
Die Informatik bietet andere (schwächere) Alternativen zum Hash an:
#1 Quersumme
Die Quersumme von einer Million ist 1, aber auch von 10 und 100. Eine Quersumme bietet Dir eine schnelle Überprüfung von den Inhalten an. Diese ist sehr einfach fälschbar. Quersummen und ähnliche simple mathematische Algorithmen werden oft als Prüfnummer auf Kreditkarten, Inventarnummern oder Produktnummern eingesetzt, um Tippfehler sofort zu erkennen.
#2 Prüfsumme
Eine CRC-Prüfsumme ist effizient zu berechnen, aber wegen der geringen Länge kann jeder Kriminelle schnell eine Datei erzeugen, die den gewünschten CRC generiert. TCP nutzt CRC-Summen, um Pakete auf die Vollständigkeit zu prüfen. Falls ein Paket beschädigt ist, fragt der Client das Paket nochmals vom Server an.
#3 Error Correcting Codes (ECE)

Das Gleiche gilt für ECE-Codes. Diese können Fehler korrigieren, aber diese Codes sind für einen Kriminellen eine nicht nennenswerte Hürde. ECE setzen Computer ein, um Fehler im Bitstring bei der gestörten Übertragung oder z.B. in einem RAM-Riegel zu korrigieren.
#4 Nadeldrucker / Ausdrucke
Alte Bankautomaten und bei manchen Servern findet man noch Nadeldrucker. Diese stanzen bzw. drucken Log-Nachrichten in Papier.
Festplatten haben den großen Nachteil, dass jeder beliebige IO-Prozess dieselben Bits überschreiben kann. Wenn eine Bitstelle auf der Festplatte 2-5x überschrieben ist, kann kaum eine Software erkennen, was vor dem Überschreiben auf der Festplatte stand. Die Log-Dateien soll das Leben den Hackern schwer machen. Forensiker können aus den Logs die Spuren der Hacker ablesen und Hinweise auf ihren Ursprung finden (Lokardsche Austauschprinzip).
Wenn ein Papier einmal gedruckt ist, dann ist die Fälschung durch einen Kriminellen von Remote nahezu unmöglich. Das Papier reißt ab, wenn der Drucker das Papier einziehen und überschreiben sollte.
Die Kriminellen könnten versuchen z.B. den Server durch eine Malware in Brand zu setzen, um die Ausdrucke zu vernichten. Sollten die Hacker so weit gehen, sollte eine Edelgas-Löschung im Rechenzentrum das schlimmste verhindern.
#5 Notar mit Grundbuch
Die Besitztümer der Deutschen sind in Grundbüchern eingetragen. Der Vorteil am Grundbuch ist, dass nur eine begrenzte Personenzahl Zugriff hat. Zweitens ist die Dokumentensammlung in einem Archiv gut geschützt (Brand, Wetter, Katastrophen, Einbruch). Ein Notar kann die Integrität eines Dokumentes sicherstellen, wenn die physischen Sicherungen bestehen bleiben.



Schreibe einen Kommentar