Pbkdf2PasswordEncoder
class Pbkdf2PasswordEncoder extends BasePasswordEncoder
Pbkdf2PasswordEncoder uses the PBKDF2 (Password-Based Key Derivation Function 2).
Providing a high level of Cryptographic security, PBKDF2 is recommended by the National Institute of Standards and Technology (NIST).
But also warrants a warning, using PBKDF2 (with a high number of iterations) slows down the process. PBKDF2 should be used with caution and care.
Constants
MAX_PASSWORD_LENGTH |
Methods
__construct(string $algorithm = 'sha512', bool $encodeHashAsBase64 = true, int $iterations = 1000, int $length = 40) | ||
string | encodePassword(string $raw, string $salt) Encodes the raw password. | |
bool | isPasswordValid(string $encoded, string $raw, string $salt) Checks a raw password against an encoded password. |
Details
__construct(string $algorithm = 'sha512', bool $encodeHashAsBase64 = true, int $iterations = 1000, int $length = 40)
Parameters
string | $algorithm | The digest algorithm to use |
bool | $encodeHashAsBase64 | Whether to base64 encode the password hash |
int | $iterations | The number of iterations to use to stretch the password hash |
int | $length | Length of derived key to create |
string encodePassword(string $raw, string $salt)
Encodes the raw password.
Parameters
string | $raw | The password to encode |
string | $salt | The salt |
Return Value
string | The encoded password |
bool isPasswordValid(string $encoded, string $raw, string $salt)
Checks a raw password against an encoded password.
Parameters
string | $encoded | An encoded password |
string | $raw | A raw password |
string | $salt | The salt |
Return Value
bool | true if the password is valid, false otherwise |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/4.0/Symfony/Component/Security/Core/Encoder/Pbkdf2PasswordEncoder.html