Таким образом, это в основном подтверждение того, что я выполняю весь процесс регистрации / входа в систему, вплоть до хеширования / засолки.
У меня есть таблица пользователей с полями пароль, соль, токен (очевидно, есть и другие, но это наиболее важно). После регистрации он генерирует случайную соль и случайный токен и помещает в поле пароля следующее:
hash("sha256", $theirpostpassword.$randomgeneratedsalt);
Эта случайно сгенерированная соль и токен хранятся в соответствующих полях в строке пользователя в таблице.
Поэтому при входе в систему я выбираю соль ТОЛЬКО из строки пользователей с указанным ими именем пользователя. Затем я делаю запрос на подсчет количества строк, в которых их пароль сообщения объединен с их конкретной солью, а затем я вхожу в систему. Я уверен, что эта часть у меня отсутствует.
Теперь я думал проверять их логин на каждой странице, у меня была бы функция, запускающая каждую страницу, которая проверяет их cookie, чтобы увидеть, соответствует ли формат id-username-token строке в базе данных. Это означает, что при каждом входе в систему он устанавливает свой файл cookie с этими учетными данными.
Теперь единственное, что я могу придумать, чтобы улучшить его, - это менять токен при каждом действительном входе в систему?
Спасибо за понимание, ребята.