Hashing
Wie kann man die Identität eines Dokuments eindeutig feststellen, ohne dass der gesamte Inhalt des Dokuments verglichen werden muss?
Bei Menschen gibt es gängige Methoden, um die Identität einer Person zu bestimmen, ohne gleich die gesamte DNA zu vergleichen.
Fingerabdruck@
Gesichtserkennung@
Iris-Scan@Es reicht aus, ein Ausprägungsmerkmal zu vergleichen, um die Identität einer Person festzustellen. Bei Dokumenten kann man ähnlich vorgehen: Man kann den Inhalt eines Dokuments mit einer Hashfunktion auf einen Hashwert abbilden. Der Hashwert ist wie ein Fingerabdruck für das Dokument.
Verfahren
Durch ein Verfahren soll der Inhalt eines Dokuments auf eine einzelne Zahl (oder einen kurzen Text) abgebildet werden. Einige solche Verfahren kennen Sie bereits:
Bestimmen Sie jeweils die Quersumme bzw. die alternierende Quersumme der folgenden Zahlen:
| Zahl | Iterierte Quersumme | Alternierende Quersumme |
|---|---|---|
| 12345 | 6 | 3 |
| 123456 | Laden... | Laden... |
| 12345678 | Laden... | Laden... |
| 123456789 | Laden... | Laden... |
| 11111111 | Laden... | Laden... |
Sind die beiden Verfahren geeignet, um die Identität von Zahlen eindeutig festzustellen? Begründen Sie Ihre Antwort.
Dennoch wäre es praktisch, wir könnten Zahlen oder Dokumente durch eine einfache Rechnung von einer langen Zahl auf eine kurze Zahl abbilden, ohne dass dabei doppelte Ergebnisse für unterschiedliche Zahlen entstehen.
Hashfunktionen
Eine Hashfunktion ist eine Abbildung, die eine grosse Eingabemenge auf eine kleinere Zielmenge abbildet.
Hashfunktion
In der Abbildung oben wird visualisiert, dass wir zwar doppelte Ergebnisse, sogenannte Kollisionen, verhindern möchten, aber theoretisch nicht verhindern können, da die Eingabemenge (z.B. alle möglichen Dokumente) grösser ist als die Zielmenge (z.B. alle möglichen Hashwerte).
Um genügend Sicherheit zu bieten, soll eine gute kryptographische Hashfunktion folglich kollisionsresistent sein. Das heisst, es soll praktisch unmöglich sein, Kollisionen zu finden.
Aktuelle Beispiele
Es gibt verschiedene aktuelle Hashfunktionen. Nachfolgend ein Tool, welches SHA-2 Hashes (Secure Hash Algorithm Version 2) berechnet.
SHA-256 Hash
Input
SHA-256 Hash
- Berechnen Sie den Hash Ihres Namens und den Ihrer E-Mail-Adresse. Halten Sie beide Hash-Werte fest.
- Wie viele Buchstaben ändern sich, wenn Sie einen einzigen Tippfehler machen?
Hat sich der Inhalt der Wikipedia-Seite 👉 Hash Funktionen seit dem letzten Zugriff am 10.10.2026 verändert? Prüfen Sie dies, indem Sie auf die Seite gehen, mit Ctrl+A den gesamten Inhalt markieren und den Hashwert berechnen.
- 10.10.2026
- Hashwert:
9963534c07231eb4f420fcac10d9d9c02a8c55e8acfb72c902aee3c13be39110 - Heute
- Laden...Laden...
Ist der Inhalt noch derselbe? Falls nicht: sehen Sie dem Hashwert an, was oder wie stark sich der Inhalt verändert hat?
Die letzten beiden Beispiele zeigen, dass bereits kleinste Änderungen zu komplett anderen Hashwerten führen. Kryptographische Hashfunktion sind so konstruiert, dass bei einer Änderung an einem Bit min. 50% der Hashwert-Bits ändern.
Damit erreichen wir unter anderem, dass wir aus einer Ähnlichkeit zweier Hashwerten nicht auf eine Ähnlichkeit der beiden entsprechenden Eingabewerte schliessen können. So ist es nahezu unmöglich, den Eingabewert durch «Annäherung» herauszufinden.
- Weshalb stellt der Entwickler von 👉 PyCraft (einer Python-Version von Minecraft) auf seiner Webseite den Hashwert der Installationsdatei zur Verfügung?
- Was könnte dies mit Virenschutz zu tun haben?