X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fpassword%2FPbkdf2Password.php;h=6ffada36b4c66090d0ebb7456aaac6acd364168f;hb=24dc5218b18bfa065a101057523f39a9c046d046;hp=080e3b0ddb2a9769e08414bcc05567128024c0bb;hpb=f558da101e0bc6f0a97e6a68f200e5f24898a8b5;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/password/Pbkdf2Password.php b/includes/password/Pbkdf2Password.php index 080e3b0ddb..6ffada36b4 100644 --- a/includes/password/Pbkdf2Password.php +++ b/includes/password/Pbkdf2Password.php @@ -30,11 +30,11 @@ */ class Pbkdf2Password extends ParameterizedPassword { protected function getDefaultParams() { - return array( + return [ 'algo' => $this->config['algo'], 'rounds' => $this->config['cost'], 'length' => $this->config['length'] - ); + ]; } protected function getDelimiter() { @@ -55,8 +55,15 @@ class Pbkdf2Password extends ParameterizedPassword { (int)$this->params['length'], true ); + if ( !is_string( $hash ) ) { + throw new PasswordError( 'Error when hashing password.' ); + } } else { - $hashLen = strlen( hash( $this->params['algo'], '', true ) ); + $hashLenHash = hash( $this->params['algo'], '', true ); + if ( !is_string( $hashLenHash ) ) { + throw new PasswordError( 'Error when hashing password.' ); + } + $hashLen = strlen( $hashLenHash ); $blockCount = ceil( $this->params['length'] / $hashLen ); $hash = '';