sicheres Passwortspeicher: SHA1 vs Md5 gegen SHA256 vs Bcrypt
Bei der Gestaltung eines sicheren Login -Systems ist die Wahl des Hashhing -Algorithmus entscheidend. Die traditionellen Optionen, SHA1, MD5 und SHA256, haben Schwachstellen gekannt. Während Salz diese Risiken mildern kann, ist es wichtig, robustere Alternativen zu betrachten. Login?" ist klar: bcrypt. Im Gegensatz zu SHA1, MD5 und SHA256 ist Bcrypt für Sicherheit und keine Geschwindigkeit ausgelegt. Es verwendet einen langsameren Hashing-Prozess mit komplexen Runden und Salzen, um Brute-Force-Angriffe zu verhindern. Über die Funktion password_hash ():
// Erstellen eines Hashs $ hash = password_hash ($ password, password_default, ['cost' => 12]); // Überprüfen Sie das Passwort gegen den gespeicherten Hash if (password_verify ($ password, $ hash)) { // Erfolg! Melden Sie den Benutzer hier an. }
ältere PHP -Versionen
Für ältere Versionen von PHP können Sie die Botschaft Passwort_Compat verwenden, um BCrypt zu implementieren:
// Erstellen ein Hash $ hash = password_compat_hash ($ password, password_bcrypt); // Überprüfen Sie das Passwort gegen den gespeicherten Hash if (password_compat_verify ($ password, $ hash)) { // Erfolg! Melden Sie den Benutzer hier an. }
// Creating a hash
$hash = password_hash($password, PASSWORD_DEFAULT, ['cost' => 12]);
// Verifying the password against the stored hash
if (password_verify($password, $hash)) {
// Success! Log the user in here.
}
bcrypt hat zwei wichtige Vorbehalte:
es verkürzt stillschweigend Kennwörter länger als 72 Zeichen.
// Creating a hash
$hash = password_compat_hash($password, PASSWORD_BCRYPT);
// Verifying the password against the stored hash
if (password_compat_verify($password, $hash)) {
// Success! Log the user in here.
}
anstatt Ihre eigene Problemumgehung zu erstellen, verwenden Sie eine sichere Bibliothek wie Zend \ Crypt oder PasswordLock. ] Verwenden Sie für sichere Kennwortspeicher in PHP BCrypt. Es bietet einen beispiellosen Schutz vor Passwort -Cracking und stellt die Integrität Ihres Anmeldesystems sicher.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3