2 Stimmen

Was sind geeignete PBKDF2-Einstellungen?

Ich habe ein paar Fragen zu den geeigneten PBKDF2-Einstellungen. Ich habe nach Antworten gegoogelt und bin weitgehend leer ausgegangen.

Grundsätzlich würde ich gerne wissen, was sind geeignete Werte für die Eingabe pbkdf2.php (gefunden aquí ) in Anbetracht des Stands der Technik im Jahr 2012. Was gibt mir die begründete Erwartung, dass die von mir verschlüsselten Passwörter in den nächsten Jahren nicht von nichtstaatlichen Stellen gehackt werden können?

Ich habe folgende Überlegungen:

define("PBKDF2_HASH_ALGORITHM", "sha512");
define("PBKDF2_ITERATIONS", 20000);
define("PBKDF2_SALT_BYTES", 512);
define("PBKDF2_HASH_BYTES", 512);

Ich weiß, dass es noch viele andere Faktoren gibt, die für eine gute Sicherheit sorgen. Hier ist eine Übersicht über andere Sicherheitsmaßnahmen, die ich verwende:

  • 12-stelliges Passwort mit mindestens 2 Zahlen, 2 Buchstaben und zwei Symbolen
  • erforderliche Passwortänderungen alle 6 Monate
  • php mysqli prepared statements für alle Datenbankzugriffe
  • Wertmarken auf allen meinen Formularen
  • 5 Sekunden Verzögerung bei fehlerhaften Anmeldungen,
  • Schwarze Liste nach 10 falschen Anmeldungen von der gleichen IP
  • Falsche Anmeldungen und die schwarze Liste lösen die gleiche Reaktion aus.
  • HTTPS
  • Ich verwende eine Sitzung und ändere den Sitzungsbezeichner alle 10 Seiten und bei sensiblen Seiten jedes Mal, wenn die Seite aufgerufen wird.

Habe ich etwas übersehen?

2voto

Marcin Punkte 3302

Nur als Beispiel: Die Standardeinstellungen für sha512crypt in den meisten modernen Linux-Distributionen ($6$ in /etc/shadow-Einträgen) verwenden 5000 Iterationen und 16 Bytes Salz. Das ist ziemlich langsam. Aber ich werde Sie nicht für einen Overkill kritisieren, wenn es um Hashing geht ;)

0voto

Billy ONeal Punkte 100691

Auf diese Frage gibt es keine einheitliche Antwort, da verschiedene Anwendungen unterschiedliche Sicherheitsniveaus erfordern. Richtig ist, dass Sie Ihre Anwendung einem Benchmarking unterziehen und eine so hohe Einstellung wählen, wie Ihr(e) Server bequem und reaktionsschnell bewältigen können. (Natürlich unter Lasttests)

Sie sind bereits viel sicherer als das durchschnittliche System, indem Sie PBKDF2 anstelle eines "schnellen", "Message Digest"-ähnlichen Algorithmus, wie MD5 oder SHA-1, einsetzen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X