В этом обсуждении безопасности есть два лагеря:
Не храните пароли в вашей БД.Обычно это означает использование OAuth или его эквивалента.Вам нужно будет сохранить «токен», который однозначно идентифицирует пользователя.Этот «токен» предоставляется выбранной вами службой аутентификации.Служба также обеспечивает аутентификацию.
Сохранение хеш-кода (необратимого) преобразования пароля в БД.Затем процесс аутентификации заключается в сравнении хэшированной версии предоставленного pword с той, что в БД.
Существуют сложности, которые следует учитывать в зависимости от соображений безопасностиЯ думаю, что минимум должен быть реализация соленого пароля.Обычно это что-то вроде:
$hash = sha1(saltThePword($pword));
, где
function saltThePword($pword)
{
// combine the password with a salt.
// typically:
// $pword.$salt
// $salt can be static
// $salt can be unique to user (reproducible by a formula)
}
Надеюсь, это поможет.
Боб