PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Wie verwendet man Spring StandardPasswordEncode und Get Salt Generate?

Ich glaube du fragst wie das geht?? Die Antwort ist ziemlich einfach. StandardPasswordEncoder.matches() ist die Methode, die Sie verwenden möchten. Hinter den Kulissen, StandardPasswordEncoder entschlüsselt das gehashte Passwort und extrahiert das Salt aus dem resultierenden Byte-Array. Dieses Salt wird dann verwendet, um das von Ihnen eingegebene Klartext-Passwort zu hashen. Wenn der resultierende Hash mit dem ursprünglichen Hash übereinstimmt, stimmen Ihre Passwörter überein! Einzelheiten zu StandardPasswordEncoder.matches() finden Sie in der Quelle :

public boolean matches(CharSequence rawPassword, String encodedPassword) {
    byte[] digested = decode(encodedPassword);
    byte[] salt = subArray(digested, 0, saltGenerator.getKeyLength());
    return matches(digested, digest(rawPassword, salt));
}