Аутентификация по паролю между PHP и смартфонами - PullRequest
2 голосов
/ 11 июня 2011

Я использую этот класс для создания хэшей паролей. Система состоит из веб-страницы, построенной на php, устройствах iphone, а также устройствах Android. Мне нужны эти смартфоны, чтобы иметь возможность войти в систему и получить доступ к информации, хранящейся на моей стороне сервера БД. Какое лучшее решение, это перенести этот метод на цель c и отправить хэш на сервер? Или лучше посылать пароль по SSL и сравнивать хэш серверную часть?

class PassHash {

  // blowfish
  private static $algo = '$2a';

  // cost parameter
  private static $cost = '$10';

  // mainly for internal use
  public static function unique_salt() {
    return substr(sha1(mt_rand()),0,22);
  }

  // this will be used to generate a hash
  public static function hash($password) {

    return crypt($password,
                self::$algo .
                self::$cost .
                '$' . self::unique_salt());

  }

  // this will be used to compare a password against a hash
  public static function check_password($hash, $password) {

    $full_salt = substr($hash, 0, 29);

    $new_hash = crypt($password, $full_salt);

    return ($hash == $new_hash);

  }
}

1 Ответ

0 голосов
/ 23 ноября 2012

«переносить хэш» на мобильные приложения не будет хорошей идеей.Хэш сервера уникален, и вам не нужны разные методы «хэширования» для разных платформ устройств.

Отправьте пароль в SSL и позвольте вашей модели аутентификации на стороне сервера выполнить хеширование.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...