public function setRawPassword($pass, $salt) { switch (APP_AUTH_PASSWORD_MODE) { case 1: $this->data['password'] = crypt($pass, $salt); break; case 2: $this->data['password'] = AuthHelper::getDbPass("ENCRYPT('{$pass}','{$salt}')"); break; case 3: $this->data['password'] = AuthHelper::getDbPass("ENCODE('{$pass}','{$salt}')"); break; case 4: case 5: $this->data['password'] = AuthHelper::getDbPass("MD5('{$pass}')"); break; default: $iv = mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_3DES, MCRYPT_MODE_ECB), MCRYPT_RAND); $crypttext = mcrypt_encrypt(APP_AUTH_PASSWORD_MODE, $salt, $pass, MCRYPT_MODE_ECB, $iv); $this->data['password'] = bin2hex($crypttext); break; } }