PasswordInterface.php
Same filename in other branches
Namespace
Drupal\Core\PasswordFile
-
core/
lib/ Drupal/ Core/ Password/ PasswordInterface.php
View source
<?php
namespace Drupal\Core\Password;
/**
* Secure password hashing functions for user authentication.
*/
interface PasswordInterface {
/**
* Maximum password length.
*/
const PASSWORD_MAX_LENGTH = 512;
/**
* Hash a password using a secure hash.
*
* @param string $password
* A plain-text password.
*
* @return string
* A string containing the hashed password, or FALSE on failure.
*/
public function hash($password);
/**
* Check whether a plain text password matches a hashed password.
*
* @param string $password
* A plain-text password.
* @param string|null $hash
* A hashed password.
*
* @return bool
* TRUE if the password is valid, FALSE if not.
*/
public function check($password, $hash);
/**
* Check whether a hashed password needs to be replaced with a new hash.
*
* This is typically called during the login process in order to trigger the
* rehashing of the password, as in that stage, the plain text password is
* available.
*
* This method returns TRUE if the password was hashed with an older
* algorithm.
*
* @param string|null $hash
* The hash to be checked.
*
* @return bool
* TRUE if the hash is outdated and needs rehash.
*/
public function needsRehash($hash);
}
Interfaces
Title | Deprecated | Summary |
---|---|---|
PasswordInterface | Secure password hashing functions for user authentication. |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.