Всем привет, с вами снова "чайник". У меня возник вопрос, как лучше всего реализовать запоминание пользователя на сайте? У меня были идеи сделать такое: Сохраняем куки с именем "key" который будет зашифрован методом SHA256 + соль. Как это всё будет происходить: После авторизации, берём ID (ну пусть будет 15) пользователя из БД - это будет служить как соль. Далее берём сессию, точнее ID сессии (если я не ошибаюсь) далее творим такое: к ID сессии добавляем ID пользователя. Получится: 'awd23913po15' - 15 это ID пользователя. Шифруем это всё методом SHA256 и сохраняем в куки key. Далее при повторном подключение к сайту: Берём значение key и переделываем всё заново, сверяем значении, если они совпадают, то даём доступ пользователю. Конечно сохраняем id сессии в бд перед всем этим. Но я только начал изучать про сессии и не до конца понял принцып их работы. Прощу вас исправить меня, если я где-то допускаю ошибку или предложить метод по лучше. Спасибо за уделённое время. P.S. Надеюсь строго не будете судить, всё таки я новичок ещё. Спасибо за понимание.
sid сам по себе криптостойкий. Зачем его еще шифровать? Чтобы скрыть id пользователя что ли? Так это допускающая публичность инфа. Ну можете записывать id пользователя алфавитом ключа, чтобы они визуально слились (мы часто так делаем). Также можете хранить id пользователя в сессионных данных, т.е. на стороне сервера. Поиск конечно будет происходить по самому ключу, что теоретически медленнее, но зато id пользователя не засвечен. Вы бы сначала с сессиями разобрались. Это во много схожий с куками механизм, точнее он тоже использует куки. Мы к примеру штатный механизм сессий практически не используем, а используем классическую связку куки+БД.
"Запомнить меня" не так делается. Генерится случайная строка, пишется в базу и в куку. Если пришла кука со строкой - ОК. --- Добавлено --- Сессия не должна быть настолько долгоживучей