Kryptographische Hashes: der digitale Fingerabdruck von Daten
Eine kryptographische Hash-Funktion ist ein Algorithmus, der eine Eingabe beliebiger Groesse (eine 1-Byte- oder 10-GB-Datei) in eine Zeichenkette fester Laenge umwandelt, die als Digest oder Hash bezeichnet wird. Die grundlegenden Eigenschaften eines guten kryptographischen Hashs sind drei: Er ist deterministisch (dieselbe Eingabe erzeugt immer denselben Hash), er ist unidirektional (man kann die Eingabe nicht aus dem Hash ableiten), und er ist kollisionsresistent (es ist praktisch unmoeglich, zwei verschiedene Eingaben mit demselben Hash zu finden). Diese Eigenschaften machen Hashes grundlegend fuer die Informationssicherheit.
Unser Hash Generator berechnet Hashes mit den am weitesten verbreiteten Algorithmen: MD5 (128 Bit, fuer Sicherheit veraltet, aber noch fuer Pruefsummen verwendet), SHA-1 (160 Bit, veraltet), SHA-256 (256 Bit, der aktuelle Standard) und SHA-512 (512 Bit, fuer zusaetzliche Sicherheit). Geben Sie einfach den Text ein und das Tool berechnet sofort den Hash mit allen Algorithmen, um Vergleich und Ueberpruefung zu ermoeglichen.
Welchen Algorithmus waehlen
Fuer den allgemeinen Gebrauch (Dateiintegritaetspruefung, digitale Signaturen, Blockchain) ist SHA-256 der Standard. Fuer die Passwortspeicherung verwenden Sie keinen davon: Es werden spezifische Algorithmen wie bcrypt, scrypt oder Argon2 benoetigt, die absichtlich langsam sind, um Brute-Force zu widerstehen. MD5 und SHA-1 werden trotz ihrer kryptographischen Schwachstellen noch fuer nicht-sicherheitsrelevante Pruefsummen verwendet: Ueberpruefen, ob ein Download beschaedigt ist, eindeutige IDs generieren oder Dateien deduplizieren.
Praktische Anwendungen von Hashes
Dateiintegritaetspruefung: Wenn Sie Software herunterladen, veroeffentlicht die Website oft den SHA-256-Hash der Datei. Berechnen Sie den Hash der heruntergeladenen Datei mit unserem Tool und vergleichen Sie ihn mit dem veroeffentlichten. Wenn sie uebereinstimmen, ist die Datei intakt und wurde nicht veraendert (durch Malware oder einen kompromittierten Mirror). Um sichere Passwoerter als Input fuer das Hashing zu generieren, verwenden Sie unseren Password Generator, der kryptographisch zufaellige Zeichenketten erzeugt.
In der Welt der Websicherheit schuetzen Hashes gespeicherte Passwoerter: Der Server speichert nie das Passwort im Klartext, sondern seinen Hash. Beim Login berechnet er den Hash der Eingabe und vergleicht ihn mit dem gespeicherten. Wenn die Datenbank kompromittiert wird, erhaelt der Angreifer nur die Hashes, nicht die Passwoerter. Um Daten bei der Uebertragung zu schuetzen, ueberpruefen Sie, dass Ihre Website HTTPS mit SSL Check verwendet — ein ueber HTTP gesendeter Passwort-Hash ist abfangbar und kann direkt verwendet werden (Pass-the-Hash).
Ein fortgeschrittenes Konzept: der Salt. Das Hinzufuegen einer einzigartigen zufaelligen Zeichenkette (Salt) zum Passwort vor dem Hashing verhindert Angriffe mit Rainbow Tables (Tabellen vorberechneter Hashes). Ohne Salt erzeugen gleiche Passwoerter gleiche Hashes, was Batch-Angriffe ermoeglicht. Mit einem einzigartigen Salt pro Benutzer ist jeder Hash unterschiedlich, auch fuer identische Passwoerter, und Rainbow Tables werden nutzlos. Alle modernen Web-Frameworks handhaben den Salt automatisch — wenn Sie das Hashing manuell implementieren, verwenden Sie immer einen zufaelligen Salt von mindestens 16 Bytes.