
org.keycloak.credential.hash.Pbkdf2Sha256PasswordHashProviderFactory Maven / Gradle / Ivy
package org.keycloak.credential.hash;
import org.keycloak.models.KeycloakSession;
/**
* PBKDF2 Password Hash provider with HMAC using SHA256
*
* @author Adam Kaplan
*/
public class Pbkdf2Sha256PasswordHashProviderFactory extends AbstractPbkdf2PasswordHashProviderFactory implements PasswordHashProviderFactory {
public static final String ID = "pbkdf2-sha256";
public static final String PBKDF2_ALGORITHM = "PBKDF2WithHmacSHA256";
/**
* Hash iterations for PBKDF2-HMAC-SHA256 according to the Password Storage Cheat Sheet.
*/
public static final int DEFAULT_ITERATIONS = 600_000;
@Override
public PasswordHashProvider create(KeycloakSession session) {
return new Pbkdf2PasswordHashProvider(ID, PBKDF2_ALGORITHM, DEFAULT_ITERATIONS, getMaxPaddingLength(), 256);
}
@Override
public String getId() {
return ID;
}
@Override
public int order() {
return 100;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy