Ihr Plan, den Hash über mehrere Systeme hinweg zu vergleichen, kann je nach Ursprung des Hash auf jedem System das gewünschte Ergebnis liefern.
Hashes sind die Ausgabe einer unidirektionalen Abbildungsfunktion, die (theoretisch) immer das gleiche Ergebnis für eine gegebene Eingabe liefert und nicht dieselbe Zeichenfolge für andere Eingaben. Das Problem ist, dass es viele Hash-Algorithmen gibt, und einige ändern die Eingabe vor dem Hashing auf vorhersagbare Weise (genannt "Salting the Hash") . Andere verwenden eine variable Anzahl von "Runden", bei denen der resultierende Hash mehrfach wiederholt wird.
Wenn die Hashes mit demselben Hash-Algorithmus erstellt wurden und kein maschinenspezifisches Salt verwendet wurde, würden beide Systeme denselben Hash für dasselbe Kennwort generieren und Ihr Plan funktioniert.
Wenn der Mechanismus zum Generieren der Hashwerte für jedes Feld jedoch unterschiedlich ist oder ein systemspezifisches Token für Salt enthält, dann würde das gleiche Kennwort auf jedem System eine andere Hashausgabe generieren Hashes und wissen nicht, ob sie auf der gleichen Passworteingabe basieren.
Einzelheiten dazu, wie das Linux-PAM Hashing in / etc / passwd und / etc / shadow verwendet, finden Sie hier: https://wiki.archlinux.org/index.php/SHA_password_hashes