2017-03-25 4 views
-1

Wie also pflegen Webseiten Passwörter langfristig? Ich meine wirklich sehr wichtige Webseiten, sagen eine Regierung oder eine große E-Commerce- oder Social-Networking-Website.Wie speichern Webseiten Passwörter langfristig?

Sicher, sie speichern einen Hash (oder gesalzenen Hash) des Passworts im Webserver-verbundenen Datenspeicher, der für die Authentifizierung verwendet wird, aber ist es das?

HINWEIS: Ich frage nicht nach Hashing oder Salting, ich frage, wo die Metadaten speichern (z. B. Hash oder gesalzen Hash), so dass es immer verfügbar ist?

In der Tat, wie speichern Websites wie Facebook Passwörter? Ich nehme an, sie würden mehrere Kopien des Haschs auf der ganzen Welt verteilt haben? Und ab und zu auf Band gesichert?

+0

Die Verwendung einer Hash-Funktion reicht nicht aus und nur das Hinzufügen eines Salzes tut wenig um die Sicherheit zu verbessern. Stattdessen iterieren Sie über einen HMAC mit einem zufälligen Salz für etwa 100ms und speichern Sie das Salz mit dem Hash. Verwenden Sie Funktionen wie 'PBKDF2',' Rfc2898DeriveBytes', 'password_hash',' BCrypt' und ähnliche Funktionen. Es geht darum, den Angreifer dazu zu bringen, viel Zeit mit der Suche nach Passwörtern zu verbringen. – zaph

+0

Ich weiß es nicht genau, aber normalerweise benutzen sie die zwei Mechanismen, die Sie beschrieben haben. Replikation (Kopieren der Daten über mehrere Instanzen) und Backups. Beide hängen von der verwendeten Datenbank ab. Daher gibt es keine einheitliche Antwort, aber die meisten Datenbank-Engines implementieren diese. Wenn Sie diese selbst verwenden möchten, finden Sie Informationen zum Einrichten von Replikation und Sicherungen für Ihre spezifische Datenbank-Engine. – Lunar

Antwort

1

Sie benötigen für die meisten Anwendungen nur den Hash des Benutzerkennworts. Normalerweise wird das eigentliche Passwort aus Sicherheitsgründen nicht gespeichert. Wenn der Datenspeicher kompromittiert ist, möchten Sie nicht, dass der Hacker die tatsächlichen Kennwörter für die Benutzer erhält.

Das ist normalerweise, warum eigentlich die Hashes in erster Linie gesalzen werden. Salting macht es viel schwieriger, eine Rainbow-Tabelle (eine vorberechnete Tabelle aller möglichen Kombinationen für Passwörter, die eine bestimmte Art von Hash durchlaufen) zu verwenden, um das ursprüngliche Passwort wiederzuerlangen, das der Benutzer möglicherweise auf anderen Websites verwendet.

Dies wurde in mehr Tiefe hier beantwortet: Best way to store password in database

0

die Frage zu breit ist zu beantworten. Es ist nicht nur relevant für Webseiten der Regierung; Es wäre ein echtes Sicherheitsproblem, wenn Klartextpasswörter gespeichert wären. Je nach Sicherheitsanforderungen werden in den meisten Fällen Passwort-Hashes verwendet. Wenn Benutzer ein Zertifikat benötigen (z. B. auf einer Karte gespeichert oder unter Verwendung eines anderen Prozesses erhalten wurden), könnte ein öffentlicher Schlüssel des Benutzers auf dem Server gespeichert sein (anstelle des Hash).

Ihre Frage stellt sich auch zu ganz anderen Themen. Sicher, eine Web-Backend-Datenbank benötigt auch Backups (nicht nur für Passwörter), und es gibt mehrere Load-Balancing-Techniken, die auch Geolocation-Themen berücksichtigen können.

+0

Ich habe den Umfang auf jede wichtige Website geändert, nicht nur auf die Regierung. – user87219

Verwandte Themen