/**
  * 
  * @param string $login
  * @param string $password
  * @return boolean
  */
 public static function checkPassword($login, $password)
 {
     $loginResult = false;
     $userId = User::getIdByParameter('login', array($login));
     if (is_array($userId) && count($userId) > 0) {
         $user = User::getParameters($userId[0], array('password'));
         $explodedStoredPassword = explode('::', $user['password']);
         $hashedPassword = hash_pbkdf2('sha256', $password, $explodedStoredPassword[0], $explodedStoredPassword[1], 183);
         if ($explodedStoredPassword[2] === $hashedPassword) {
             $loginResult = true;
         }
     }
     return $loginResult;
 }
示例#2
0
 public function testGetIdByParameter()
 {
     $testResult = array(2);
     $result = User::getIdByParameter('login', 'User 1');
     $this->assertEquals($testResult, $result);
     $testResult = array(2, 3);
     $result = User::getIdByParameter('login', array('User 1', 'User 2'));
     $this->assertEquals($testResult, $result);
     $this->setExpectedException('PDOException', '', '42S22');
     User::getIdByParameter('errColumn', 'Bad user');
 }