SHA-1 ist ein Signaturalgorithmus. Wenn ein Wort (Zeichen- und/oder eine Zahlenkombination) (genannt: p) durch eine Signatursfunktion geschickt wird, erhält man als Ergebnis eine völlig andere Kombination aus Buchstaben und Zahlen (genannt: q). Dies ist die Signatur. Die Länge der Signatur wird durch den Algorithmus bestimmt. Das besondere darin ist, dass sobald nur ein einziges Zeichen von p geändert wird, sieht die Signatur q auch VÖLLIG anders aus. Bei diesen Verfahren, kann man nur mit jahrelangem Rechenaufwand bei dem bekannten q die Ursprüngliche Eingabe p errechnen. Es ist nahezu unmöglich 2 Klartextpaar p1 und p2 zu finden, bei denen gilt: Sig(p1) = q = sig(p2).
Gebraucht wird dieses Verfahren zur Speicherung von Passwörtern. Man stelle sich vor, dass beim booten eines Rechners ein Passwort eingegeben werden muss. Nach der Eingabe muss überprüft werden, ob das eingegebene Passwort stimmt. Dazu muss es ja irgendwo gespeichert sein. Weniger klug wäre es, wenn man das Passwort im Klartext irgendwo auf der Festplatte speichert, da es so ausspioniert, bzw. kompromitiert werden kann. Deshalb wird es mit einer Hash-Funktion (also mit so einem Signaturalgorithmus) verschleichert und auf der Festplatte abgelegt. Bei der Eingabe des Passwortes, um den Zugang zum Rechner zu erhalten, wird die Eingabe durch die Hash-Funktion geschickt und das Ergebnis mit dem gespeicherten Wert abgeglichen. Sind beide Werte gleich, erhälst man den Zugang zum Rechner.
Gebraucht wird dieses Verfahren zur Speicherung von Passwörtern. Man stelle sich vor, dass beim booten eines Rechners ein Passwort eingegeben werden muss. Nach der Eingabe muss überprüft werden, ob das eingegebene Passwort stimmt. Dazu muss es ja irgendwo gespeichert sein. Weniger klug wäre es, wenn man das Passwort im Klartext irgendwo auf der Festplatte speichert, da es so ausspioniert, bzw. kompromitiert werden kann. Deshalb wird es mit einer Hash-Funktion (also mit so einem Signaturalgorithmus) verschleichert und auf der Festplatte abgelegt. Bei der Eingabe des Passwortes, um den Zugang zum Rechner zu erhalten, wird die Eingabe durch die Hash-Funktion geschickt und das Ergebnis mit dem gespeicherten Wert abgeglichen. Sind beide Werte gleich, erhälst man den Zugang zum Rechner.
3.296 mal gelesen
Leathl -
[quote]Bei diesen Verfahren, kann man nur mit jahrelangem Rechenaufwand bei dem bekannten q die Ursprüngliche Eingabe p errechnen.[/quote]
Das ist zumindest meines Wissens nach nicht möglich. Der Hash sagt z.B. in keiner Weise aus, wie lang der Ursprung war, somit ist es nichteinmal möglich, zu sagen, ob es sich bei dem Ursprungsmaterial um einen kurzen string oder eine Gigabytesgroße Datei handelt.